#1944·vicinae

Option to disable StatusNotifierWatcher registration in main D-Bus session

Author: creioCreated Sep 13, 2026Updated Sep 19, 2026
LabelsbugLinuxX11auto-triaged

In X11 environments with minimal window managers (Openbox, i3, etc.), the main D-Bus session already has StatusNotifierWatcher running from system tray components (tint2, stalonetray, nm-applet, etc.).

When Vicinae starts, it attempts to register its own StatusNotifierItem in the main session bus. This causes conflicts:

  • Multiple launchers competing for StatusNotifierWatcher role
  • Icon hijacking from other tray applications
  • Crashes when multiple components try to manage the same tray items

Current workaround: I have to wrap Vicinae with dbus-run-session to isolate it in a separate D-Bus session:

bash
#!/bin/bash
exec dbus-run-session -- /usr/bin/vicinae server --replace "$@"

This creates an isolated D-Bus world where:

  • Vicinae has its own StatusNotifierWatcher
  • It doesn't interfere with the main session
  • The main session doesn't interfere with it

Suggested solution: Add a configuration option to disable StatusNotifierItem/StatusNotifierWatcher registration in the main D-Bus session, or make it opt-in rather than default behavior.

Environment:

  • OS: Arch Linux
  • WM: Openbox (X11/Xorg)
  • Vicinae version: v0.28.1