fix(shikane): detect silent deadlocks; re-apply profile on sway reload
watchdog: covers both observed deadlock flavours -- the loud one that repeats "Received invalid input AtomicChangeDone at state Discarded", and the silent one that logs nothing and just never leaves VariantInProgress. shikane-recover-on-reload.sh (new, previously referenced by sway/config but never committed): shikanectl reload -> sleep 2 -> watchdog check, falling back to a service restart when reload cannot recover. clamshell-mode.sh: documents why the laptop panel is no longer enabled unconditionally on lid-open, which raced shikane's "External Display" profile (eDP-1 disabled by design) and produced "Atomic commit failed: Device or resource busy" churn.
This commit is contained in:
1 parent
0ceec0b4ab
commit
d1bd6aae48
3 files changed
+43
-9
No files matched your search
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
# shikane-recover-on-reload: run after every sway startup/reload
|
||||
# (wired up via exec_always in the sway config).
|
||||
#
|
||||
# Re-applies the shikane profile, then verifies the daemon came out
|
||||
# the other side: if the re-apply hit the commit-failure race, the
|
||||
# watchdog check (2s later) restarts the service to recover.
|
||||
|
||||
set -u
|
||||
|
||||
shikanectl reload 2>/dev/null
|
||||
sleep 2
|
||||
exec /home/work/.config/sway/scripts/shikane-watchdog.sh
|
||||
Reference in new issue
Block a user