Dateien nach "/" hochladen
This commit is contained in:
@@ -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 <<EOF > $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 <<EOF
|
||||
[Unit]
|
||||
Description=Chromium Kiosk
|
||||
After=graphical.target network-online.target
|
||||
Wants=graphical.target network-online.target
|
||||
|
||||
[Service]
|
||||
Environment=DISPLAY=:0
|
||||
Environment=XAUTHORITY=$HOME_DIR/.Xauthority
|
||||
ExecStart=$HOME_DIR/kiosk.sh
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
User=$USER_NAME
|
||||
Group=$USER_NAME
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical.target
|
||||
EOF
|
||||
|
||||
# -----------------------------
|
||||
# Service aktivieren
|
||||
# -----------------------------
|
||||
echo "Aktiviere Service..."
|
||||
|
||||
sudo systemctl daemon-reexec
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable kiosk.service
|
||||
|
||||
echo "========================================="
|
||||
echo "Installation abgeschlossen."
|
||||
echo "Bitte Neustarten:"
|
||||
echo "sudo reboot"
|
||||
echo "========================================="
|
||||
Reference in New Issue
Block a user