@@ -23,7 +23,7 @@ mkdir -p "${XDG_DATA_HOME}"
2323chmod 700 " ${XDG_DATA_HOME} "
2424
2525cleanup () {
26- # best effort cleanup
26+ # Best- effort cleanup.
2727 kill " ${WATCHER_PID:- } " " ${PANEL_PID:- } " " ${WM_PID:- } " > /dev/null 2>&1 || true
2828 chmod -R u+w " ${XDG_DATA_HOME} " > /dev/null 2>&1 || true
2929}
@@ -59,28 +59,43 @@ xfce4-panel >/dev/null 2>&1 &
5959PANEL_PID=$!
6060
6161# Start an SNI/AppIndicator watcher so AppIndicators can appear.
62- # Prefer Ayatana watcher if available .
62+ # Different distros provide different watcher/service binaries .
6363if command -v ayatana-indicator-application-service > /dev/null 2>&1 ; then
6464 ayatana-indicator-application-service > /dev/null 2>&1 &
6565 WATCHER_PID=$!
6666elif command -v indicator-application-service > /dev/null 2>&1 ; then
6767 indicator-application-service > /dev/null 2>&1 &
6868 WATCHER_PID=$!
69+ elif command -v indicator-application > /dev/null 2>&1 ; then
70+ # Some packages install only `indicator-application`.
71+ indicator-application > /dev/null 2>&1 &
72+ WATCHER_PID=$!
6973else
7074 WATCHER_PID=
7175fi
7276
7377# Small settle time for panel + watcher.
74- sleep 3
78+ sleep 5
7579
7680echo " ::group::Linux tray diagnostics"
7781echo " DISPLAY=${DISPLAY:- } "
7882echo " XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR} "
7983echo " XDG_DATA_HOME=${XDG_DATA_HOME} "
84+ echo " Panel plugin ids:"
85+ xfconf-query -c xfce4-panel -p /panels/panel-1/plugin-ids || true
86+ echo " Plugin-1 type:"
87+ xfconf-query -c xfce4-panel -p /plugins/plugin-1 || true
8088echo " Enabled XFCE panel plugins:"
8189xfconf-query -c xfce4-panel -p /panels/panel-1/plugin-ids || true
8290xfconf-query -c xfce4-panel -p /plugins/plugin-1 || true
8391echo " Watcher process: ${WATCHER_PID:- none} "
92+ # If we found no watcher binary, show what's available.
93+ if [ -z " ${WATCHER_PID:- } " ]; then
94+ echo " Available watcher binaries:"
95+ command -v ayatana-indicator-application-service || true
96+ command -v indicator-application-service || true
97+ command -v indicator-application || true
98+ fi
8499dbus-send --session --dest=org.freedesktop.DBus --type=method_call --print-reply \
85100 /org/freedesktop/DBus org.freedesktop.DBus.ListNames \
86101 | sed -n ' s/.*string "\(.*\)".*/\1/p' \
0 commit comments