{ config, lib, pkgs, namespace, ... }: let cfg = config.${namespace}.desktop.hyprland; in { imports = [ ../options.nix ]; # Wire the hyprland wallpaper options through to the shared wallpaper module, # and provide the hyprctl hot-reload command so hyprpaper picks up the new image. config = lib.mkIf cfg.enable { ${namespace}.wallpaper = { inherit (cfg) defaultWallpaper; enable = true; source = cfg.wallpaperSource; path = cfg.wallpaper; dir = cfg.wallpaperDir; reloadCommand = "${lib.getExe' pkgs.hyprland "hyprctl"} hyprpaper wallpaper ,${cfg.wallpaper},"; }; }; }