diff options
| author | Fabian Montero <fabian@posixlycorrect.com> | 2025-08-05 23:22:16 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2025-08-06 13:36:43 -0600 |
| commit | 578b0c59aa75fedf7594d4ce95b2038cc53f53cd (patch) | |
| tree | a4cddec76fc5d6d6a591ea109ad56b1082fbb8d4 /doctrine/lib/importAll.nix | |
| parent | eecebc6ffa285678f650700d771aace2efcf2176 (diff) | |
add doctrine
Diffstat (limited to 'doctrine/lib/importAll.nix')
| -rw-r--r-- | doctrine/lib/importAll.nix | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/doctrine/lib/importAll.nix b/doctrine/lib/importAll.nix new file mode 100644 index 0000000..6acabe9 --- /dev/null +++ b/doctrine/lib/importAll.nix @@ -0,0 +1,20 @@ +{lib}: { + root, + exclude ? [], +}: +with builtins; +with lib; +# http://chriswarbo.net/projects/nixos/useful_hacks.html + let + basename = removeSuffix ".nix"; + + isMatch = name: type: + (hasSuffix ".nix" name || type == "directory") + && ! elem name (map basename exclude); + + entry = name: _: { + name = basename name; + value = import (root + "/${name}"); + }; + in + mapAttrs' entry (filterAttrs isMatch (readDir root)) |
