Skip to content

[BUG] Wallpaper change (ml4w-wallpaper) causes tray applications (like Steam) to close unexpectedly #1742

Description

@NotWeyn

Describe the bug

When changing the wallpaper using the waypaper (which triggers ml4w-wallpaper), applications that rely on the system tray (such as Steam, ytmusic etc.) unexpectedly close or crash. Applications that do not rely on the system tray (like Zen Browser / Firefox) remain unaffected.

Checking the logs reveals that Steam is receiving a SIGTERM signal
steam-runtime-launcher-service[16695]: D: Received signal 15 'Terminated' from process 2901
(PID 2901 in this case was waybar)

Steps to reproduce

❯ pkill -SIGUSR2 waybar
use this command on your terminal

Expected behavior

I would have expected the apps not to close

Screenshots

No response

Distribution

Arch Linux

If Other, specify

No response

Additional context

To prevent applications from closing when the wallpaper changes, Waybar needs a full restart rather than a soft reload via SIGUSR2. A full restart cleanly tears down the D-Bus connections without sending kill signals to tray apps.

Proposed fix in ~/.config/ml4w/scripts/ml4w-wallpaper:

 # Reload Waybar
 if pgrep -x "waybar" > /dev/null
 then
-    info "Waybar is currently running."
-    pkill -SIGUSR2 waybar
+    info "Waybar is currently running. Restarting..."
+    killall waybar || true
+    sleep 0.5
 else
     info "Waybar is not running."
+fi
-    nohup bash -c "$HOME/.config/waybar/launch.sh" > /dev/null 2>&1 &
-    disown
-fi
+nohup bash -c "$HOME/.config/waybar/launch.sh" > /dev/null 2>&1 &
+disown
-info "Waybar reloaded"
+info "Waybar restarted"

Replacing pkill -SIGUSR2 waybar with a clean killall waybar followed by launch.sh completely resolves the issue. Waybar updates its colors properly via Matugen, and Steam/tray applications no longer crash.

I recommend implementing this change in future updates of the dotfiles to improve stability for users running background tray applications.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions