refactor(dotfiles): share Nix file discovery
This commit is contained in:
@@ -17,7 +17,7 @@ let
|
||||
util = import ./util.nix { inherit lib; };
|
||||
|
||||
registry = import ./registry.nix {
|
||||
inherit lib;
|
||||
inherit lib util;
|
||||
hosts = self.nixosConfigurations;
|
||||
root = root + "/registry";
|
||||
};
|
||||
|
||||
@@ -276,10 +276,7 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
names = map (file: lib.removeSuffix ".nix" file) (lib.attrNames guestFiles);
|
||||
guestFiles = lib.filterAttrs (file: type: type == "regular" && lib.hasSuffix ".nix" file) (
|
||||
builtins.readDir root
|
||||
);
|
||||
names = map (path: lib.removeSuffix ".nix" (builtins.baseNameOf path)) files;
|
||||
in
|
||||
{
|
||||
imports = files ++ map mkGuest names;
|
||||
|
||||
@@ -2,20 +2,14 @@
|
||||
hosts,
|
||||
lib,
|
||||
root,
|
||||
util,
|
||||
}:
|
||||
let
|
||||
definitions =
|
||||
lib.mapAttrs'
|
||||
(
|
||||
name: _type:
|
||||
let
|
||||
path = root + "/${name}";
|
||||
in
|
||||
lib.nameValuePair (registryName name) (mkRegistry path)
|
||||
)
|
||||
(
|
||||
lib.filterAttrs (name: type: type == "regular" && lib.hasSuffix ".nix" name) (builtins.readDir root)
|
||||
);
|
||||
definitions = lib.listToAttrs (
|
||||
map (path: lib.nameValuePair (registryName (builtins.baseNameOf path)) (mkRegistry path)) (
|
||||
util.collectNixFiles root
|
||||
)
|
||||
);
|
||||
|
||||
registryName = fileName: lib.removeSuffix ".nix" fileName;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user