Notificação não exibida pelo script executado pelas regras do udev

1

Eu fiz um script que exibe uma notificação sempre que eu desconectar o carregador. Eu fiz o script para ser executado pelo udev, fazendo uma regra nas regras. O problema é o script rodar bem, mas a notificação não apareceu. Até agora eu sei que o script requer o endereço do servidor de exibição, aqui está a aparência da minha regra e script.

export DISPLAY=:0
export XAUTHORITY=/home/user/.Xauthority
/usr/bin/notify-send --urgency=critical -i face-cool "Charger removed"
zenity --info --text 'Happy New Year'

Aqui está a regra que criei

SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Discharging", RUN+="/home/user/alertchargerremoved.sh"

Existe alguma outra maneira de me notificar quando o carregador é removido, como em vez de uma notificação que não exige o servidor X? Você tem outras idéias, como pode realizar isso?

    
por Hemant Yadav 11.12.2016 / 07:56

1 resposta

0

Eu já trabalhei para mim antes:

ACTION=="remove", KERNEL=="sd?", ENV{ID_PART_TABLE_TYPE}!="", RUN+="/usr/bin/sudo -u username DISPLAY=:0 notify-send 'Unsafe Remove' '<b><i>Your long message</b></i>' -i /usr/share/icons/gnome/48x48/emotes/face-worried.png -t 10000"

De: Alertar o usuário quando ele desconectar um pen drive USB de maneira não adequada

Portanto, use sudo para executar notify-send como o mesmo usuário (não como root )

/usr/bin/sudo -u username notify-send ...
    
por user.dz 11.12.2016 / 10:55