Hello,
I've no experience with packaging desktop software so maybe my question will be stupid.
I'm updating a package which, when running tests, uses libnotify library to send a notification to a desktop environment. The library uses D-Bus to route the notification to org.freedesktop.Notifications D-Bus service. So package needs to build-require an org.freedesktop.Notifications server implementation.
Now tha packaging question: How to express this dependency?
I discovered that many org.freedesktop.Notifications server packages provide `desktop-notification-daemon' RPM symbol. I think it would be much better if the dependency was expressed as, e.g., `dbus(org.freedesktop.Notifications)'. It would be more generic and it would allow to express the dependencies not only for desktop notificiations servers. The Provides symbols could be generated by rpm-build scripts from the D-Bus service definition files.
Is this idea worth for pursuing?
-- Petr
On Wed, 2014-08-20 at 13:04 +0000, Petr Pisar wrote:
I discovered that many org.freedesktop.Notifications server packages provide `desktop-notification-daemon' RPM symbol. I think it would be much better if the dependency was expressed as, e.g., `dbus(org.freedesktop.Notifications)'. It would be more generic and it would allow to express the dependencies not only for desktop notificiations servers. The Provides symbols could be generated by rpm-build scripts from the D-Bus service definition files.
Is this idea worth for pursuing?
I think it would be worthwhile, yes. The question of how to enumerate the dbus services in the OS has come up before, and it's lame that we don't try to track it.
- ajax
On 20 August 2014 14:59, Adam Jackson ajax@redhat.com wrote:
I think it would be worthwhile, yes. The question of how to enumerate the dbus services in the OS has come up before, and it's lame that we don't try to track it.
This is something I needed to do for the AppStream metadata; code available here: https://github.com/hughsie/appstream-glib/blob/master/libappstream-builder/p...
I'm sure it would be pretty easy to put that in rpm somewhere.
Richard.