Eu preciso mostrar mensagens de notificação para diferentes usuários como root em um sistema Debian executando o KDE com um script bash ou python.
O que eu tentei até agora são:
export DISPLAY=:X (X symbolizes the remote host data)
export XAUTHORITY=~$USERNAME/.Xauthority
zenity --warning --title $TITLE --text " $TEXT
Estes comandos fazem o que eu quero, mas apenas através do terminal. Quando eu tento usá-los em um script Python (usando os.system () ou subprocess.call ()) ou tente executar através de um script de shell; falha (geralmente mostrando a notificação para o usuário que eu fiz login, não para o usuário de destino. Também às vezes leva a erros:
Could not open X display
No protocol specified
Gtk-WARNING **: cannot open display: :X.
XDG_RUNTIME_DIR not set in the environment.
Mas também raramente mostra a notificação para o usuário correto. Portanto, eu não conseguia entender o modo como se comporta.)
Eu também li que o zenity não é bom para o KDE, mas o kdialog é o preferido.
kdialog --title "some title" --passivepopup "some text" 5 & (number for the time-out)
Usando o comando acima com gksu e su, não há sucesso novamente. Eu também tentei com pynotify. Eu acho que o problema não é sobre a maneira que eu crio a mensagem de notificação, mas mostrando ao usuário, mais diretamente, conectando-se ao servidor X ou transferindo configurações específicas do usuário do X.
Preciso de ajuda neste momento; qualquer sugestão é apreciada.