diff options
Diffstat (limited to 'nixos/modules/default.nix')
-rw-r--r-- | nixos/modules/default.nix | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/nixos/modules/default.nix b/nixos/modules/default.nix index ea2acb3..c47228b 100644 --- a/nixos/modules/default.nix +++ b/nixos/modules/default.nix @@ -1,10 +1,16 @@ -{lib}: let +{ + lib, + default_modules ? [], +}: let inherit (builtins) readDir; - inherit (lib) filterAttrs hasSuffix mapAttrs' nameValuePair removeSuffix; + inherit (lib) filterAttrs hasSuffix attrValues mapAttrs' nameValuePair removeSuffix; + + modules = + mapAttrs' + (fname: _: nameValuePair (removeSuffix ".nix" fname) (./. + ("/" + fname))) + (filterAttrs ( + n: v: + v == "regular" && n != "default.nix" && hasSuffix ".nix" n + ) (readDir ./.)); in - mapAttrs' - (fname: _: nameValuePair (removeSuffix ".nix" fname) (./. + ("/" + fname))) - (filterAttrs ( - n: v: - v == "regular" && n != "default.nix" && hasSuffix ".nix" n - ) (readDir ./.)) + modules // {default.imports = attrValues modules ++ default_modules;} |