Enviar notificação do daemon systemd

1

Eu sei que posso enviar uma notificação para o usuário que aparecerá no canto superior direito da tela e desaparecer por conta própria, assim:

notify-send "Device detected correctly"

No entanto, isso só funciona se eu executá-lo em um gnome-terminal dentro do ambiente gráfico.

Eu quero enviar uma notificação de um processo daemon. Ele está sendo executado como um usuário diferente e é iniciado pelo systemd. Como posso conseguir isso?

    
por Kalle Elmér 02.02.2018 / 11:30

1 resposta

1

A resposta curta é que você não pode. Notificações são um serviço dbus, que é executado no barramento da sessão do usuário. Se você quiser enviar uma notificação de um serviço do sistema para um usuário, precisará ter um daemon que seja executado como usuário e se comunique com o serviço do sistema e com o barramento da sessão do usuário para enviar a notificação.

Usar hacks para contornar esse design provavelmente será uma vulnerabilidade de segurança.

    
por dobey 02.02.2018 / 14:31