linux - notify-send not working (in script) executed from udev -


i want notification in desktop particular usb device inserted.hence following udev rule.

kernel=="sd*",subsystems=="usb",action=="add",run+="/home/username/desktop/notify_script" 

notify_script follows

#!/bin/sh   su username -c 'notify-send "usb inserted"'   echo usb_inserted >> /home/username/desktop/test_file  

problem :

the above script works if executed root command line but, notify-send in script not working if executed udev.

question:

how make notify-send work udev? or there other way can achieve notification ?
possible invoke gui udev?

thank you.

the main problem is, udev-rule not run in xorg-related environment per default, not knowing display use. therefore fail, if want echo terminal gnome-terminal example. script, shall executed on udev-rule-match, must prior ui-related execution first export display. done via

export display=:0 

i assume, problem, , notify-send run against wall.

i playing udev-rules, , managed work, though acting root, similar answer , 1 found here :

https://unix.stackexchange.com/questions/80882/udev-running-a-shellscript-that-accesses-an-x-display

and here

scripts launched udev not have display access anymore?

you might want check zenity. helpful small notifications


Comments

Popular posts from this blog

javascript - Using jquery append to add option values into a select element not working -

Android soft keyboard reverts to default keyboard on orientation change -

Rendering JButton to get the JCheckBox behavior in a JTable by using images does not update my table -