diff --git a/extras/modules.nix b/extras/modules.nix index 98e9a96..3626a15 100644 --- a/extras/modules.nix +++ b/extras/modules.nix @@ -14,10 +14,10 @@ let then module: module else module: - # TODO: set key? { _class = class; _file = "${toString moduleLocation}#modules.${escapeNixIdentifier class}.${escapeNixIdentifier moduleName}"; + key = "${toString moduleLocation}#modules.${escapeNixIdentifier class}.${escapeNixIdentifier moduleName}"; imports = [ module ]; }; in diff --git a/modules/nixosModules.nix b/modules/nixosModules.nix index 737648d..6b0c9a7 100644 --- a/modules/nixosModules.nix +++ b/modules/nixosModules.nix @@ -18,6 +18,12 @@ in apply = mapAttrs (k: v: { _class = "nixos"; _file = "${toString moduleLocation}#nixosModules.${k}"; + # Note: this neglects to represent potential differences due to input + # overrides or flake-parts extendModules. However, the cost for this + # is too high or plain infeasible respectively. We choose to implement + # deduplication and disabledModules regardless, because not doing + # so poses a more direct problem. + key = "${toString moduleLocation}#nixosModules.${k}"; imports = [ v ]; }); description = ''