30 lines
644 B
Nix
30 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;
|
|
}
|