Skip to main content

Installation Complète sur DietPi

Raspberry Pi Zero 2 W – Affichage HDMI en Mode Kiosk

Documentation officielle du setup Immich Kiosk


🧩 Introduction

Ce guide détaille l’installation complète d’un écran Immich Kiosk sur un Raspberry Pi Zero 2 W avec DietPi, en utilisant :

  • Immich Kiosk (backend)

  • Chromium en mode Kiosk (frontend)

  • Démarrage automatique plein écran

  • Résolution HDMI 1080p

  • Masquage du curseur


🧩 1. Préparation de l’image DietPi

Télécharger l’image pour Raspberry Pi Zero 2 W :

👉 DietPi – Raspberry Pi ARMv8 / ARM64
https://dietpi.com/

Flasher la carte SD avec Balena Etcher ou Raspberry PI Imager.


🧩 2. Configuration avant premier boot

Les fichiers suivants sont à modifier sur la partition /boot/.


✔ dietpi.txt
AUTO_SETUP_LOCALE=fr_FR.UTF-8
AUTO_SETUP_KEYBOARD_LAYOUT=fr
AUTO_SETUP_TIMEZONE=Europe/Paris

AUTO_SETUP_NET_ETHERNET_ENABLED=0
AUTO_SETUP_NET_WIFI_ENABLED=1
AUTO_SETUP_NET_WIFI_COUNTRY_CODE=FR

AUTO_SETUP_NET_USESTATIC=0
AUTO_SETUP_BOOT_WAIT_FOR_NETWORK=1

✔ dietpi-wifi.txt (entrée 0)
aWIFI_SSID[0]='Thymon 2,4Ghz'
aWIFI_KEY[0]='ReseauThymon13'
aWIFI_KEYMGR[0]='WPA-PSK'

🧩 3. Premier démarrage du Raspberry Pi

Le système configure automatiquement :

  • langue

  • clavier

  • WiFi

  • SSH

Ensuite, on se connecte via SSH pour poursuivre l’installation.


🧩 4. Installation de Chromium en mode Kiosk

Installer Chromium :

dietpi-software install 113

Configurer le mode autostart :

dietpi-autostart

Choisir :
11 : Chromium Kiosk Mode

Définir l’URL à afficher :
http://127.0.0.1:300

 


🧩 5. Configuration de l’affichage HDMI (1080p)

Modifier la résolution HDMI dans :

sudo nano /boot/config.txt

Ajouter :

hdmi_force_hotplug=1
hdmi_group=1
hdmi_mode=16
disable_overscan=1

Configurer Chromium pour 1080p :

sudo nano /boot/dietpi.txt

Définir :

SOFTWARE_CHROMIUM_RES_X=1920
SOFTWARE_CHROMIUM_RES_Y=1080


🧩 6. Masquer le curseur (unclutter)


sudo apt install unclutter

🧩 7. Ajustement du script Chromium Autostart

Éditer :

sudo nano /var/lib/dietpi/dietpi-software/installed/chromium-autostart.sh

Remplacer par :

#!/bin/dash

RES_X=$(sed -n '/^[[:blank:]]*SOFTWARE_CHROMIUM_RES_X=/{s/^[^=]*=//p;q}' /boot/dietpi.txt)
RES_Y=$(sed -n '/^[[:blank:]]*SOFTWARE_CHROMIUM_RES_Y=/{s/^[^=]*=//p;q}' /boot/dietpi.txt)

cat > /tmp/xinitrc.tmp << 'EOF'
#!/bin/dash
unclutter -idle 0 -root &
exec "$@"
EOF
chmod +x /tmp/xinitrc.tmp

CHROMIUM_OPTS="--kiosk --no-memcheck --window-size=${RES_X:-1280},${RES_Y:-720} --window-position=0,0"

URL=$(sed -n '/^[[:blank:]]*SOFTWARE_CHROMIUM_AUTOSTART_URL=/{s/^[^=]*=//p;q}' /boot/dietpi.txt)

FP_CHROMIUM=$(command -v chromium-browser)
[ "$FP_CHROMIUM" ] || FP_CHROMIUM=$(command -v chromium)

STARTX='xinit'
[ "$USER" = 'root' ] || STARTX='startx'

exec "$STARTX" /tmp/xinitrc.tmp "$FP_CHROMIUM" $CHROMIUM_OPTS "${URL:-https://dietpi.com/}"



🧩 8. Installation d’Immich Kiosk (backend)

Télécharger le binaire ARM64 :

wget https://github.com/damongolding/immich-kiosk/releases/latest/download/immich-kiosk_Linux_arm64.tar.gz

Extraire :

tar -xzf immich-kiosk_Linux_arm64.tar.gz

Créer le dossier config :

mkdir -p /root/config 
wget -O /root/config/config.yaml https://raw.githubusercontent.com/damongolding/immich-kiosk/refs/heads/main/config.example.yaml

Modifier le fichier config.yaml :

nano /root/config/config.yaml

Exemple :

immich_url: "https://MON_IP_IMMICH:2283" 
immich_api_key: "CLE_API_IMMICH"

🧩 9. Création du service systemd Immich Kiosk

Créer le fichier :

sudo nano /etc/systemd/system/immich-kiosk.service

Ajouter :

[Unit]
Description=Immich Kiosk
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=always
RestartSec=2
User=root
WorkingDirectory=/root
ExecStart=/root/immich-kiosk --config /root/config/config.yaml
Environment=HOME=/root

[Install]
WantedBy=multi-user.target

Activer le service :

sudo systemctl daemon-reload 
sudo systemctl enable immich-kiosk 
sudo systemctl start immich-kiosk

🧩 10. Vérifications finales

Immich Kiosk tourne :

systemctl status immich-kiosk

Port 3000 ouvert :

ss -tulnp | grep 3000

Test local :

curl http://127.0.0.1:3000

Reboot final :

reboot

Après redémarrage, l’écran HDMI affichera Immich Kiosk plein écran 1080p, sans curseur.

 


🎉 Fin du guide

Tu disposes maintenant d’un setup stable, automatique et optimisé pour diffuser les photos Immich sur un écran dédié.