Accueil > Informatique > Lirc sur debian sid

Lirc sur debian sid

Suite à quelques « galères » j’ai refais une installation de mon système sous debian sid.
J’ai eu quelques soucis pour faire fonctionner ma télécommande avec lirc.

La procédure est presque la même que dans le 1er billet excepté 2/3 petites choses.

Pour que cela fonctionne:

-Il faut installer les paquets suivants: lirc lirc-x lirc-modules-source xserver-xorg-input-kbd xserver-xorg-input-mouse
-Il faut ensuite sélectionner le module que l’on veut utiliser: dpkg-reconfigure lirc-modules-source, choisir atiusb
-On installe le module qui va bien: m-a update m-a prepare m-a a-i lirc-modules-source
-On blacklist le module ati_remote2 en ajoutant la ligne blacklist ati_remote2 au fichier /etc/modprobe.d/blacklist.conf

-Il faut ajouter les lignes suivantes au début du fichier /etc/X11/XF86Config

Section « ServerFlags »
Option « AutoAddDevices » « off »
EndSection


Et toujours dans /etc/X11/XF86Config on ajoute (comme dans le 1er billet):

Section « InputDevice »
Identifier « LIRC-Mouse »
Driver « mouse »
Option « Device » « /dev/lircm »
Option « Protocol » « IntelliMouse »
Option « SendCoreEvents »
Option « Buttons » « 2 »
Option « ZAxisMapping » « 4 5 »
EndSection


Toujours pour que irexec et irxevent se lance avec les droits user on modifie le fichier /etc/init.d/lirc de la sorte (en prennant soin de remplacer USER=k par USER=votre_user_a_vous):

USER=k

load_modules ()
{
MODULES_MISSING=false

log_daemon_msg « Loading LIRC modules »
for mod in $*; do
modprobe $mod 2> /dev/null || MODULES_MISSING=true
done

# avoid a hard dependency or a flag day between udev versions
if [ -x /sbin/udevadm ]; then
# udev >= 0.117
udevadm settle || echo « timeout waiting for devices to be ready »
elif [ -x /sbin/udevsettle ]; then
# udev < 0.117 udevsettle || echo "timeout waiting for devices to be ready" fi log_end_msg $? if $MODULES_MISSING; then log_failure_msg "Unable to load LIRC kernel modules. Verify your" log_failure_msg "selected kernel modules in /etc/lirc/hardware.conf" START_LIRCMD=false START_LIRCD=false fi } build_args () { ARGS="$*" ## Try to find an lirc device. if [ -z "$DEVICE" ]; then if [ -c $dev ]; then DEVICE="$dev" break fi fi if [ -n "$DEVICE" ] && [ "$DEVICE" != "none" ]; then ARGS="--device=$DEVICE $ARGS" fi if [ -n "$DRIVER" ] && [ "$DRIVER" != "none" ]; then ARGS="--driver=$DRIVER $ARGS" fi echo $ARGS } . /lib/lsb/init-functions test -f /usr/sbin/lircd || exit 0 test -f /usr/sbin/lircmd || exit 0 START_LIRCMD=true START_LIRCD=true START_IREXEC=true START_IRXEVENT=true if [ -f /etc/lirc/hardware.conf ];then . /etc/lirc/hardware.conf fi if [ ! -f /etc/lirc/lircd.conf ] || grep -q "^#UNCONFIGURED" /etc/lirc/lircd.conf; then if [ "$1" = "start" ]; then log_success_msg "No valid /etc/lirc/lircd.conf has been found." log_success_msg "Remote control support has been disabled." log_success_msg "Reconfigure LIRC or manually replace /etc/lirc/lircd.conf to enable." fi START_LIRCD=false START_LIRCMD=false START_IREXEC=false fi if [ ! -f /etc/lirc/lircmd.conf ] || grep -q "^#UNCONFIGURED" /etc/lirc/lircmd.conf; then START_LIRCMD=false fi if [ ! -f /home/k/.lircrc ] || grep -q "^#UNCONFIGURED" /home/k/.lircrc; then START_IREXEC=false fi case "$1" in start) if [ "$LOAD_MODULES" = "true" ] && [ "$START_LIRCD" = "true" ]; then load_modules $MODULES fi if [ "$START_LIRCD" = "true" ]; then log_daemon_msg "Starting remote control daemon(s) : LIRC " LIRCD_ARGS=`build_args $LIRCD_ARGS` if [ ! -z "$LIRCD_ARGS" ]; then start-stop-daemon --start --quiet --exec /usr/sbin/lircd -- $LIRCD_ARGS < /dev/null log_end_msg $? else log_end_msg 1 fi fi if [ "$START_LIRCMD" = "true" ]; then log_daemon_msg "Starting remote control mouse daemon : LIRCMD " start-stop-daemon --start --quiet --exec /usr/sbin/lircmd /etc/lirc/lircmd.conf < /dev/null log_end_msg $? fi if [ "$START_IREXEC" = "true" ]; then log_daemon_msg "Starting execution daemon: irexec" start-stop-daemon --start -c $USER --quiet --exec /usr/bin/irexec -- -d /home/k/.lircrc < /dev/null log_end_msg $? fi if [ "$START_IRXEVENT" = "true" ]; then log_daemon_msg "Starting execution daemon: irxevent" start-stop-daemon --start -c $USER --quiet --exec /usr/bin/irxevent -- -d /home/k/.lircrc < /dev/null log_end_msg $? fi ;; stop) if [ "$START_IREXEC" = "true" ]; then log_daemon_msg "Stopping execution daemon: irexec" start-stop-daemon --stop --quiet --exec /usr/bin/irexec log_end_msg $? fi if [ "$START_IRXEVENT" = "true" ]; then log_daemon_msg "Stopping execution daemon: irxevent" start-stop-daemon --stop --quiet --exec /usr/bin/irxevent log_end_msg $? fi if [ "$START_LIRCMD" = "true" ]; then log_daemon_msg "Stopping remote control mouse daemon: LIRCMD" start-stop-daemon --stop --quiet --exec /usr/sbin/lircmd log_end_msg $? fi if [ "$START_LIRCD" = "true" ]; then log_daemon_msg "Stopping remote control daemon(s): LIRC" start-stop-daemon --stop --quiet --exec /usr/sbin/lircd log_end_msg $? fi ;; reload|force-reload) if [ "$START_IRXEVENT" = "true" ]; then start-stop-daemon --stop --quiet --signal 1 --exec /usr/bin/irxevent fi if [ "$START_IREXEC" = "true" ]; then start-stop-daemon --stop --quiet --signal 1 --exec /usr/bin/irexec fi if [ "$START_LIRCD" = "true" ]; then start-stop-daemon --stop --quiet --signal 1 --exec /usr/sbin/lircd fi if [ "$START_LIRCMD" = "true" ]; then start-stop-daemon --stop --quiet --signal 1 --exec /usr/sbin/lircmd fi ;; restart) $0 stop sleep 1 $0 start ;; *) echo "Usage: /etc/init.d/lircd {start|stop|reload|restart|force-reload}" exit 1 esac exit 0

NOTA: Malgré ça irxevent refuse de se lancer au boot, je l’ai donc ajouté (dans Gnome) dans « Système » > « Préférences » > « Applications au démarrage ». Il existe une autre méthode décrite ici.

Je ne pense pas que les autres fichiers de configuration aient changés. A tout hasard re-voici les miens: hardware.conf lircd.conf lircmd.conf

Categories: Informatique Tags: , ,
  1. Pas encore de commentaire
  1. Pas encore de trackbacks