Prevent Waybar stacking on resume (#448)

* Create omarchy-cmd-restart-waybar

* Replace -SIGUSR2 waybar instances

* Add migration

* Add or statment in case waybar is dead

* Just use omarchy-restart-waybar

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
This commit is contained in:
Ryan Hughes
2025-08-02 07:21:47 -04:00
committed by GitHub
parent d56a2bce2b
commit ceee999853
6 changed files with 18 additions and 4 deletions

View File

@ -4,4 +4,4 @@ omarchy-refresh-config waybar/config.jsonc
omarchy-refresh-config waybar/style.css
# Restart waybar
pkill -SIGUSR2 waybar
omarchy-restart-waybar

4
bin/omarchy-restart-waybar Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
killall waybar || true
setsid uwsm app -- waybar &>/dev/null &

View File

@ -44,7 +44,7 @@ touch "$HOME/.config/alacritty/alacritty.toml"
# Restart components to apply new theme
pkill -SIGUSR2 btop
pkill -SIGUSR2 waybar
"$HOME/.local/share/omarchy/bin/omarchy-restart-waybar"
pkill swayosd-server
setsid uwsm app -- swayosd-server &>/dev/null &
makoctl reload

View File

@ -2,7 +2,7 @@ general {
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
before_sleep_cmd = loginctl lock-session # lock before suspend.
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
on_unlock_cmd = pkill -SIGUSR2 waybar # prevent stacking of waybar when waking
on_unlock_cmd = omarchy-restart-waybar # prevent stacking of waybar when waking
}
listener {

View File

@ -2,5 +2,5 @@ echo "Fixing persistent workspaces in waybar config"
if [[ -f ~/.config/waybar/config ]]; then
sed -i 's/"persistent_workspaces":/"persistent-workspaces":/' ~/.config/waybar/config
pkill -SIGUSR2 waybar
omarchy-restart-waybar
fi

10
migrations/1754113760.sh Normal file
View File

@ -0,0 +1,10 @@
echo "Change reload Waybar on unlock command to prevent stacking"
if ! grep -q 'on_unlock_cmd *= *omarchy-restart-waybar' ~/.config/hypr/hypridle.conf; then
sed -i \
'/^ on_unlock_cmd = pkill -SIGUSR2 waybar[[:space:]]*# prevent stacking of waybar when waking$/c\
on_unlock_cmd = omarchy-restart-waybar # prevent stacking of waybar when waking' \
~/.config/hypr/hypridle.conf
omarchy-restart-waybar
fi