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.
16 lines
674 B
Bash
Executable File
16 lines
674 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# omarchy:summary=Restart the Omarchy shell
|
|
# omarchy:examples=omarchy restart shell
|
|
|
|
CONFIG_DIR="$OMARCHY_PATH/default/quickshell/omarchy-shell"
|
|
|
|
# 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 &
|