#!/usr/bin/env bash set -euo pipefail container_name=${PRODUCT_VAMP_ZERO_CONTAINER:-product-vamp-zero} image_tag=${PRODUCT_VAMP_ZERO_IMAGE:-product-vamp-zero:dev} config_dir=${PRODUCT_VAMP_CONFIG_DIR:-/etc/product-vamp} state_dir=${PRODUCT_VAMP_STATE_DIR:-/var/lib/product-vamp} run_dir=${PRODUCT_VAMP_RUN_DIR:-/run/product-vamp} display_tty=${PRODUCT_VAMP_DISPLAY_TTY:-/dev/tty1} install -d -m 0755 "$run_dir" if command -v chvt >/dev/null 2>&1 && [ -c "$display_tty" ]; then tty_number=${display_tty#/dev/tty} case "$tty_number" in ''|*[!0-9]*) ;; *) chvt "$tty_number" || true ;; esac fi if [ -c "$display_tty" ]; then if command -v setterm >/dev/null 2>&1; then setterm --cursor off > "$display_tty" || printf '\033[?25l' > "$display_tty" || true else printf '\033[?25l' > "$display_tty" || true fi fi docker rm -f "$container_name" >/dev/null 2>&1 || true echo "Starting Product Vamp Zero container '$container_name' from '$image_tag' on '$display_tty'" exec docker run --rm --name "$container_name" --network host --privileged \ --env PRODUCT_VAMP_DISPLAY_TTY="$display_tty" \ -v "$config_dir:/etc/product-vamp:ro" \ -v "$state_dir:/var/lib/product-vamp" \ -v "$run_dir:/run/product-vamp" \ "$image_tag" \ sh -lc 'display_tty=${PRODUCT_VAMP_DISPLAY_TTY:-/dev/tty1}; exec setsid --wait --ctty /usr/bin/vamp-zero --config /etc/product-vamp/vamp.json < "$display_tty"'