From fa4d2bc566618ec29880d25837a8506ece2a5eef Mon Sep 17 00:00:00 2001 From: Ryan Hughes Date: Sun, 17 May 2026 18:11:12 -0400 Subject: [PATCH] Faster restart-shell, sidestep upstream IPC kill crash MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit quickshell kill currently trips Quickshell #539 (notifyInternal2 event loop crash via IpcKillCommand::exec), which leaves the Wayland surface lingering long enough that the new instance starts on top of the dying one — a duplicate bar. SIGKILL drops the client connection and the compositor cleans up surfaces immediately; the shell has no persistent state to flush. Sub-20ms restart, no duplicates. --- bin/omarchy-restart-shell | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/bin/omarchy-restart-shell b/bin/omarchy-restart-shell index c6b38985..d6e06f5f 100755 --- a/bin/omarchy-restart-shell +++ b/bin/omarchy-restart-shell @@ -5,5 +5,11 @@ CONFIG_DIR="$OMARCHY_PATH/default/quickshell/omarchy-shell" -quickshell kill -p "$CONFIG_DIR" >/dev/null 2>&1 || true +# Skip `quickshell kill` (graceful IPC exit) — it currently trips an upstream +# crash in IpcKillCommand::exec (Quickshell #539), which leaves the Wayland +# surface lingering and produces a duplicate bar when the new instance starts. +# A SIGKILL drops the client connection and the compositor cleans up surfaces +# immediately, with no state to flush since the shell holds nothing persistent. +pkill -KILL -f "quickshell -p $CONFIG_DIR" 2>/dev/null + setsid uwsm-app -- quickshell -p "$CONFIG_DIR" >/dev/null 2>&1 &