I'm writing a shell script from which I'd like to display a desktop notification which stays in one corner of the display until the user clicks on it, and if multiple notifications are sent, then all of them are displayed and visible at the same time in one on the screen. I've tried notify-send
, which worked perfectly on Ubuntu Hardy, but it cannot do what I need on Ubuntu Lucid. What should I use instead?
I've also tried pynotify
(python-notify
) and libnotify
, but they all seem to use the same backend, which cannot do what I want by default.
I've tried
$ notify-send foo
, but it displays a notification which times out after a few second (not good), and
$ notify-send -t 0 foo
displays a notification in a window in the middle of the screen (not good). If I do
$ notify-send foo
$ notify-send bar
only one of the notifications are displayed at the same time (not good).
After some more digging I've found:
- http://www.markshuttleworth.com/archives/253 explains that Ubuntu changed the notification mechanism in 2008.
/usr/lib/notify-osd/notify-osd
is the backend binary which displays the notifications
Best Answer
It seems that
notify-osd
is the new Ubuntu notification daemon which can't do what I want, andnotification-daemon
is the one I need, the one which was the default in previous Ubuntu versions like Hardy. Here is how to install it and make it the default on Ubuntu Lucid:Optional:
Now this works as intended:
To revert the changes run: