Page 1 sur 1

[lirc] Ne fonctionne pas depuis passage à Systemd (Résolu)

Publié : mar. 23 oct. 2012, 23:51
par archey
Bonjour tout le monde.

Voilà, comme le dit si bien le titre, tout fonctionnait très bien il y a encore quelques jours, puis, depuis mon passage complet à systemd, ma télécommande ne fonctionne plus ;(.

Alors, oui, j'ai bien vu le topic juste en dessous, mais la méthode qui a permis de régler le problème ne fonctionne pas pour moi.

Je précises que ma télécommande est un périphérique HID qui fût configuré (non pas sans mal) en suivant le wiki En.

En continuant mes recherches, j'ai remarqué qu'un bug avait été ouvert concernant le lirc.service qui ne lisait pas le fichier /etc/conf.d/lircd.conf.

J'ai bien l'impression d'être affecté par ce bug car comme indiqué dans le wiki (voir mon précédent lien), c'est ici que j'ai configuré mon LIRC_DEVICE, LIRC_DRIVER et LIRC_CONFIGFILE.

Si vous pouviez dans un premier temps me confirmer que je suis bien affecté par ce problème, ce sera déjà un bon aiguillage pour moi ;).

Vous trouverez d'ailleurs le contenu de ce fichier /etc/conf.d/lircd.conf ci-dessous

Code : Tout sélectionner

#
# Parameters for lirc daemon
#

LIRC_DEVICE="/dev/input/by-id/usb-Microsoft_Microsoft_IR_Transceiver_MS179WM7-event-if00" #OUI, bouh, c'est du Microsoft, mais bon c'est cadeau je vais pas cracher dessus
LIRC_DRIVER="devinput"
LIRC_EXTRAOPS=""
LIRC_CONFIGFILE="/etc/lirc/lircd.conf"
A priori, et d'après ce que je comprends, la solution consiste a créer un fichier /etc/systemd/system/lirc.service (qui sera lu à la place de /usr/lib/systemd/system/lirc.service).

Seulement voilà, le delta entre les deux est :

Code : Tout sélectionner

[OVERRIDDEN] /etc/systemd/system/lirc.service → /usr/lib/systemd/system/lirc.se

--- /usr/lib/systemd/system/lirc.service 2012-10-06 12:32:07.000000000 +
+++ /etc/systemd/system/lirc.service 2012-10-11 01:51:08.334578131 +0200
@@ -2,8 +2,9 @@
Description=Linux Infrared Remote Control

[Service]
+EnvironmentFile=/etc/conf.d/lircd.conf
ExecStartPre=/usr/bin/ln -sf /run/lirc/lircd /dev/lircd
-ExecStart=/usr/sbin/lircd --pidfile=/run/lirc/lircd.pid
+ExecStart=/usr/sbin/lircd --pidfile=/run/lirc/lircd.pid --device=${LIRC_DEVICE} --driver=${LIRC_DRIVER}
Type=forking
PIDFile=/run/lirc/lircd.pid
...et c'est là que je ne comprends plus rien.

En gros, à quoi doit ressembler mon fichier /etc/systemd/system/lirc.service si je veux que le delta soit équivalent? (le wiki EN est plutôt avare en détails concernant la modification des fichier .service)

Voilà en gros où j'en suis pour le moment.
L'avantage, c'est que je ne suis apparament pas le seul à avoir ce problème, ce qui me donne espoir qu'il soit corrigé prochainement. :D

N'hésitez pas si vous avez besoin de détails supplémentaires, je me ferais un plaisir de vous les donner ;).

D'avance merci

Re: [lirc] Ne fonctionne pas depuis passage à Systemd

Publié : mer. 24 oct. 2012, 00:09
par benjarobin
Je te conseil de ne pas ajouter pour l'instant "EnvironmentFile=/etc/conf.d/lircd.conf" mais de modifier la ligne ExecStart et tu rajoutes quelques lignes

Code : Tout sélectionner

[Unit]
Description=Linux Infrared Remote Control

[Service]
ExecStartPre=/bin/rm -f /run/lirc/lircd
ExecStartPre=/bin/ln -sf /run/lirc/lircd /dev/lircd
ExecStart=/usr/sbin/lircd --pidfile=/run/lirc/lircd.pid -d "/dev/input/by-id/usb-Microsoft_Microsoft_IR_Transceiver_MS179WM7-event-if00" -H "devinput" "/etc/lirc/lircd.conf"
ExecStopPost=/bin/rm -f /dev/lircd
Type=forking
PIDFile=/run/lirc/lircd.pid

[Install]
WantedBy=multi-user.target
Sinon la solution trouvée dans l'autre sujet n'est pas parfaite et son problème était bien lié au fichier de configuration

Re: [lirc] Ne fonctionne pas depuis passage à Systemd

Publié : mer. 24 oct. 2012, 23:10
par archey
Salut benjarobin,

T'es vraiment un chef !

Un p'tit coup de "nano /etc/systemd/system/lirc.service" dans lequel j'ai copié/collé ce que tu avais mis entre les balises [ code], suivi d'un "systemctl reenable lirc.service" puis d'un "systemctl restart lirc.service" et ni une ni deux, ma télécommande fonctionne à nouveau.

Merci beaucoup encore pour cette réponse éclair, brève, expliquée et parfaitement fonctionnelle.