diff options
author | Robert Hensing <robert@roberthensing.nl> | 2022-05-19 16:31:47 +0200 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2022-06-14 23:01:26 +0200 |
commit | 781c2e0789f7f6b75454a8e986c675ad36e6ee36 (patch) | |
tree | 09c6a6e0ae427c43465838466bf2eec287a69856 /lib | |
parent | a2c29561e722e9546c61323a91f9faffcc3bf268 (diff) | |
download | nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar.gz nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar.bz2 nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar.lz nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar.xz nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.tar.zst nixpkgs-781c2e0789f7f6b75454a8e986c675ad36e6ee36.zip |
lib.types.deferredModule: Allow path-typed module references
Diffstat (limited to 'lib')
-rw-r--r-- | lib/tests/modules/deferred-module.nix | 4 | ||||
-rw-r--r-- | lib/tests/modules/define-settingsDict-a-is-b.nix | 3 | ||||
-rw-r--r-- | lib/types.nix | 2 |
3 files changed, 5 insertions, 4 deletions
diff --git a/lib/tests/modules/deferred-module.nix b/lib/tests/modules/deferred-module.nix index dc8072d4e6c..e963c5a845c 100644 --- a/lib/tests/modules/deferred-module.nix +++ b/lib/tests/modules/deferred-module.nix @@ -34,9 +34,7 @@ in { _file = "default-a-is-b.nix"; - default = { config, ... }: { - settingsDict.a = config.settingsDict.b; - }; + default = ./define-settingsDict-a-is-b.nix; } { diff --git a/lib/tests/modules/define-settingsDict-a-is-b.nix b/lib/tests/modules/define-settingsDict-a-is-b.nix new file mode 100644 index 00000000000..42363f45f78 --- /dev/null +++ b/lib/tests/modules/define-settingsDict-a-is-b.nix @@ -0,0 +1,3 @@ +{ config, ... }: { + settingsDict.a = config.settingsDict.b; +} diff --git a/lib/types.nix b/lib/types.nix index 83882179d06..f5d13ea10d2 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -543,7 +543,7 @@ rec { deferredModule = mkOptionType { name = "deferredModule"; description = "module"; - check = t: isAttrs t || isFunction t; + check = x: isAttrs x || isFunction x || path.check x; merge = loc: defs: map (def: lib.setDefaultModuleLocation "${def.file}, via option ${showOption loc}" def.value) defs; }; |