If a module is an attrset deduplicating imports does not work properly and would lead to the module system complaining about redefining options. Here is an example:
error: The option age.identityPaths' in/nix/store/wn50ysifrfp5qj5pp3jqpyvwh8ksz36y-source/machines/foo' is already declared in `/nix/store/wn50ysifrfp5qj5pp3jqpyvwh8ksz36y-source/common/ddclient/default.nix'.
when common/ddclient/default.nix and machines/foo/default.nix is:
If a module is an attrset deduplicating imports does not work properly and would lead to the module system complaining about redefining options. Here is an example:
error: The option
age.identityPaths' in
/nix/store/wn50ysifrfp5qj5pp3jqpyvwh8ksz36y-source/machines/foo' is already declared in `/nix/store/wn50ysifrfp5qj5pp3jqpyvwh8ksz36y-source/common/ddclient/default.nix'.when common/ddclient/default.nix and machines/foo/default.nix is:
{ ..., agenix, ... }: { imports = [ agenix.nixosModules.age ]; }
Turning the module into a filepath fixes the issue.