AyatanaIndicators / libayatana-appindicator

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

Differences between libappindicator and libayatana-appindicator? #30

Closed onitake closed 2 years ago

onitake commented 2 years ago

I recently ran into an issue installing official Slack desktop application from https://slack.com/intl/en-ch/downloads/instructions/ubuntu on Debian bookworm.

Debian has removed the Canonical version of libappindicator in bullseye (the current stable release) and only supports libayatana-appindicator now. This basically makes Slack uninstallable, because it depends on libappindicator3-1, which is no longer provided.

What exactly are the differences between libappindicator and libayatana-appindicator, and why should one prefer the Ayatana version? I'd like to make an argument with the Debian package maintainer to restore compatibility in some way, and it would be easier if the reasoning and level of compatibility is known. Do you provide / guarantee binary compatibility with the Canonical version?

sunweaver commented 2 years ago

@onitake: I am the Debian maintainer of libayatana-appindicator and @tari01 and myself are upstream, too. The point with libappindicator is that it is only scarcely maintained upstream (on the Canonical Ltd. side). So, this lead us, already years ago, to forking the whole Ayatana Indicators stack.

AFAIK, Ubuntu is currently doing the heavy lift towards Ayatana Indicators, as well, and they are also making libayatana-appindicator the default for AppIndicator based applets.

However, it should be pretty easy to drop-in a legacy package named libappindicator3-1 that provides symlinks to libayatana-appindicator3-1.so.*. For the sake of cleanliness, I'd like to avoid that in Debian. But for the sake of compatibility, this might be helpful.

Furthermore, answering your question: at the moment, the libayatana-appindicator code is still binary compatible to libappindicator. But this might change for the next major release. So, 3rd party vendors are really encouraged to prepare for the switch, as well. In Ubuntu, AFAIK, libappindicator will only stay around for the sake of legacy supporting such 3rd party applications, the future is libayatana-appindicator.

onitake commented 2 years ago

Thank you very much!

I will forward the bug report to Slack, perhaps this will give them enough incentive to expedite a rebuild before Ubuntu deprecates libappindicator.

sunweaver commented 2 years ago

@onitake Thanks. Please get back to us here, if they don't.

Maybe even better, forward this LP issue: https://bugs.launchpad.net/ubuntu/+source/libayatana-appindicator/+bug/1915695

sunweaver commented 2 years ago

I will close this issue now, as LP#1915695 is a totally convincing point for 3rd party vendors to switch over the libayatana-appindicator. It encourages me not to provide any hacky work-arounds. It's the vendors' who should adjust soonish.