general { lock_cmd = pidof hyprlock || hyprlock before_sleep_cmd = loginctl lock-session after_sleep_cmd = hyprctl dispatch dpms on && brightnessctl -r inhibit_sleep = 3 } # Listener 1: Dim screen # TODO: migrate to brillo? (just replace `brightnessctl` with `brillo`) listener { timeout = 180 on-timeout = brightnessctl -s set 2% # avoid 0 with OLED monitors on-resume = brightnessctl -r } # Listener 2: Lock session listener { timeout = 240 on-timeout = loginctl lock-session } # Listener 3: Turn off display listener { timeout = 250 on-timeout = hyprctl dispatch dpms off on-resume = hyprctl dispatch dpms on && brightnessctl -r } # Listener 4: Suspend system listener { timeout = 360 on-timeout = systemctl suspend }