{ inputs, ... }: { services.hypridle = { enable = true; package = inputs.hypridle.packages.x86_64-linux.default; settings = { general = { lock_cmd = "brillo -e -O && pidof hyprlock || hyprlock"; before_sleep_cmd = "brillo -e -O && loginctl lock-session"; after_sleep_cmd = "/home/emenel/.local/bin/on-unlock"; ignore_dbus_inhibit = false; ignore_systemd_inhibit = false; }; listener = [ { timeout = "60"; on-timeout = "/home/emenel/.local/bin/dim-all-monitors"; on-resume = "/home/emenel/.local/bin/on-unlock"; } # battery timers { timeout = "90"; on-timeout = "systemd-ac-power || loginctl lock-session"; on-resume = "/home/emenel/.local/bin/on-unlock"; } { timeout = "120"; on-timeout = "systemd-ac-power || /home/emenel/.local/bin/lock-power-off-monitors"; on-resume = "/home/emenel/.local/bin/on-unlock"; } { timeout = "180"; on-timeout = "systemd-ac-power || /home/emenel/.local/bin/lock-suspend"; on-resume = "/home/emenel/.local/bin/on-unlock"; } # ac power timers { timeout = "180"; on-timeout = "systemd-ac-power && loginctl lock-session"; on-resume = "/home/emenel/.local/bin/on-unlock"; } { timeout = "240"; on-timeout = "systemd-ac-power && /home/emenel/.local/bin/lock-power-off-monitors"; on-resume = "/home/emenel/.local/bin/on-unlock"; } { timeout = "600"; on-timeout = "systemd-ac-power && /home/emenel/.local/bin/lock-suspend"; on-resume = "/home/emenel/.local/bin/on-unlock"; } ]; }; }; }