Player-UI (playerserver): - Lokale Kiosk-Seite unter /player mit orientierungsgerechtem Splash-Bild - Splash-PNGs (Portrait/Landscape) eingebettet via go:embed - Unteres-Drittel-Overlay mit erweiterbaren Sysinfo-Items (Hostname, Uptime) - /api/now-playing und /api/sysinfo JSON-Endpunkte - iframe-Overlay fuer spaetere Inhalts-URL Ansible-Rolle signage_display (neu): - Pakete: xserver-xorg-core, xinit, openbox, chromium, unclutter - Kiosk-Skript mit openbox als WM (noetig fuer korrektes --kiosk-Vollbild) - systemd-Unit mit Conflicts=getty@tty1 (behebt TTY-Blockierung beim Start) - Chromium Managed Policy: TranslateEnabled=false, Notifications/Geolocation blockiert - --lang=de Flag gegen Sprachauswahl-Dialog Ansible-Rolle signage_player (erweitert): - Legt signage_user an falls nicht vorhanden - PlayerListenAddr und PlayerContentURL in Konfiguration - journald volatile Storage (SD-Karten-Schonung) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 lines
631 B
Django/Jinja
26 lines
631 B
Django/Jinja
#!/bin/bash
|
||
# Morz Infoboard Kiosk – startet Chromium im Vollbild
|
||
# Wird von xinit aufgerufen, DISPLAY ist bereits gesetzt.
|
||
|
||
# Bildschirmschoner und Energiesparen deaktivieren
|
||
xset s off
|
||
xset s noblank
|
||
xset -dpms
|
||
|
||
# Mauscursor ausblenden
|
||
unclutter -idle 1 -root &
|
||
|
||
# Minimaler Window-Manager – nötig damit --kiosk echtes Vollbild bekommt
|
||
openbox --sm-disable &
|
||
|
||
exec chromium \
|
||
--noerrdialogs \
|
||
--disable-infobars \
|
||
--kiosk \
|
||
--no-first-run \
|
||
--disable-translate \
|
||
--disable-session-crashed-bubble \
|
||
--disable-features=Translate \
|
||
--check-for-update-interval=31536000 \
|
||
--lang=de \
|
||
"{{ morz_player_url }}"
|