summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/dirfilter.nix7
1 files changed, 7 insertions, 0 deletions
diff --git a/utils/dirfilter.nix b/utils/dirfilter.nix
new file mode 100644
index 0000000..8472f79
--- /dev/null
+++ b/utils/dirfilter.nix
@@ -0,0 +1,7 @@
+{ path, suffix ? null, type ? "regular" }:
+let lib = import <nixpkgs/lib>; in
+map
+ (n: path + ("/" + n))
+ (builtins.filter (n: suffix == null || (builtins.match ".*\\.${suffix}" n) != null)
+ (lib.attrNames
+ (lib.filterAttrs (n: v: v == type) (builtins.readDir path))))