diff options
| -rw-r--r-- | flake.nix | 1 | ||||
| -rw-r--r-- | lib/default.nix | 34 |
2 files changed, 35 insertions, 0 deletions
@@ -11,6 +11,7 @@ in inputs.parts.lib.mkFlake {inherit inputs;} { imports = [ + ./lib ./modules ./overlay ./systems diff --git a/lib/default.nix b/lib/default.nix new file mode 100644 index 0000000..c6ca2ca --- /dev/null +++ b/lib/default.nix @@ -0,0 +1,34 @@ +{ + lib, + inputs, + ... +}: { + flake.lib = + ( + lib.extend (final: prev: let + readDir' = dir: + prev.filterAttrs (name: ( + prev.const (name != "default.nix") + )) (builtins.readDir dir); + in { + my = + prev.recursiveUpdate + ( + prev.mapAttrs' (name: ( + prev.const ( + prev.nameValuePair + (prev.removeSuffix ".nix" name) + (import ./${name} { + lib = final; + inherit inputs; + }) + ) + )) (readDir' ./.) + ) + { + inherit readDir'; + }; + }) + ) + .my; +} |
