28 lines
836 B
Nix
28 lines
836 B
Nix
{ lib, config, ... }:
|
|
|
|
let
|
|
username = config.defaultUser or "henrov";
|
|
|
|
# Include the source folder in the Nix store
|
|
assetPath = builtins.path { path = ../../../assets/copy_2_home; };
|
|
in
|
|
{
|
|
_module.args.hmUsers = {
|
|
# Ensure this user entry merges safely with other modules
|
|
${username} = lib.mkMerge [
|
|
# Any previous _module.args.hmUsers.${username} entries from other modules will merge automatically
|
|
{
|
|
# Activation script to copy all assets into $HOME
|
|
home.activation.copyAssets = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
|
echo "Copying assets from ${assetPath} to home directory..."
|
|
|
|
# Copy recursively, overwrite existing files, leave other files untouched
|
|
cp -rT ${assetPath} "$HOME"
|
|
|
|
echo "Done copying assets."
|
|
'';
|
|
}
|
|
];
|
|
};
|
|
}
|