Bug 4870 - Notification plugin build system: add a way to specify which backend to use: libayatana or libnotify+libcanberra
Summary: Notification plugin build system: add a way to specify which backend to use: ...
Status: NEW
Alias: None
Product: Claws Mail
Classification: Unclassified
Component: Plugins/Notification (show other bugs)
Version: 4.3.1
Hardware: PC Linux
: P3 enhancement
Assignee: users
URL:
Depends on:
Blocks:
 
Reported: 2025-06-12 14:25 UTC by Ridai Govinda Pombo
Modified: 2025-06-14 13:19 UTC (History)
0 users

See Also:


Attachments

Description Ridai Govinda Pombo 2025-06-12 14:25:00 UTC
It would be easier for package maintainers to have a way to specify which backend the notification-plugin should use at build time. It could either be libayatana or libnotify+libcanberra right now.

What happens now is an "automatic" build thing that detects anyone installed and if all are installed the plugin is built against everything.

Distro end users may prefer to fine tune that.

Thanks in advance for any insights on this.
Comment 1 Paul 2025-06-12 14:40:39 UTC
I think you're mixing things up.

It's not libayatana OR libnotify+libcanberra.

You can use all 3, any 2, or none at all.

libayatana provides a Ayatana App Indicator notifier (basically a newer and more widely supported SysTrayIcon).

libnotify provides extra options for the Popup module, and a popup for the SysTrayIcon module.

libcanberra enables a sound theme for any module.
Comment 2 Ridai Govinda Pombo 2025-06-12 14:46:08 UTC
Hey Paul, thanks for replying so quickly.

I thought so but wasn't sure. That's good to hear and get a confirmation for.

And that made me think that it would be good to have a way to restrict which of those a user want to enable, instead of only detecting them.

Is there a way to do that right now, with autotools/automake?

Thanks again!
Comment 3 Paul 2025-06-12 14:57:25 UTC
The Ayatana App Indicator notifier is disabled by default.

The libnotify related options can be disabled by the user.

For libcanberra, the user can turn off the option "Use sound theme".

Nothing is forced upon the user. It's their choice.

Why do you want to restrict these choices at compile time?
Comment 4 Ridai Govinda Pombo 2025-06-14 13:15:49 UTC
Hey Paul,

Thank you so much for your words and patience. Also, I'd like to specially thank you and every other member of the Claws Mail software community for keeping such an awesome piece of software up to date and working all these years.

I've been using Claws Mail for a loooong time, I can't recall when I started to use it.

Having said that, returning to the matter at hand. Well, I'm a contributor to Exherbo GNU/Linux and lately I've been trying to keep Claws Mail's package up to date.

Exherbo is a source based distribution, a spinoff from Gentoo. Both distros support optimizing and customizing which dependencies you have installed, at build time. In Exherbo we call that an "option", in Gentoo it's called "use flag".

So when we want to install "mail-client/claws-mail" we provide a bunch of "options" and one of them is called now "notification", which translates to "./configure --enable-notification-plugin".

Because of the latest changes now, if an user wants to build the notification plugin, it will always build libayatana-appindicator, libnotify and libcanberra. One user would prefer to enable each combination independently, maybe using options like:

- "notification" + "providers:libayatana"
- "notification" + "providers:libnotify"
- "notification" + "providers:libcanberra"

Or without the "providers" prefix/namespace.

I know Claws Mail uses autotools/automake to configure its build, so it seems possible to have some specific "--enable-notification-plugin-<something>" or some other flag to add that optimization option to Exherbo's users.

Thank you again,
Ridai
Comment 5 Ridai Govinda Pombo 2025-06-14 13:19:05 UTC
Another thing, Paul, I've some good software development experience as well, but not that much in autotools/automake, lately I've been studying CMake and Meson, I'll give a try to autotools/automake too, and maybe I'll propose a patch, but with your help it would be simpler.

Thanks!
Ridai

Note You need to log in before you can comment on or make changes to this bug.