As notificações não funcionam nos gerenciadores de janelas independentes do Linux (Openbox, Awesome WM e similares). Tentei instalar o daemon de notificação e o dunst, mas o envio com notify-send "something"
não cria nenhuma janela para aparecer.
Tentei executar o polkit-gnome-agent e executar diretamente daemons de notificação, mas isso não ajuda (enquanto resolvi um problema semelhante dessa maneira, mas agora não faz nada).
Não há indicações de erros, a menos que eu envie uma notificação trivial com python, então recebo apenas uma vaga mensagem de erro: O
File "/usr/lib/python3.3/site-packages/gi/types.py", line 113, in function
return info.invoke(*args, **kwargs)
gi._glib.GError: Could not connect: Connection refused
programa Trivial C não gera nada (nenhum erro, por exemplo).
Estou usando o Archlinux com systemd e d-bus, suspeito que seja um problema com o polkit ou algum tipo de daemon que não esteja sendo executado no gerenciador de janelas, mas não faço ideia do que poderia tentar ou como obter mensagens de erro mais significativas.
EDIT: Eu peguei o código de exemplo de lá: https://wiki.archlinux.org/index.php/Libnotify#Python
O Dbus deve estar em execução porque o systemd tem como dependência. Eu libnotify
instalei - é o pacote que fornece notify-send
. O daemon de notificação também deve iniciar conforme necessário (somente quando a notificação chegar), seguindo o arquivo da área de trabalho /usr/share/dbus-1/services/org.freedesktop.Notifications.service
:
[D-BUS Service]
Name=org.freedesktop.Notifications
Exec=/usr/bin/dunst
Eu até tentei executar daemons diretamente (apenas execute) e tentei enviar notificações. Se alguém souber como obter mais informações, não hesite em sugerir.
EDIT 2: Tentei executar o daemon de notificação com o sudo: sudo notification-daemon_name &
(no meu caso sudo dunst &
) e sudo notify-send something
, em seguida, a notificação funciona. Mas quando tento executar qualquer uma das ações anteriores como usuário não privilegiado (o que é importante na maioria dos programas envia notificações como usuários sem privilégios), nada aparece.
notification-daemon
se recusa a trabalhar sem nenhum erro ou aviso.
EDIT 3: Claramente, é um problema de permissões: não consigo enviar notificações sem acesso root. Após a reinicialização limpa: sudo notify-send "something"
funciona mesmo sem iniciar manualmente nenhum daemons, no entanto, o que eu (e meus programas iniciados) devemos fazer para poder enviar notificações sem privilégios de root, pois é possível no Gnome ou em qualquer outro ambiente de desktop completo?
libnotify
pois isso fornece onotify-send
comando (que é tudo o que você precisa)?