infrastructure/overlays/katlib/folder-list.nix
2021-08-27 03:53:58 +01:00

7 lines
303 B
Nix

{ lib }: path: excludes:
let
filterAttrNamesToList = filter: set:
lib.foldl' (a: b: a ++ b) [ ]
(map (e: if (filter e set.${e}) then [ e ] else [ ]) (lib.attrNames set));
in
(filterAttrNamesToList (name: type: ! (builtins.elem name excludes) && type == "directory") (builtins.readDir path))