Page 1 sur 1
[XBMC] Modification xbmc.service clavier français [résolu]
Publié : sam. 11 mai 2013, 18:04
par Tetsumaki
Bonjour à tous.
J'aurais besoin d'aide pour modifier le service xbmc.service qui sert donc à lancer automatiquement xbmc grâce à xinit.
De base :
- Lancement xbmc-standalone
Ce que je voudrais :
- Lancement xbmc-standalone
- Execution de : setxkbmap -display :0
Pour ce faire j'ai déjà fais la base :
Code : Tout sélectionner
cp /usr/lib/systemd/system/xbmc.service /etc/systemd/system
systemctl enable xbmc
Il ne reste qu'à modifier
/etc/systemd/system/xbmc.service et c'est là que j'ai besoin de votre aide.
Merci d'avance.
Re: [XBMC Systemd] Modification xbmc.service
Publié : sam. 11 mai 2013, 19:19
par benjarobin
Pourquoi faire compliqué ? Pourquoi ne pas rajouter un service qui aura comme dépendance celui de xbmc (Il sera lancé après) ?
Re: [XBMC Systemd] Modification xbmc.service
Publié : sam. 11 mai 2013, 19:42
par Tetsumaki
Je préférerais modifier que celui de XBMC si faisable.
J'avais testé comme tu dis mais en relançant le service xbmc l'autre service ajouté ne se relance pas.
Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 02:05
par Tetsumaki
Personne ?

Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 08:37
par oktoberfest
Salut,
si tu veux modifier ton fichier /etc/systemd/system/xbmc.service, tu ajoutes des lignes ExecStart pour lancer les commandes que tu veux, par exemple :
Code : Tout sélectionner
[Service]
User = xbmc
Group = xbmc
Type = simple
ExecStart = /usr/bin/xinit /usr/bin/xbmc-standalone -- :0 -nolisten tcp
ExecStart = /usr/bin/setxkbmap -display :0
Les commandes ExecStart sont lancés dans l'ordre d'apparition à l'écran

Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 13:39
par Tetsumaki
Ce n'est malheureusement pas aussi simple que ça sinon je ne solliciterais pas l'aide de la communauté.
Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 13:57
par oktoberfest
sur le principe ça marche... sauf dans ton cas car je pense que xbmc ne rend pas la main.
Tu peux créer un service (un toto.service) dans lequel je mettrais à peu de chose près ce qu'il y a dans le xbmc.service
Code : Tout sélectionner
[Unit]
Description = Mon script à moi
After = remote-fs.target
[Service]
User = xbmc
Group = xbmc
Type = simple
ExecStart = /usr/bin/xinit /usr/local/bin/start_xbmc -- :0 -nolisten tcp
Restart = always
[Install]
WantedBy = multi-user.target
Et dans /usr/local/bin/start_xbmc tu mets :
Cela te permet d'avoir un script de démarrage (/usr/local/bin/start_xbmc) dans lequel tu mets tout ce dont tu as besoin/envie.
Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 14:34
par benjarobin
Peut être ExecStartPost au lieu de ExecStart ?
Sinon la solution donnée par oktoberfest est tout à fait valide
Re: [XBMC Systemd] Modification xbmc.service
Publié : jeu. 16 mai 2013, 14:48
par Tetsumaki
oktoberfest : Merci, je vais m'orienter vers cette solution et aussi faire quelques autres tests.
benjarobin : j'ai essayé avec ExecStartPost et ExecStartPre et dans les 2 cas ça ne passe pas mais malgré le fait que j'utilise systemd depuis pas mal de temps celui-ci reste toujours assez flou et j'ai peut-être mal fait quelque chose.
Re: [XBMC Systemd] Modification xbmc.service
Publié : ven. 17 mai 2013, 11:42
par hopenux
Sur mon post précédent j'ai réussi à faire fonctionner ceci :
Code : Tout sélectionner
# nano /etc/systemd/system/startx@.service
[Unit]
Description=startx automatique pour l'utilisateur xbmc
After=graphical.target systemd-user-sessions.service
[Service]
User=xbmc
WorkingDirectory=/home/xbmc/
PAMName=xbmc
Type=simple
ExecStart=/bin/bash -l -c startx /usr/bin/xbmc-standalone -- :0
[Install]
WantedBy=graphical.target
# systemctl enable startx@xbmc.service
Tu peux surement l'adapter. tout dépends du service graphique que tu as besoin de lancer.
Re: [XBMC Systemd] Modification xbmc.service
Publié : mar. 28 janv. 2014, 17:26
par Tetsumaki
Je relance mon vieux sujet.
J'avais fini cette histoire en laissant le clavier en anglais étant donné que je n'ai pas vraiment de mal avec du qwerty.
Enfin bref, après une réinstallation système je me suis dis, pourquoi ne pas me repencher sur le sujet ? et c'est en réalité tout bête, les solutions précédentes étaient bonnes sauf qu'il fallait ajouter un sleep.
Mon problème initial était que les périphériques Logitech Unifying (module = hid_logitech_dj) n'aime pas xorg :
https://wiki.archlinux.org/index.php/Lo ... _xorg.conf
Bref le problème est contourné de cette façon au final :
/etc/systemd/system/xbmc.service avant :
Code : Tout sélectionner
[Unit]
Description = Starts instance of XBMC using xinit
After = remote-fs.target
[Service]
User = xbmc
Group = xbmc
Type = simple
ExecStart = /usr/bin/xinit /usr/bin/xbmc-standalone -l /run/lirc/lircd -- :0 -nolisten tcp
Restart = on-abort
[Install]
WantedBy = multi-user.target
/etc/systemd/system/xbmc.service après :
Code : Tout sélectionner
[Unit]
Description = Starts instance of XBMC using xinit
After = remote-fs.target
[Service]
User = xbmc
Group = xbmc
Type = simple
ExecStart = /usr/bin/xinit /usr/bin/xbmc-standalone -- :0 -nolisten tcp
ExecStartPost = /usr/bin/sleep 5
ExecStartPost = /usr/bin/setxkbmap -layout fr -variant latin9 -display :0
Restart = on-abort
[Install]
WantedBy = multi-user.target
J'en ai profité pour virer lircd étant donné que je ne l'utilise pas.
Puis ne pas oublier de recréer le lien symbolique si il pointe toujours vers /usr/lib/systemd/xbmc.service et de relancer le service :
J'en profite pour passer le sujet en résolu.