{ resources, config, lib, pkgs, ... }: { options.zpha.programs.shaderbg.enable = lib.mkEnableOption "shaderbg"; config = lib.mkIf config.zpha.programs.shaderbg.enable { users.users.zaphyra.maid = { packages = [ pkgs.shaderbg ]; systemd.services.shaderbg = { description = "A live wallpaper program for Sway and other compositors with wlr-layer-shell support."; after = [ "niri-session.target" ]; partOf = [ "niri-session.target" ]; wantedBy = [ "niri-session.target" ]; unitConfig.ConditionEnvironment = "WAYLAND_DISPLAY"; serviceConfig = { Restart = "on-failure"; ExecStart = lib.escapeShellArgs [ (lib.getExe pkgs.zpha.shaderbg) "*" resources.shaders.background1 ]; }; }; }; }; }