{ lib, config, flakeRoot, user, ... }: let cfg = config.wallpaper; sourceDir = "${flakeRoot}/assets/hyprland/wallpaperstuff"; targetDir = "/home/${user.username}/Droidnix/wallpaperstuff"; in { options.wallpaper.enable = lib.mkEnableOption "Wallpaper setup"; config = lib.mkIf cfg.enable { home-manager.users.${user.username} = { home.activation.copyWallpapers = lib.hm.dag.entryAfter [ "writeBoundary" ] '' echo "=== Copying wallpapers ===" mkdir -p "${targetDir}" # Copy ONLY if directory is empty (so user can manage files later) if [ -z "$(ls -A "${targetDir}" 2>/dev/null)" ]; then echo "Directory empty → copying initial files" cp -r ${sourceDir}/* "${targetDir}/" else echo "Directory not empty → skipping copy" fi ''; }; }; }