aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/README.md
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-29 11:18:15 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-29 11:18:15 +0100
commit3848d890979bd5fafae92054f85061edf10edff3 (patch)
treec2bdac9348f2505246b9b4edc6ad32a88b5090a2 /README.md
parent6e0c5c33438e5e898bd075c33a45b3abf9d1b26b (diff)
downloaddotfiles-3848d890979bd5fafae92054f85061edf10edff3.tar.gz
dotfiles-3848d890979bd5fafae92054f85061edf10edff3.tar.bz2
dotfiles-3848d890979bd5fafae92054f85061edf10edff3.zip
fix(suspend): make zellij inhibit watcher resilient to local-only sessions
The previous watcher exited immediately whenever no SSH-spawned zellij was present. That caused a start-rate-limit storm: .path triggers service (zellij dir non-empty) -> watcher exits because no SSH zellij -> service stops -> .path retriggers (zellij dir still non-empty) -> ... 5 starts in 10s, systemd stops the path unit -> no inhibitor ever again, even after you SSH in Restructure so the watcher stays alive for the entire zellij socket directory lifetime and acquires/releases its own systemd-inhibit lock dynamically based on SSH-zellij presence: * Watcher now polls and exits only when the zellij socket dir is empty, matching the .path's trigger condition so it never re-fires while zellij is alive. * systemd-inhibit removed from ExecStart - watcher self-inhibits via a child 'systemd-inhibit ... sleep infinity' it can terminate on demand. * StartLimitIntervalSec=0 on the service as belt-and-braces against any future regression of the cycle. Recovery from the rate-limit hit: systemctl --user reset-failed zellij-inhibit-suspend.service zellij-inhibit-suspend.path systemctl --user daemon-reload systemctl --user restart zellij-inhibit-suspend.path
Diffstat (limited to 'README.md')
0 files changed, 0 insertions, 0 deletions