diff --git a/VHard/affichage_score_kiosque.md b/VHard/vulturesrv/affichage_score_kiosque.md similarity index 66% rename from VHard/affichage_score_kiosque.md rename to VHard/vulturesrv/affichage_score_kiosque.md index 68260ca4..2dd9a9aa 100644 --- a/VHard/affichage_score_kiosque.md +++ b/VHard/vulturesrv/affichage_score_kiosque.md @@ -20,39 +20,11 @@ Coller le contenu suivant : ```ini [Service] ExecStart= -ExecStart=-/sbin/agetty --autologin VOTRE_USER --noclear %I $TERM +ExecStart=-/sbin/agetty --autologin vulture --noclear %I $TERM ``` -## 3. Script de lancement et Watchdog - -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`) +## 3. Configuration Zsh (`~/.zlogin`) 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 # Lancement du script de monitoring - exec ~/kiosk-waiter.sh + exec ~/Vulture/VHard/vulturesrv/kiosk-waiter.sh fi ``` -## 5. Debug et Commandes utiles +## 4. Debug et Commandes utiles * **Relancer le navigateur à distance (SSH) :** `pkill -u $USER cage` (Le script de boucle le relancera instantanément). diff --git a/VHard/vulturesrv/kiosk-waiter.sh b/VHard/vulturesrv/kiosk-waiter.sh new file mode 100644 index 00000000..93d69004 --- /dev/null +++ b/VHard/vulturesrv/kiosk-waiter.sh @@ -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 \ No newline at end of file