diff options
Diffstat (limited to 'dot_config/systemd/user')
| -rw-r--r-- | dot_config/systemd/user/inhibridge.service | 15 | ||||
| -rw-r--r-- | dot_config/systemd/user/swayidle.service | 10 |
2 files changed, 23 insertions, 2 deletions
diff --git a/dot_config/systemd/user/inhibridge.service b/dot_config/systemd/user/inhibridge.service new file mode 100644 index 0000000..a4435bf --- /dev/null +++ b/dot_config/systemd/user/inhibridge.service @@ -0,0 +1,15 @@ +[Unit] +Description=Bridge org.freedesktop.ScreenSaver inhibits to systemd-inhibit +Documentation=https://codeberg.org/Scrumplex/inhibridge +PartOf=graphical-session.target +After=graphical-session.target +ConditionEnvironment=DBUS_SESSION_BUS_ADDRESS + +[Service] +Type=simple +ExecStart=/usr/bin/inhibridge +Restart=on-failure +RestartSec=2s + +[Install] +WantedBy=sway-session.target diff --git a/dot_config/systemd/user/swayidle.service b/dot_config/systemd/user/swayidle.service index 8a99bfb..7f60847 100644 --- a/dot_config/systemd/user/swayidle.service +++ b/dot_config/systemd/user/swayidle.service @@ -1,16 +1,22 @@ [Unit] -Description=Idle manager for Wayland (lock + DPMS + before-sleep) +Description=Idle manager for Wayland (lock + DPMS + post-resume grace) PartOf=graphical-session.target After=graphical-session.target ConditionEnvironment=WAYLAND_DISPLAY [Service] Type=simple +# We deliberately do NOT lock on `before-sleep`; instead we lock only +# after a grace period post-resume, so a quick wake-and-keep-using +# doesn't require the password. `before-sleep` only pauses media so the +# call/track doesn't run on into suspend. The `lock` action still +# handles explicit `loginctl lock-session` immediately. ExecStart=/usr/bin/swayidle -w \ timeout 300 'swaylock -f -e -c 282828' \ timeout 360 'swaymsg "output * power off"' \ resume 'swaymsg "output * power on"' \ - before-sleep 'playerctl -a pause; swaylock -f -e -c 282828' \ + before-sleep 'playerctl -a pause' \ + after-resume '%h/.config/sway/resume-lock-grace.sh 30' \ lock 'swaylock -f -e -c 282828' Restart=on-failure RestartSec=2s |
