From 6f0392b55e12b86695995e1744221bc27a382998 Mon Sep 17 00:00:00 2001 From: David Arnold Date: Sun, 18 Apr 2021 22:00:49 -0500 Subject: [PATCH] ref: cave out instances of userFLake dependencies and intject them as if functions where contructors --- lib/devos/mkHosts.nix | 6 +++++- lib/devos/mkPkgs.nix | 4 +++- lib/mkFlake/default.nix | 27 ++++++++++++++++++--------- 3 files changed, 26 insertions(+), 11 deletions(-) diff --git a/lib/devos/mkHosts.nix b/lib/devos/mkHosts.nix index 3bb010b..d86de4e 100644 --- a/lib/devos/mkHosts.nix +++ b/lib/devos/mkHosts.nix @@ -1,6 +1,8 @@ { lib }: -{ dir, extern, suites, overrides, multiPkgs, userFlakeNixOS, userFlakeInputs, userFlakeSelf }: +{ userFlakeNixOS, userFlakeInputs, userFlakeSelf }: + +{ dir, extern, suites, overrides, multiPkgs }: let defaultSystem = "x86_64-linux"; @@ -91,6 +93,8 @@ let }; in lib.os.devosSystem { + inherit userFlakeNixOS userFlakeInputs userFlakeSelf; + } { inherit specialArgs; system = defaultSystem; modules = modules // { inherit local lib; }; diff --git a/lib/devos/mkPkgs.nix b/lib/devos/mkPkgs.nix index 8fb2201..be32ddd 100644 --- a/lib/devos/mkPkgs.nix +++ b/lib/devos/mkPkgs.nix @@ -1,6 +1,8 @@ { lib, utils }: -{ extern, overrides, userFlakeNixOS, userFlakeSelf, userFlakeInputs }: +{ userFlakeNixOS, userFlakeSelf, userFlakeInputs }: + +{ extern, overrides }: (utils.lib.eachDefaultSystem (system: let diff --git a/lib/mkFlake/default.nix b/lib/mkFlake/default.nix index 19dd1cf..8b25706 100644 --- a/lib/mkFlake/default.nix +++ b/lib/mkFlake/default.nix @@ -3,23 +3,30 @@ let inherit (dev) os; in -_: { self, ... } @ args: +_: { self, inputs, nixos, ... } @ args: let userFlakeSelf = self; + userFlakeInputs = inputs; + userFlakeNixOS = nixos; cfg = (lib.mkFlake.evalOldArgs { inherit args; }).config; - multiPkgs = os.mkPkgs { inherit (cfg) extern overrides; }; + multiPkgs = os.mkPkgs + { inherit userFlakeSelf userFlakeInputs userFlakeNixOS; } + { inherit (cfg) extern overrides; }; outputs = { - nixosConfigurations = os.mkHosts { - inherit userFlakeSelf multiPkgs; - inherit (cfg) extern suites overrides; - dir = cfg.hosts; - }; + nixosConfigurations = os.mkHosts + { inherit userFlakeSelf userFlakeInputs userFlakeNixOS; } + { + inherit multiPkgs; + inherit (cfg) extern suites overrides; + dir = cfg.hosts; + }; - homeConfigurations = os.mkHomeConfigurations; + homeConfigurations = os.mkHomeConfigurations + { inherit userFlakeSelf; }; nixosModules = cfg.modules; @@ -36,7 +43,9 @@ let pkgs = multiPkgs.${system}; pkgs-lib = lib.pkgs-lib.${system}; # all packages that are defined in ./pkgs - legacyPackages = os.mkPackages { inherit pkgs; }; + legacyPackages = os.mkPackages + { inherit userFlakeSelf; } + { inherit pkgs; }; in { checks = pkgs-lib.tests.mkChecks {