diff --git a/src/dotfiles/guests.nix b/src/dotfiles/guests.nix index 896ff97..74cc2ef 100644 --- a/src/dotfiles/guests.nix +++ b/src/dotfiles/guests.nix @@ -1,6 +1,5 @@ { inputs, - lib, root, specialArgs, repositoryModules, @@ -276,7 +275,7 @@ let }; }; - names = map (path: lib.removeSuffix ".nix" (builtins.baseNameOf path)) files; + names = map (path: util.removeNixSuffix (builtins.baseNameOf path)) files; in { imports = files ++ map mkGuest names; diff --git a/src/dotfiles/registry.nix b/src/dotfiles/registry.nix index 6950765..f2955c3 100644 --- a/src/dotfiles/registry.nix +++ b/src/dotfiles/registry.nix @@ -11,7 +11,7 @@ let ) ); - registryName = fileName: lib.removeSuffix ".nix" fileName; + registryName = util.removeNixSuffix; mkRegistry = path: diff --git a/src/dotfiles/util.nix b/src/dotfiles/util.nix index df0b3a5..faeceb7 100644 --- a/src/dotfiles/util.nix +++ b/src/dotfiles/util.nix @@ -20,6 +20,8 @@ in { inherit collectNixFiles; + removeNixSuffix = fileName: lib.removeSuffix ".nix" fileName; + bridgeName = id: "br-vlan${toString id}"; deriveMac = diff --git a/src/skills/style/nix/rules/general.md b/src/skills/style/nix/rules/general.md index 3b51109..a0b5024 100644 --- a/src/skills/style/nix/rules/general.md +++ b/src/skills/style/nix/rules/general.md @@ -10,3 +10,14 @@ Pass `util` to Nix functions that need the helper. `util.collectNixFiles` centralizes recursive discovery of Nix files. Repository Nix code uses one implementation. + +## Remove Nix file suffixes with the utility + +### Rule + +Use `util.removeNixSuffix` to remove a `.nix` suffix from a file name. +Do not call `lib.removeSuffix ".nix"` outside the utility definition. + +### Rationale + +The utility centralizes Nix file-name normalization.