Reiniciar resolveu o problema. Não tenho certeza do porquê.
Editar O problema ocorreu novamente. A utilização de urgência crítica fez com que a notificação aparecesse. O comando é:
notify-send --urgency="critical" "asdf"
sudo notify-send Test "Hello World"
B32Bes Mulher32B32eseseses Mulher32Beses MulheresBBBeseses Mulher MulheresesBBBeseses Mulher MulheresesBBesesB MulheresBBesB MulheresesB MulheresBBBBesesesBBesBes
notify-send Test "Hello World"
Mulher Mulher MulherBB MulheresB MulheresBB MulheresBBBB MulheresBBBBBB MulheresBBBBBB32BBesBBesBBesBBesBBBBBBesesBBBBBBBBBBBeses
Mais informações
32BBes32Bes Mulher Mulher MulherB32B Mulher32B Mulher MulherBBB MulherBB MulherBBB MulherBB MulherBBBB MulherBB MulherBBBB MulherBB MulherBBBB MulherBB MulherBB MulherBB MulherBB MulherBBesAs notificações parecem usar notificar-osd em vez de notificação-daemon. A execução de notificação-envio aparece para iniciar um processo de notificação-osd sob o usuário que executou o envio de notificação. Não tenho certeza do que é o dbus.
Nenhuma mensagem de erro
Não há erros no syslog. Quando executo o código a seguir, não há mensagens de erro.
#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;
}
Eu não sei o que estou fazendo. Obrigado pela ajuda.
Notifique Python
No passado, eu usei um programa python que tem notificações em funcionamento. Bes32eses MulherB32 Mulheres MulherB32 MulheresesesBes MulherB32 Mulher32es MulherB MulherBeses Mulheres Mulher MulherBes MulherB MulherB32esB MulherB32esB MulherBBeses MulherB MulherBBes MulheresesBBeseses
#!/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()
Código de link
Não sei por que isso funciona. O python Notify está apenas envolvendo a biblioteca usada no exemplo C. Eu prefiro não usar python, mas vou se for preciso.
Editar
O problema ocorreu novamente. Resolvido adicionando urgência crítica.
Reiniciar resolveu o problema. Não tenho certeza do porquê.
Editar O problema ocorreu novamente. A utilização de urgência crítica fez com que a notificação aparecesse. O comando é:
notify-send --urgency="critical" "asdf"
Com esta resposta eu "consertei" o problema. Nenhum sudo
precisava agora. Tem que definir novamente a variável de ambiente DBUS_SESSION_BUS_ADDRESS
:
eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)";
Mas, como perguntado aqui :
notify-send -u critical "Nice title" "Nice description"
funciona bem, mas notify-send -u normal "Nice title" "Nice description"
não funciona. O uso também de -i
parece obsoleto: notify-send -i "notification-network-wireless-full" "Summary" "Body"
. Talvez devêssemos arquivar um bug .