summaryrefslogtreecommitdiff
path: root/eval-config.nix
diff options
context:
space:
mode:
authorDrew Hess <src@drewhess.com>2021-04-05 14:05:02 +0100
committerDrew Hess <src@drewhess.com>2021-09-08 13:05:18 +0100
commit9f7e95887f62086c3af7362ed2b664c7f181cadf (patch)
treee7d8bde1c6436ca2dce6ced119cbebf85b20b526 /eval-config.nix
parent007d700e644ac588ad6668e6439950a5b6e2ff64 (diff)
Pass system to darwinSystem rather than eval-config.
This allows us to specify what kind of darwinSystem we want to build, rather than determining it at evaluation time.
Diffstat (limited to 'eval-config.nix')
-rw-r--r--eval-config.nix14
1 files changed, 9 insertions, 5 deletions
diff --git a/eval-config.nix b/eval-config.nix
index aa19906..e0ce18b 100644
--- a/eval-config.nix
+++ b/eval-config.nix
@@ -1,9 +1,10 @@
-{ lib, system ? builtins.currentSystem or "x86_64-darwin" }:
+{ lib }:
-{ modules
+{ system ? builtins.currentSystem or "x86_64-darwin"
+, modules
, inputs
, baseModules ? import ./modules/module-list.nix
-, specialArgs ? {}
+, specialArgs ? { }
}@args:
let
@@ -18,11 +19,14 @@ let
_file = ./eval-config.nix;
config = {
_module.args.pkgs = import inputs.nixpkgs config.nixpkgs;
- nixpkgs.system = system;
+
+ # This permits the configuration to override the passed-in
+ # system.
+ nixpkgs.system = lib.mkDefault system;
};
};
- eval = lib.evalModules (builtins.removeAttrs args ["inputs"] // {
+ eval = lib.evalModules (builtins.removeAttrs args [ "inputs" "system" ] // {
modules = modules ++ [ inputsModule pkgsModule ] ++ baseModules;
args = { inherit baseModules modules; };
specialArgs = { modulesPath = builtins.toString ./modules; } // specialArgs;