[LCD4Linux] Paquet indisponible (résolu)
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
[LCD4Linux] Paquet indisponible (résolu)
Très content d'installer à la main mon nouveau serveur sous Archlinux je voudrais profiter de mon écran LCD (http://www.lcdmodkit.com/lcd/LKC-4002-B2.html) qui fonctionne avec LCD2USB.
Mais ...
Rien dans le wiki (FR)
Rien dans pacman
Rien dans AUR ....
Quelqu'un pourrait il me donner la procédure pour installer le démon s'il vous plaît
https://lcd4linux.bulix.org/wiki/Download
- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible
Ce PKGBUILD me semble un bon candidat de départ : https://github.com/aur-archive/lcd4linux-svn / http://pkgbuild.com/git/aur-mirror.git/ ... n/PKGBUILD
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
merci pour ta réponse si rapide mais une fois sorti de yaourt et pacman je t'avouerais que je ne suis pas très expert pour la compilation. J'ai tenté hier soir de compiler avec makepkg (en mode non root) mais je pense qu'il manque des dépendances.
J'ai détecté qu'il fallait les paquets :
- subversion
- python2
mais une fois
Code : Tout sélectionner
makepkg -i
- à le faire fonctionner (je pense que ça vient du fichier de configuration)
- à le mettre en service avec systemctl
Code : Tout sélectionner
systemctl enable lcd4linux
- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible
Mais en gros qu'est ce que tu as essayé de faire, comment l'as tu lancé ?
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
1- Et bien j'ai téléchargé l'archive dans le lien que tu as donné (https://github.com/aur-archive/lcd4linu ... master.zip) puis décompressé depuis mon pc d'administration sous gnome 3benjarobin a écrit :Mais en gros qu'est ce que tu as essayé de faire, comment l'as tu lancé ?
2- Le dossier décompressé je l'ai placé dans le home de 'toto' sur mon serveur (via sftp avec nautilus)
3- En console SSH sur mon serveur avec le compte 'toto', je me suis placé dans le dossier copié en point 2
4-
Code : Tout sélectionner
makepkg
5- là, plus d'insultes, donc j'utilise la commande
Code : Tout sélectionner
makepkg -i
6- ... la commande lcd4linux m'indique qu'elle ne peut pas démarrer (problème de configuration)
Pour le moment je n'ai plus accès à mon serveur car je suis en pleine opération de maintenance (merci scp) mais je reviendrais plus tard avec le message d'erreur exact renvoyé à l'exécution de lcd4linux.
(merci encore pour ton aide en tous cas

-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
Bon ... j'ai fais mon débutant, (à force de travailler en root ces derniers temps), c'est plutôt :security error: owner and/or group of '/etc/lcd4linux.conf' don't match
Error reading configuration. Exit!
pour tester sa configuration et le fonctionnement ....sudo lcd4linux
une fois la configuration faite avec le bon drivers (en l’occurrence LCD2USB) dans '/etc/lcd4linux.conf'.
Code : Tout sélectionner
# $Id$ U402MB-B1
# $URL$ https://lcd4linux.bulix.org/
Display U402MB-B1 {
Driver 'LCD2USB'
Size '40x2'
Contrast '192'
Brightness '44'
Icons '1'
}
Display XWindow_U402MB-B1 {
Driver 'X11'
Size '200x16'
Font '5x8'
Pixel '4+1'
Gap '-1x-1'
Border 10
Foreground 'ffffff'
Background '00000022'
Basecolor '0078ff'
}
Widget OS {
class 'Text'
expression '*** '.uname('sysname').' '.uname('release').' ***'
width 20
align 'M'
style 'bold'
speed 250
update tick
}
Widget ImageTest {
class 'Image'
file 'tux.png'
update 1000
visible 1
inverted 0
}
Layout TestLayer {
Row1 {
Col1 'OS'
}
Layer 2 {
X1.Y1 'ImageTest'
}
}
Display 'U402MB-B1'
#Display 'XWindow_U402MB-B1'
Layout 'TestLayer'
J'avais lu que sous Ubuntu ou Debian on devait créer un fichier '/etc/init.d/lcd4linux'
Comment faire la même chose dans '/etc/systemd/system' ?#! /bin/sh
#
# lcd4linux
#
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
DAEMON=/usr/local/bin/lcd4linux
NAME=lcd4linux
DESC=lcd4linux
test -f $DAEMON || exit 0
set -e
case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --oknodo --stop --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
echo "$NAME."
;;
reload)
start-stop-daemon --stop --signal 1 --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
;;
restart|force-reload)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
sleep 1
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
exit 1
;;
esac
exit 0
- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible
/etc/systemd/system/lcd4linux.service
Code : Tout sélectionner
[Unit]
Description=LCD4Linux
[Service]
Type=simple
ExecStart=/usr/bin/lcd4linux
[Install]
WantedBy=multi-user.target
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
Code : Tout sélectionner
# systemctl -t service -a --full | grep lcd4linux
lcd4linux.service loaded inactive dead LCD4Linux
Code : Tout sélectionner
# systemctl status lcd4linux
Amusant, je crois que l'initialisation de l'écran LCD n'a pas le temps de se faire. Est-il possible de lancer ce 'service' en dernier ou de relancer le service en cas d'échec ? (concrètement l'écran LCD Freeze)● lcd4linux.service - LCD4Linux
Loaded: loaded (/etc/systemd/system/lcd4linux.service; enabled; vendor preset: disabled)
Active: inactive (dead) since jeu. 2015-11-05 23:25:53 CET; 12min ago
Process: 506 ExecStart=/bin/lcd4linux (code=exited, status=0/SUCCESS)
Main PID: 506 (code=exited, status=0/SUCCESS)
nov. 05 23:25:53 machinetoto systemd[1]: Started LCD4Linux.
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
Code : Tout sélectionner
# nano /etc/systemd/system/lcd4linux.service
Code : Tout sélectionner
[Unit]
Description=LCD4linux
[Service]
ExecStart=/bin/lcd4linux
#ExecReload=/bin/kill -HUP $MAINPID
StartLimitInterval=0
KillMode=process
#Restart=always
[Install]
WantedBy=multi-user.target
Code : Tout sélectionner
# systemctl status lcd4linux
● lcd4linux.service - LCD4linux
Loaded: loaded (/etc/systemd/system/lcd4linux.service; enabled; vendor preset: disabled)
Active: active (running) since ven. 2015-11-06 01:46:01 CET; 10ms ago
Main PID: 1187 (lcd4linux)
CGroup: /system.slice/lcd4linux.service
├─ 313 /bin/lcd4linux
└─1187 /bin/lcd4linux
nov. 06 01:46:01 machinetoto systemd[1]: Stopped LCD4linux.
nov. 06 01:46:01 machinetoto systemd[1]: Started LCD4linux.
J'ai désactivé StartLimitInterval et 'start' ça fonctionne, merci benjarobin pour ton inspiration

Reste plus qu'à trouver la commande qui va bien pour 'stop' ou 'reload'
- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible
Pour le stop il n'y a rien à faire que je sache.
Sinon normalement
KillMode=process
est inutile à spécifier. Et finalement mettre StartLimitInterval=0
est un peu bourrin.Tu peux dire de le lancer après un autre service, par exemple
graphical.target
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible
J'avais oublié une option très importante
-F
Code : Tout sélectionner
[Unit]
Description=LCD4Linux
[Service]
Type=simple
ExecStart=/usr/bin/lcd4linux -F
ExecReload=/usr/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
Code : Tout sélectionner
[Unit]
Description=LCD4Linux
[Service]
Type=forking
ExecStart=/usr/bin/lcd4linux
PIDFile=/var/run/lcd4linux.pid
ExecReload=/usr/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible
Cette solution fonctionne parfaitement :benjarobin a écrit : J'avais oublié une option très importante-F
Code : Tout sélectionner
nano /etc/systemd/system/lcd4linux.service
Code : Tout sélectionner
[Unit] Description=LCD4Linux [Service] Type=simple ExecStart=/usr/bin/lcd4linux -F ExecReload=/usr/bin/kill -HUP $MAINPID [Install] WantedBy=multi-user.target
Code : Tout sélectionner
systemctl enable lcd4linux
Code : Tout sélectionner
systemctl start lcd4linux
Code : Tout sélectionner
# systemctl status lcd4linux
Merci benjarobin● lcd4linux.service - LCD4Linux
Loaded: loaded (/etc/systemd/system/lcd4linux.service; enabled; vendor preset: disabled)
Active: active (running) since ven. 2015-11-06 16:41:22 CET; 2min 27s ago
Main PID: 287 (lcd4linux)
CGroup: /system.slice/lcd4linux.service
└─287 /usr/bin/lcd4linux -F
nov. 06 16:41:32 machinetoto lcd4linux[287]: unable to compact bar characters
nov. 06 16:41:32 machinetoto lcd4linux[287]: nSegment=8 fSegment=2 CHARS=8 ICONS=3
nov. 06 16:41:32 machinetoto lcd4linux[287]: Segment[0].val1=0 val2=0
nov. 06 16:41:32 machinetoto lcd4linux[287]: Segment[1].val1=255 val2=255
nov. 06 16:41:32 machinetoto lcd4linux[287]: Segment[2].val1=0 val2=0
nov. 06 16:41:35 machinetoto lcd4linux[287]: unable to compact bar characters
nov. 06 16:41:35 machinetoto lcd4linux[287]: nSegment=8 fSegment=2 CHARS=8 ICONS=3
nov. 06 16:41:35 machinetoto lcd4linux[287]: Segment[0].val1=0 val2=0
nov. 06 16:41:35 machinetoto lcd4linux[287]: Segment[1].val1=255 val2=255
nov. 06 16:41:35 machinetoto lcd4linux[287]: Segment[2].val1=0 val2=0

- benjarobin
- Maître du Kyudo
- Messages : 17580
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [LCD4Linux] Paquet indisponible (résolu)
Pour un paquet le fichier de service se place ici /usr/lib/systemd/system/lcd4linux.service
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
-
- Hankyu
- Messages : 25
- Inscription : mer. 25 juin 2014, 16:59
Re: [LCD4Linux] Paquet indisponible (résolu)

Concrètement comme tu as pu le voir dans ce sujet la compilation se base sur ton lien et je n'ai pas rencontré de problème particulier (mis à part les dépendances). Le fichier lcd4linux.service fonctionne donc .... what else ?