2024-02-19 17:52:58 +01:00
|
|
|
hypridle is hyprland's idle management daemon.
|
|
|
|
|
2024-02-19 18:09:40 +01:00
|
|
|
{{< toc >}}
|
2024-02-19 17:52:58 +01:00
|
|
|
|
|
|
|
## Configuration
|
|
|
|
|
2024-02-20 01:55:36 +01:00
|
|
|
Configuration is done via the config file at `~/.config/hypr/hypridle.conf`.
|
2024-02-19 17:52:58 +01:00
|
|
|
A config file is required; hypridle won't run without one.
|
|
|
|
|
|
|
|
### General
|
|
|
|
|
|
|
|
Variables in the `general` category:
|
|
|
|
|
|
|
|
| variable | description | type | default |
|
|
|
|
| -- | -- | -- | -- |
|
|
|
|
| lock_cmd | command to run when receiving a dbus lock event (e.g. `loginctl lock-session`) | string | empty |
|
|
|
|
| unlock_cmd | command to run when receiving a dbus unlock event (e.g. `loginctl unlock-session`) | string | empty |
|
|
|
|
| before_sleep_cmd | command to run when receiving a dbus prepare_sleep event | string | empty |
|
|
|
|
| after_sleep_cmd | command to run when receiving a dbus post prepare_sleep event | string | empty |
|
|
|
|
| ignore_dbus_inhibit | whether to ignore dbus-sent idle inhibit events (e.g. from firefox) | bool | false |
|
|
|
|
|
|
|
|
### Listeners
|
|
|
|
|
|
|
|
Hypridle uses listeners to define actions on idleness.
|
|
|
|
|
|
|
|
Every listener has a _timeout_ (in seconds). After idling for _timeout_ seconds, `on-timeout` will fire.
|
|
|
|
When action is resumed after idle, `on-resume` will fire.
|
|
|
|
|
|
|
|
Example listener:
|
|
|
|
|
|
|
|
```ini
|
|
|
|
listener {
|
|
|
|
timeout = 500 # in seconds
|
|
|
|
on-timeout = notify-send "You are idle!" # command to run when timeout has passed
|
|
|
|
on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2024-03-02 00:20:27 +01:00
|
|
|
You can define as many listeners as you want.
|
|
|
|
|
|
|
|
Full hypridle example with hyprlock
|
|
|
|
|
|
|
|
```ini
|
|
|
|
listener {
|
|
|
|
timeout = 300 # 5min
|
|
|
|
on-timeout = hyprlock # lock screen when timeout has passed
|
|
|
|
on-resume = notify-send "Welcome back!" # notification activity is detected after timeout has fired.
|
|
|
|
}
|
|
|
|
|
|
|
|
listener {
|
|
|
|
timeout = 380 # 5.5min
|
|
|
|
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
|
|
|
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
|
|
|
|
}
|
|
|
|
|
|
|
|
listener {
|
|
|
|
timeout = 1800 # 30min
|
|
|
|
on-timeout = systemctl suspend # suspend pc
|
|
|
|
}
|
|
|
|
```
|