lib: rename defaultImports

This commit is contained in:
Timothy DeHerrera 2021-02-06 13:30:17 -07:00
parent e2172c8410
commit 3bc16596f7
No known key found for this signature in database
GPG Key ID: 8985725DB5B0C122

View File

@ -42,21 +42,37 @@ let
in in
map fullPath (attrNames (readDir overlayDir)); map fullPath (attrNames (readDir overlayDir));
defaultImports = dir: /**
Synopsis: importDefaults _path_
Recursively import the subdirs of _path_ containing a default.nix.
Example:
let profiles = importDefaults ./profiles; in
assert profiles ? core.default; 0
**/
importDefaults = dir:
let let
filtered = filterAttrs imports =
(n: v: v == "directory" && pathExists "${dir}/${n}/default.nix") let
(readDir dir); files = readDir dir;
p = n: v:
v == "directory"
&& pathExists "${dir}/${n}/default.nix";
in in
mapAttrs filterAttrs p files;
(n: v: {
default = import "${dir}/${n}/default.nix"; f = n: _:
} // defaultImports "${dir}/${n}") { default = import "${dir}/${n}/default.nix"; }
filtered; // importDefaults "${dir}/${n}";
in
mapAttrs f imports;
in in
{ {
inherit defaultImports mapFilterAttrs genAttrs' pkgImport pathsToImportedAttrs; inherit importDefaults mapFilterAttrs genAttrs' pkgImport
pathsToImportedAttrs;
overlays = pathsToImportedAttrs overlayPaths; overlays = pathsToImportedAttrs overlayPaths;