lib.types.deferredModule: Allow path-typed module references

main
Robert Hensing 2 years ago
parent a2c29561e7
commit 781c2e0789
  1. 4
      lib/tests/modules/deferred-module.nix
  2. 3
      lib/tests/modules/define-settingsDict-a-is-b.nix
  3. 2
      lib/types.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;
}
{

@ -0,0 +1,3 @@
{ config, ... }: {
settingsDict.a = config.settingsDict.b;
}

@ -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;
};

Loading…
Cancel
Save