diff options
| author | beeb5k <beebeeb5k@gmail.com> | 2026-03-06 18:33:36 +0530 |
|---|---|---|
| committer | beeb5k <beebeeb5k@gmail.com> | 2026-03-06 18:33:36 +0530 |
| commit | f1de2014dcd426e015a2638222160d9d349ea4e5 (patch) | |
| tree | 0dadefde6445c6075b767823969e6a51409c374c /lib/importer.nix | |
Init
Diffstat (limited to 'lib/importer.nix')
| -rw-r--r-- | lib/importer.nix | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/importer.nix b/lib/importer.nix new file mode 100644 index 0000000..d74d6c9 --- /dev/null +++ b/lib/importer.nix @@ -0,0 +1,15 @@ +lib: dir: +let + nodes = builtins.readDir dir; + + shouldImport = + name: type: + let + path = dir + "/${name}"; + in + (type == "regular" && name != "default.nix" && lib.hasSuffix ".nix" name) + || (type == "directory" && builtins.pathExists (path + "/default.nix")); + + validNodes = lib.filterAttrs shouldImport nodes; +in +map (name: dir + "/${name}") (builtins.attrNames validNodes) |
