diff --git a/kiosk.sh b/kiosk.sh new file mode 100644 index 0000000..0ee1d87 --- /dev/null +++ b/kiosk.sh @@ -0,0 +1,132 @@ +#!/bin/bash +set -e + +# ----------------------------- +# Konfiguration +# ----------------------------- +USER_NAME=$(whoami) +HOME_DIR="/home/$USER_NAME" +KIOSK_URL="https://aow.de" # <- HIER URL ÄNDERN + +echo "=========================================" +echo " Raspberry Pi / Linux Kiosk Installer" +echo "=========================================" + +# ----------------------------- +# Architektur prüfen +# ----------------------------- +ARCH=$(dpkg --print-architecture) + +echo "Erkannte Architektur: $ARCH" + +case "$ARCH" in + armhf|arm64) + CHROMIUM_PKG="chromium-browser" + ;; + amd64) + CHROMIUM_PKG="chromium" + ;; + *) + echo "Nicht unterstützte Architektur: $ARCH" + exit 1 + ;; +esac + +echo "Verwende Chromium Paket: $CHROMIUM_PKG" + +# ----------------------------- +# Pakete installieren +# ----------------------------- +echo "Installiere benötigte Pakete..." +sudo apt update +sudo apt install -y $CHROMIUM_PKG xdotool unclutter + +# Binary Pfad ermitteln +if command -v chromium-browser >/dev/null 2>&1; then + CHROMIUM_BIN="/usr/bin/chromium-browser" +elif command -v chromium >/dev/null 2>&1; then + CHROMIUM_BIN="/usr/bin/chromium" +else + echo "Chromium wurde nicht gefunden!" + exit 1 +fi + +echo "Chromium Binary: $CHROMIUM_BIN" + +# ----------------------------- +# kiosk.sh erstellen +# ----------------------------- +echo "Erstelle kiosk.sh..." + +cat < $HOME_DIR/kiosk.sh +#!/bin/bash + +export DISPLAY=:0 + +# Bildschirm nie ausschalten +xset s noblank +xset s off +xset -dpms + +# Mauszeiger ausblenden +unclutter -idle 0.5 -root & + +# Crash Status korrigieren +sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' $HOME_DIR/.config/chromium/Default/Preferences 2>/dev/null +sed -i 's/"exit_type":"Crashed"/"exit_type":"Normal"/' $HOME_DIR/.config/chromium/Default/Preferences 2>/dev/null + +# Chromium im Kiosk starten +$CHROMIUM_BIN \ + --noerrdialogs \ + --disable-infobars \ + --disable-session-crashed-bubble \ + --kiosk "$KIOSK_URL" & + +# Optional: Tab-Wechsel Loop +while true; do + xdotool keydown ctrl+Tab + xdotool keyup ctrl+Tab + sleep 10 +done +EOF + +chmod +x $HOME_DIR/kiosk.sh + +# ----------------------------- +# systemd Service erstellen +# ----------------------------- +echo "Erstelle systemd Service..." + +sudo tee /etc/systemd/system/kiosk.service > /dev/null <