users/ryan/modules/default.nix

6ad98695409ab789b2b3b15c95de404daf46d1a7 · 285 B · 15 lines raw

1 { lib, ... }:
2 let
3 entries = builtins.readDir ./.;
4
5 modulesDirs = lib.filterAttrs
6 (name: type:
7 type == "directory" &&
8 builtins.pathExists (./. + "/${name}/default.nix"))
9 entries;
10 in
11 {
12 imports = map
13 (name: ./${name})
14 (builtins.attrNames modulesDirs);
15 }