Настольные уведомления командной строки на на Ясной Ubuntu

Я пишу сценарий оболочки, из которого я хотел бы отобразить настольное уведомление, которое остается в одном углу дисплея, пока пользователь не нажимает на него, и если несколько уведомлений отправляются, то все они отображены и видимы одновременно в одном на экране. Я попробовал notify-send, который работал отлично над Ubuntu Hardy, но она не может сделать то, в чем я нуждаюсь на Ясной Ubuntu. Что я должен использовать вместо этого?

Я также попробовал pynotify (python-notify) и libnotify, но они все, кажется, используют тот же бэкенд, который не может сделать то, что я хочу по умолчанию.

Я попробовал

$ notify-send foo

, но это отображает уведомление, которое испытывает таймаут после некоторых вторых (не хороший), и

$ notify-send -t 0 foo

отображает уведомление в окне посреди экрана (не хороший). Если я делаю

$ notify-send foo
$ notify-send bar

только одно из уведомлений отображено одновременно (не хороший).

Еще после некоторого рытья я нашел:

  • http://www.markshuttleworth.com/archives/253 объясняет, что Ubuntu изменила механизм уведомления в 2008.
  • /usr/lib/notify-osd/notify-osd двоичный файл бэкенда, который отображает уведомления
7
задан 14.12.2010, 16:04

1 ответ

Это кажется этим notify-osd новый демон уведомления Ubuntu, который не может сделать то, что я хочу, и notification-daemon тот, в котором я нуждаюсь, тот, который был значением по умолчанию в предыдущих версиях Ubuntu как Hardy. Вот то, как установить его и сделать его значением по умолчанию на Ubuntu Ясный:

$ sudo apt-get install notification-daemon
$ sudo perl -pi -e 's@^Exec=.*@Exec=/usr/lib/notification-daemon/notification-daemon@' /usr/share/dbus-1/services/org.freedesktop.Notifications.service
$ sudo killall notify-osd

Дополнительный:

$ sudo rm -f /usr/share/dbus-1/services/org.freedesktop.Notifications.service.*

Теперь это работает, как предназначено:

$ notify-send -t 0 foo

Вернуться выполненные изменения:

$ sudo apt-get install --reinstall notify-osd
5
ответ дан 07.12.2019, 15:07

Теги

Похожие вопросы