#!/bin/sh
# Киоск: композитор cage, внутри него cog на весь экран.
set -eu

[ -r /etc/default/dashdash ] && . /etc/default/dashdash

URL="http://127.0.0.1:${SCREEN_PORT:-3000}/"

# Курсор мыши.
XCURSOR_THEME="${XCURSOR_THEME:-dashdash-none}"
export XCURSOR_THEME

# Разрешить композитору работать без единого устройства ввода.
WLR_LIBINPUT_NO_DEVICES="${WLR_LIBINPUT_NO_DEVICES:-1}"
export WLR_LIBINPUT_NO_DEVICES

# Каталог, в котором композитор создаёт сокет Wayland.
if [ -z "${XDG_RUNTIME_DIR:-}" ]; then
	XDG_RUNTIME_DIR=/run/dashdash-kiosk
	export XDG_RUNTIME_DIR
	mkdir -p "$XDG_RUNTIME_DIR"
	chmod 700 "$XDG_RUNTIME_DIR"
fi

# Сессионная шина D-Bus: без неё браузер работает, но сыпет в журнал ошибки подключения к шине на каждый запрос.
if command -v dbus-run-session >/dev/null 2>&1; then
	set -- dbus-run-session --
else
	set --
fi

# Фон страницы у браузера.
COG_BG=""
if cog --help 2>&1 | grep -q -- "--bg-color"; then
	COG_BG="--bg-color=${KIOSK_BG_COLOR:-#0f1420}"
fi

# shellcheck disable=SC2086 # COG_BG и COG_EXTRA_FLAGS — наборы аргументов
exec "$@" cage -- cog --platform=wl $COG_BG ${COG_EXTRA_FLAGS-} "$URL"
