After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 795333 - Support building against Ayatana Indicators
Support building against Ayatana Indicators
Status: RESOLVED FIXED
Product: NetworkManager
Classification: Platform
Component: nm-applet
unspecified
Other Linux
: Normal normal
: ---
Assigned To: NetworkManager maintainer(s)
NetworkManager maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2018-04-17 14:55 UTC by Mike Gabriel
Modified: 2018-04-20 07:30 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Support building against Ayatana AppIndicator (2.43 KB, patch)
2018-04-17 14:55 UTC, Mike Gabriel
none Details | Review
Meson build support for Ayatana AppIndicator (2.90 KB, patch)
2018-04-17 19:12 UTC, Mike Gabriel
none Details | Review
Support building against Ayatana AppIndicator (v2) (6.40 KB, patch)
2018-04-19 09:48 UTC, Mike Gabriel
none Details | Review

Description Mike Gabriel 2018-04-17 14:55:06 UTC
Created attachment 371050 [details] [review]
Support building against Ayatana AppIndicator

Please consider applying the attached patch upstream.

The patch was originally file against the nm-applet package in Debian BTS and the maintainer asked me to report it upstream:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=880169

In Debian and Ubuntu, we are currently moving Indicators support over to a non-Ubuntu upstream project, named Ayatana Indicators [1].

The idea behind this effort is, that Ubuntu Indicators will be made available to all Linux distros and support various desktop environments.

One part of this effort is porting applications providing an AppIndicator / SNI based systray icon over to Ayatana AppIndicator [2].

For some thoughts about the switch over to Ayatana Indicators, see [3] (and earlier block posts + my talk on DebConf17 [4]).

[1] https://github.com/AyatanaIndicators
[2] https://github.com/AyatanaIndicators/libayatana-appindicator
[3] https://sunweavers.net/blog/node/67
[4] https://sunweavers.net/blog/node/60
Comment 1 Thomas Haller 2018-04-17 16:08:51 UTC
Hi,

For the moment, we support both meson and autotools in parallel. Any changes to Makefiles must also be done for meson.
Comment 2 Mike Gabriel 2018-04-17 19:12:53 UTC
Created attachment 371068 [details] [review]
Meson build support for Ayatana AppIndicator

Find attached a second patch that adds Ayatana AppIndicator support to the meson build flow.
Comment 3 Beniamino Galvani 2018-04-17 21:01:38 UTC
Hi,

perhaps we could reuse the same config option for both libraries (--with-appindicator=yes|ayatana) and also use the same build flags:
 
 if yes
   PKG_CHECK_MODULES(APPINDICATOR, appindicator3-0.1)
   ...
 else if ayatana
   PKG_CHECK_MODULES(APPINDICATOR, ayatana-appindicator3-0.1)
   ...

Otherwise LGTM.
Comment 4 Mike Gabriel 2018-04-18 10:07:22 UTC
Hi Benjamino

(In reply to Beniamino Galvani from comment #3)
> Hi,
> 
> perhaps we could reuse the same config option for both libraries
> (--with-appindicator=yes|ayatana) and also use the same build flags:
>  
>  if yes
>    PKG_CHECK_MODULES(APPINDICATOR, appindicator3-0.1)
>    ...
>  else if ayatana
>    PKG_CHECK_MODULES(APPINDICATOR, ayatana-appindicator3-0.1)
>    ...

Please let me know, if this is a request to update the patches I provided. (Or is it rather a "nice-to-have-could-be-would-be" type of thought?) Please let me know and I revisit the patchset.
 
> Otherwise LGTM.

Cool! + THANKS!

Mike
Comment 5 Thomas Haller 2018-04-18 12:42:49 UTC
I agree with Beniamino's suggestion, because currently the nonsensical combination of enabling both --with-appindicator and --with-ayatana-appindicator would result in unexpected behavior.

Mike, please one last change. Could you please adjust the patch (and possibly squash it with the meson patch). Thanks!!
Comment 6 Mike Gabriel 2018-04-19 09:48:44 UTC
Created attachment 371125 [details] [review]
Support building against Ayatana AppIndicator (v2)

Hi,

here the revised patch, hope that meets your requirements.

For autotools, I used an env var to pass in the AppIndicator variant.

In meson, I turned the appindicator option from Boolean to string.

Mike