38 lines
1.0 KiB
Bash
38 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
IDLE_TIME=${IDLE_TIME:-300}
|
|
KIOSK_HOST="192.168.40.126"
|
|
KIOSK_URL="http://instrukcje.local"
|
|
WAITING_PAGE="file:///home/kiosk/waiting.html"
|
|
|
|
CHROMIUM_OPTS=(
|
|
--ozone-platform=wayland
|
|
--no-first-run
|
|
--noerrdialogs
|
|
--disable-infobars
|
|
--disable-gpu-suspend
|
|
--force-device-scale-factor=1
|
|
--user-data-dir=/home/kiosk/.cache/chromium
|
|
)
|
|
|
|
# wlopm działa z sway (obsługuje wlr-output-power-management-v1)
|
|
# swayidle bez -w: ignoruje idle inhibitory (np. z Chromium)
|
|
swayidle \
|
|
timeout "$IDLE_TIME" "wlopm --off '*'" \
|
|
resume "wlopm --on '*'" &
|
|
|
|
# Uruchom Chromium od razu z lokalną stroną oczekiwania
|
|
chromium --kiosk --app="$WAITING_PAGE" "${CHROMIUM_OPTS[@]}" &
|
|
CHROMIUM_PID=$!
|
|
|
|
# Czekaj na dostępność serwera kiosku
|
|
while ! ping -c 1 -W 1 "$KIOSK_HOST" > /dev/null 2>&1; do
|
|
sleep 1
|
|
done
|
|
|
|
# Sieć dostępna — zamknij Chromium i uruchom właściwy kiosk
|
|
kill "$CHROMIUM_PID"
|
|
wait "$CHROMIUM_PID" 2>/dev/null
|
|
|
|
exec chromium --kiosk --app="$KIOSK_URL" "${CHROMIUM_OPTS[@]}"
|