{ config, pkgs, lib, flakeRoot, ... }: let wallpaperSource = "${flakeRoot}/assets/hyprland/wallpaperstuff"; wallpaperTarget = "$HOME/.config/wpaperd"; in { # Install wpaperd system-wide environment.systemPackages = with pkgs; [ wpaperd ]; # Activation script: copy wallpapers & config to ~/.config/wpaperd system.activationScripts.copyWpaperdConfig = { text = '' echo "=== Copying wpaperd config to $HOME/.config/wpaperd ===" mkdir -p "${wallpaperTarget}" cp -rT "${wallpaperSource}" "${wallpaperTarget}" echo "Done." ''; deps = [ ]; }; # User systemd service (runs on login) systemd.user.services.wpaperd = { description = "wpaperd wallpaper daemon"; after = [ "default.target" ]; serviceConfig = { Type = "simple"; ExecStart = "bash -c '${pkgs.wpaperd}/bin/wpaperd --config ${wallpaperTarget}/wallpaper.conf'"; Restart = "on-failure"; RestartSec = 1; }; wantedBy = [ "default.target" ]; enable = true; }; }