flake.nix: Clean up, allow overriding pkgs

`outputs.overlays` is supposed to be an attribute set of overlays,
and `outputs.overlay` should contain a single overlay.
This commit is contained in:
Zhaofeng Li 2021-12-03 09:33:11 -08:00 committed by Alexander Sosedkin
parent b1086df532
commit 0b83ab6bf1

View file

@ -9,32 +9,24 @@
}; };
}; };
outputs = { self, nixpkgs, home-manager, flake-utils }: outputs = { self, nixpkgs, home-manager, flake-utils }: let
{ supportedSystems = [ "aarch64-linux" "i686-linux" ];
overlays = import ./overlays; in flake-utils.lib.eachSystem supportedSystems (system: let
} // defaultPkgs = import nixpkgs {
flake-utils.lib.eachSystem [ inherit system;
"aarch64-linux" overlays = [ self.overlay ];
"i686-linux" };
] in rec {
(system: lib.nix-on-droid = { pkgs ? defaultPkgs, config }: import ./modules {
let pkgs = import nixpkgs { inherit pkgs home-manager config;
inherit system; isFlake = true;
overlays = self.overlays; };
}; in
rec {
lib = {
nix-on-droid = { config }: import ./modules {
inherit pkgs config;
isFlake = true;
home-manager = (import home-manager { });
};
};
apps.nix-on-droid = flake-utils.lib.mkApp { apps.nix-on-droid = flake-utils.lib.mkApp {
drv = (pkgs.callPackage ./nix-on-droid { }); drv = (defaultPkgs.callPackage ./nix-on-droid { });
}; };
defaultApp = apps.nix-on-droid; defaultApp = apps.nix-on-droid;
} }) // {
); overlay = nixpkgs.lib.composeManyExtensions (import ./overlays);
};
} }