script de lancement du kiosque intégré au dépot

This commit is contained in:
2026-02-03 13:14:21 +01:00
parent 013d629625
commit 36d07f313b
2 changed files with 40 additions and 32 deletions

View File

@@ -20,39 +20,11 @@ Coller le contenu suivant :
```ini ```ini
[Service] [Service]
ExecStart= ExecStart=
ExecStart=-/sbin/agetty --autologin VOTRE_USER --noclear %I $TERM ExecStart=-/sbin/agetty --autologin vulture --noclear %I $TERM
``` ```
## 3. Script de lancement et Watchdog ## 3. Configuration Zsh (`~/.zlogin`)
Créer un script nommé `kiosk-waiter.sh` dans votre dossier personnel pour relancer Chrome s'il crash :
```bash
#!/bin/bash
# kiosk-waiter.sh
URL="https://votre-url-quizz.com"
while true; do
cage -- google-chrome-stable \
--kiosk \
--no-first-run \
--password-store=basic \
--ozone-platform=wayland \
--autoplay-policy=no-user-gesture-required \
--disable-component-update \
"$URL"
echo "Chrome s'est arrêté. Relancement dans 2 secondes..."
sleep 2
done
```
*N'oubliez pas : `chmod +x ~/kiosk-waiter.sh*`
## 4. Configuration Zsh (`~/.zlogin`)
Ajouter ces lignes à la fin de votre fichier `~/.zlogin` pour déclencher l'affichage uniquement sur le port HDMI physique (TTY1) : Ajouter ces lignes à la fin de votre fichier `~/.zlogin` pour déclencher l'affichage uniquement sur le port HDMI physique (TTY1) :
@@ -65,12 +37,12 @@ if [[ -z "$DISPLAY" && "$XDG_VTNR" -eq 1 ]]; then
export XDG_SESSION_TYPE=wayland export XDG_SESSION_TYPE=wayland
# Lancement du script de monitoring # Lancement du script de monitoring
exec ~/kiosk-waiter.sh exec ~/Vulture/VHard/vulturesrv/kiosk-waiter.sh
fi fi
``` ```
## 5. Debug et Commandes utiles ## 4. Debug et Commandes utiles
* **Relancer le navigateur à distance (SSH) :** * **Relancer le navigateur à distance (SSH) :**
`pkill -u $USER cage` (Le script de boucle le relancera instantanément). `pkill -u $USER cage` (Le script de boucle le relancera instantanément).

View File

@@ -0,0 +1,36 @@
#!/bin/bash
# kiosk-waiter.sh
URL="http://localhost:5173/" # URL locale de vapp
SERVICE_NAME="vulture-stack.service"
echo "Attente du démarrage de la stack Vulture..."
# 1. Attente que le service Systemd soit considéré comme actif
while [[ $(systemctl --user is-active $SERVICE_NAME) != "active" ]]; do
sleep 1
done
# 2. Attente que le serveur HTTP réponde (Healthy)
# On boucle tant que le code de retour HTTP n'est pas 200
until $(curl --output /dev/null --silent --head --fail $URL); do
echo "Le quizz n'est pas encore prêt... attente (2s)"
sleep 2
done
echo "Stack Vulture détectée et saine. Lancement du kiosque."
# 3. Boucle de lancement de Chrome
while true; do
cage -- google-chrome-stable \
--kiosk \
--no-first-run \
--password-store=basic \
--ozone-platform=wayland \
--autoplay-policy=no-user-gesture-required \
--disable-component-update \
"$URL"
echo "Chrome s'est arrêté. Relancement dans 2 secondes..."
sleep 2
done