add shikane-watchdog user service to auto-recover shikane deadlocks
This commit is contained in:
1 parent
e3643c3ae2
commit
e338d15922
5 files changed
+88
No files matched your search
@@ -11,3 +11,25 @@ stow .
|
||||
```
|
||||
If stow is not installed use ./install.sh from .dotfiles repo
|
||||
|
||||
# User services
|
||||
|
||||
## shikane-watchdog
|
||||
|
||||
`.config/systemd/user/shikane-watchdog.timer` (every 2 min, user unit)
|
||||
runs `.config/sway/scripts/shikane-watchdog.sh`, which restarts the
|
||||
`shikane` user service if its state machine is stuck.
|
||||
|
||||
Why: shikane 1.1.1 deadlocks when a profile application is discarded
|
||||
mid-way (e.g. by a failing DP atomic commit on the external display).
|
||||
The daemon then keeps logging
|
||||
`[WARN shikane::variant] Received invalid input AtomicChangeDone at state Discarded`
|
||||
and `shikanectl reload` no longer recovers it. The watchdog detects
|
||||
that signature in the journal and runs `systemctl --user restart shikane`
|
||||
(re-applies the active profile in ~1s). It never restarts a healthy
|
||||
or legitimately transitioning daemon.
|
||||
|
||||
```console
|
||||
systemctl --user status shikane-watchdog.timer # check it's active
|
||||
systemctl --user disable --now shikane-watchdog.timer # disable
|
||||
```
|
||||
|
||||
Reference in new issue
Block a user