{ # config, pkgs, lib, ... }: { services = { gnome-keyring = { enable = true; components = ["secrets"]; }; kanshi = import ../niri/services/kanshi; udiskie = { enable = true; automount = false; notify = true; tray = "auto"; }; }; systemd.user.services = let mkGraphicalService = config: lib.attrsets.recursiveUpdate graphicalService config; graphicalService = { Install.WantedBy = ["niri.service"]; Unit = { Requisite = ["graphical-session.target"]; PartOf = ["graphical-session.target"]; After = ["graphical-session.target"]; }; Service = { Restart = "on-failure"; TimeoutStopSec = 10; RestartSec = 1; }; }; in { polkit-agent = mkGraphicalService { Service = { Type = "simple"; ExecStart = pkgs.mate.mate-polkit + "/libexec/polkit-mate-authentication-agent-1"; }; }; }; }