уведомьте - отправляют только работы с sudo

Проблема

sudo notify-send Test "Hello World"

Отображает уведомление как ожидалось.

notify-send Test "Hello World"

Не отображает уведомление.

Дополнительная информация

Версия 16.04 Ubuntu.

Уведомления, кажется, используют, уведомляют-osd вместо демона уведомления. Выполнение уведомляет - отправляют, кажется, запускает уведомлять-osd процесс при пользователе, который работал, уведомляют - отправляют. Я не уверен, каков dbus.

Никакие сообщения об ошибках

В системном журнале нет никаких ошибок. Когда я выполняю следующий код, никакие сообщения об ошибках не происходят.

#include <libnotify/notify.h>
#include <stdio.h>
int main() {
    gboolean x = notify_init ("Hello world!");
    printf( "notify_init: %d\n", x );
    NotifyNotification * Hello = notify_notification_new ("Hello world", "This is an example notification.", "dialog-information");
    GError *err = NULL;
    x = notify_notification_show (Hello, &err);
    printf( "notify_notification_show: %d\n", x );
    if(err != NULL) {
        printf("Error detected!\n");
        printf("Error message:%s\n", err->message);
    }
    else {
        printf("No error detected.\n");
    }
    g_object_unref(G_OBJECT(Hello));
    notify_uninit();
    return 0;
}

Я не знаю то, что я делаю. Спасибо за справку.

Python уведомляет

В прошлом я использовал программу Python, которая имеет рабочие уведомления. Я протестировал привет мировое уведомление, и оно работает без sudo!

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import gi
gi.require_version('Notify', '0.7')
from gi.repository import Notify

Notify.init("test")
n = Notify.Notification.new('test', 'test2')
n.set_urgency(Notify.Urgency.CRITICAL)    
n.show()

Код из http://www.devdungeon.com/content/desktop-notifications-python-libnotify

Я не уверен, почему это работает. Python Уведомляет, просто переносит библиотеку, пользовавшуюся в пример C. Я предпочел бы не использовать Python, но будете, если я должен.

Править

Проблема произошла снова. Разрешенный путем добавления очень важной безотлагательности.

2
задан 9 September 2016 в 08:30

2 ответа

Перезапуск решил проблему. Не уверенный, почему.

Редактирование проблема произошла снова. Используя очень важную безотлагательность заставил уведомление появляться. Команда:

 notify-send --urgency="critical" "asdf"
1
ответ дан 2 December 2019 в 04:53

С этот ответ я "решил" проблему. Никакой sudo необходимый теперь. Должны установить снова DBUS_SESSION_BUS_ADDRESS переменная среды:

eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)";

, Но, как спрошенный здесь :

  • notify-send -u critical "Nice title" "Nice description" хорошо работают, но
  • notify-send -u normal "Nice title" "Nice description" не работает.

Также использование -i этот путь кажется устаревшим: notify-send -i "notification-network-wireless-full" "Summary" "Body". Возможно, мы должны регистрировать ошибку .

0
ответ дан 2 December 2019 в 04:53

Другие вопросы по тегам:

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