diff --git a/flake.nix b/flake.nix index 0e15ca0..407b316 100644 --- a/flake.nix +++ b/flake.nix @@ -16,33 +16,29 @@ sysLinuxAarch = "aarch64-linux"; wrapPkgsSystem = { system }: - import nixpkgs rec { - inherit system; - - unstablePkgs = wrapUnstablePkgsSystem { inherit system; }; - localPkgs = import local-unstable { - inherit system; - config.allowUnfree = true; - }; + let config = { allowUnfree = true; }; + in + import nixpkgs rec { + inherit system config; + + unstablePkgs = import nixos-unstable { + inherit system config; + }; + + localPkgs = import local-unstable { + inherit system config; + }; + overlays = [ (final: prev: { inherit unstablePkgs; }) (final: prev: { inherit localPkgs; }) ]; }; - wrapUnstablePkgsSystem = { system }: - import nixos-unstable { - inherit system; - - config = { - allowUnfree = true; - }; - }; - - wrapUtils = { pkgs, unstablePkgs, system }: + wrapUtils = { pkgs, system }: let inherit (pkgs.lib) makeScope; inherit (pkgs) newScope; @@ -58,16 +54,13 @@ pkgsLinuxX64 = wrapPkgsSystem { system = sysLinuxX64; }; - unstableLinuxX64 = wrapUnstablePkgsSystem { system = sysLinuxX64; }; - utilsLinuxX64 = wrapUtils { system = sysLinuxX64; pkgs = pkgsLinuxX64; unstablePkgs = unstableLinuxX64; }; + utilsLinuxX64 = wrapUtils { system = sysLinuxX64; pkgs = pkgsLinuxX64; }; pkgsLinuxAarch = wrapPkgsSystem { system = sysLinuxAarch; }; - unstableLinuxAarch = wrapUnstablePkgsSystem { system = sysLinuxAarch; }; - utilsLinuxAarch = wrapUtils { system = sysLinuxAarch; pkgs = pkgsLinuxAarch; unstablePkgs = unstableLinuxAarch; }; + utilsLinuxAarch = wrapUtils { system = sysLinuxAarch; pkgs = pkgsLinuxAarch; }; pkgsDarwin = wrapPkgsSystem { system = sysDarwin; }; - unstableDarwin = wrapUnstablePkgsSystem { system = sysDarwin; }; - utilsDarwin = wrapUtils { system = sysDarwin; pkgs = pkgsDarwin; unstablePkgs = unstableDarwin; }; + utilsDarwin = wrapUtils { system = sysDarwin; pkgs = pkgsDarwin; }; in { nixosConfigurations = {