AyatanaIndicators / libayatana-appindicator

Ayatana Application Indicators Shared Library
GNU Lesser General Public License v3.0
56 stars 13 forks source link

"No indicators" is displayed in budgie/mate-desktop/xfce-desktop #44

Closed fossfreedom closed 2 years ago

fossfreedom commented 2 years ago

Apologies if this is the wrong repo.

On both debian sid (fully up-to-date) and now ubuntu 22.04 I am seeing "No Indicators" in the budgie panel.

I can confirm I have ayatana-indicator-application, ayatana-indicator-common and libayatana-appindicator3-1 installed together with all package recommendations

budgie-indicator-applet has been installed from the debian repo - it has been compiled with ayatana support https://github.com/UbuntuBudgie/budgie-indicator-applet/blob/debian/debian/control & https://packages.debian.org/sid/budgie-indicator-applet

In the list of processes running I can see /usr/libexec/ayatana-indicator-application/ayatana-indicator-application-service is running.

Any ideas why "No indicators" is still displayed?

fossfreedom commented 2 years ago

Ok - having debugged this further there has been a change in behaviour between the version of ayatana in Ubuntu 21.10 and Ubuntu 22.04 - namely this library module v0.5.5-3 in ubuntu 21.10 and now v0.5.90-4 in Ubuntu 22.04

Using budgie-indicator-applet as the indicator applet implementation (https://github.com/UbuntuBudgie/budgie-indicator-applet/blob/master/src/applet-main.c) I have compiled the same source on both 21.10 and 22.04

When I trace our code via

G_MESSAGES_DEBUG=Indicator-Applet-DEBUG budgie-panel --replace

I can see the following

(budgie-panel:32681): Indicator-Applet-DEBUG: 10:07:06.576: zzz a: libayatana-application.so
(budgie-panel:32681): Indicator-Applet-DEBUG: 10:07:06.576: Looking at Module: libayatana-application.so
(budgie-panel:32681): Indicator-Applet-DEBUG: 10:07:06.576: Loading Module: libayatana-application.so
(budgie-panel:32681): Indicator-Applet-DEBUG: 10:07:06.577: zzz load_indicator libayatana-application.so

However running with the newer library in 22.04 libayatana-application.so is not recognised as a module to load nor an indicator to load - hence why the applet is saying that there are no indicators.

This is different from the original Canonical implementation and the slightly older ayatana implemenation since budgies applet code hasnt materially changed.

@sunweaver any thoughts why there is now a difference in behaviour?

Worse though - in both the mate-desktop in 22.04 and budgie-desktop in 22.04 I cannot see any non-ayatana indicators (appindicators) - they just don't appear in either the mate-indicator-applet nor budgie-indicator-applet

fossfreedom commented 2 years ago

I have now tested xfce-desktop and mate-desktop running under 22.04 and all have the same No Indicators issue.

In addition none of the ayatana applet implementations similarly display any appindicators (e.g. https://github.com/fossfreedom/indicator-sysmonitor)

fossfreedom commented 2 years ago

@sunweaver ok - this issue is because ayatana-indicator-application is now compiled with multiarch folder locations so libayatana-application.so now exists in /usr/lib/x86_64-linux-gnu/ayatana-indicators3/7 (for amd64 compiles) whereas in previous versions of the package it was in /usr/lib/ayatana-indicators3/7.

ayatana-indicator-printers is in /usr/lib/ayatana-indicators3/7.

If I symlink the multiarch libayatana-application.so location to the same folder location as other indicators then appindicators start to work under budgie and mate.

Can ayatana-indicator-application be packaged as before in its non-multiarch location?

Jeoshua commented 2 years ago

@fossfreedom Thank you so much, this fixed my issue.

Or, it did until I ran an update and rebooted. Now it's back to the same behavior WITH this symlink in place!

fossfreedom commented 2 years ago

Resolved by other changes and recompiling budgie-indicator