7

I want to help out with some Ubuntu dev and I have chosen a "papercut" that affects the notify-osd project.

However, I am confused as I am not sure what installing notify-osd does as the actual daemon (notify-send) is installed from the libnotify package.

Can someone shed some light on how these fit together?

Thanks

1
  • What little i understand, notify-osd is the actual pop-up, the daemon, notify-send does that.. it sends the message to notify-osd to show, libnotify is the libraries as you may have figured it out. Jul 3, 2011 at 8:14

2 Answers 2

9
+100

notify-osd (like the standard notification-daemon and GNOME Shell) implements the Desktop Notifications Specification, which specifies a DBus interface for applications to talk to.

libnotify is a C library providing an API for applications to create and manage notifications; it uses DBus internally to talk to the notification daemon.

notify-send is a tiny commandline application which uses libnotify to show notifications.

2
  • So, you link your app to libnotify (<python-libnotify> for example if you are using python) by including the headers and programming against them, then when you compile your binary it will include those libraries and be able to call to notify-osd daemon?
    – SuperJumbo
    Jul 9, 2011 at 3:48
  • You don't technically need to link against either libnotify - you could call the appropriate D-Bus methods yourself. That's broadly correct, though. Your binary will link to libnotify, and it will communicate with the notify-osd daemon.
    – RAOF
    Sep 10, 2011 at 19:36
0

notify-osd is a background daemon listening messages from apps. notify-send is a Bash program that make posible to send messages using notifyosd. notify-osd main purpose is for programming languages via libnotify (ie: python-libnotify)

1
  • Ok, so <some-language>-libnotify is a D-BUS interface that apps use to communicate with Notify-osd and display messages to the screen?
    – SuperJumbo
    Jul 4, 2011 at 0:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .