31 lines
644 B
Nix
31 lines
644 B
Nix
|
{
|
||
|
lib,
|
||
|
...
|
||
|
}:
|
||
|
{
|
||
|
home.file =
|
||
|
let
|
||
|
listFilesRecursive =
|
||
|
dir: acc:
|
||
|
lib.flatten (
|
||
|
lib.mapAttrsToList (
|
||
|
k: v: if v == "regular" then "${acc}${k}" else listFilesRecursive dir "${acc}${k}/"
|
||
|
) (builtins.readDir "${dir}/${acc}")
|
||
|
);
|
||
|
|
||
|
toHomeFiles =
|
||
|
dir:
|
||
|
builtins.listToAttrs (
|
||
|
map (x: {
|
||
|
name = "./.config/${x}";
|
||
|
value = {
|
||
|
source = "${dir}/${x}";
|
||
|
force = true;
|
||
|
recursive = true;
|
||
|
};
|
||
|
}) (listFilesRecursive dir "")
|
||
|
);
|
||
|
in
|
||
|
toHomeFiles ../../dotfiles;
|
||
|
}
|