Les règles Udev impliquant X11 ne s'exécutent pas au démarrage

J'ai quelques règles udev écrit pour fonctionner lorsque je connecte certains périphériques USB. Par exemple, je change la vitesse du pointeur pour certaines souris, et change les xmodmaps pour des keyboards particuliers.

Les scripts fonctionnent bien lors de la connection des périphériques lorsque l'ordinateur est allumé et fonctionnent également lors de la connection lorsque l'ordinateur est suspendu. Cependant, ces règles udev ne semblent pas se triggersr si le périphérique est branché avant de démarrer ou de se connecter. Existe-t-il un moyen de les faire fonctionner au démarrage?

J'utilise (K) Ubuntu 13.04. Voici quelques exemples de mes règles et scripts udev.

/etc/udev/rules.d/00-teck.rules :

 ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0e6a", ATTR{idProduct}=="030c", RUN+="/usr/local/bin/TECK_connect" ACTION=="remove", SUBSYSTEM=="usb", RUN+="/usr/local/bin/TECK_disconnect" 

/usr/local/bin/TECK_connect :

 #!/usr/bin/env bash export DISPLAY=:0.0 cp -f /home/sparhawk/HDD/Computer/Xmodmaps/Xmodmap_for_TECK /home/sparhawk/.Xmodmap sudo -u sparhawk setxkbmap -layout us -variant altgr-intl sudo -u sparhawk xmodmap /home/sparhawk/.Xmodmap sudo -u sparhawk pkill xcape sudo -u sparhawk xcape -e 'Alt_L=Return' && sudo -u sparhawk notify-send "xmodmap" "TECK connected." -i /usr/share/icons/oxygen/48x48/devices/input-keyboard.png --hint=int:transient:1 

/etc/udev/rules.d/90-razerwakeup-slowdown.rules :

 ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0016" RUN+="/bin/sh -c 'echo $env{DEVPATH} | grep -q usb./[^/]*/[^/]*/[^/]*$ && echo enabled > /sys$env{DEVPATH}/../power/wakeup; razer_slowdown'" 

/usr/local/bin/razer_slowdown :

 #!/usr/bin/env bash # slow down the tracking speed of a razer mouse. # to check, $ xinput --list-props "Razer Razer DeathAdder"| grep 'Constant Deceleration' # which was originally 1 scriptproper () { sleep 0.5 # perhaps not necessary, but putting it in background is. export DISPLAY=:0.0 sudo -u sparhawk xinput --set-prop "Razer Razer DeathAdder" "Device Accel Constant Deceleration" 3 } scriptproper & 

Non, puisque les opérations que vous décrivez nécessitent toutes un server X en cours d'exécution. Vous devriez envisager de créer un élément de démarrage automatique pour eux.