#!/bin/sh set -eu cd "$(dirname "$0")" . ./xbox-paths.sh XBOX_DIR=$(xbox_host_directory) xbox_prepare_directories "$XBOX_DIR" if [ -f ./data/queue.sqlite3 ] && [ ! -f "$XBOX_DIR/queue.sqlite3" ]; then echo 'Wykryto poprzednia kolejke w ./data/queue.sqlite3.' >&2 echo 'Zanim uruchomisz nowa wersje, wykonaj: ./migrate-to-xbox.sh' >&2 exit 1 fi if [ -f .env ]; then echo '.env juz istnieje; nie nadpisuje hasel.' else umask 077 PASSWORD=$(head -c 48 /dev/urandom | od -An -tx1 | tr -d ' \n') SECRET=$(head -c 48 /dev/urandom | od -An -tx1 | tr -d ' \n') sed -e "s/^WEB_PASSWORD=.*/WEB_PASSWORD=$PASSWORD/" -e "s/^ARIA2_SECRET=.*/ARIA2_SECRET=$SECRET/" .env.example > .env # Persist a customized host directory so future `docker compose up` uses it. if [ "$XBOX_DIR" != /xbox ]; then grep -v '^XBOX_HOST_DIR=' .env > .env.tmp printf 'XBOX_HOST_DIR=%s\n' "$XBOX_DIR" >> .env.tmp mv .env.tmp .env fi chmod 600 .env echo 'Utworzono .env (login admin, losowe haslo).' echo "Haslo panelu: $PASSWORD" fi echo "Dane hosta: $XBOX_DIR (pobrane: $XBOX_DIR/downloads, robocze: $XBOX_DIR/work)" if command -v docker >/dev/null 2>&1 && [ "${XBOX_SKIP_DOCKER:-0}" != 1 ]; then docker compose up -d --build echo "Panel: http://ADRES_IP_WIRTUALKI:${WEB_PORT:-8088}" else echo 'Uruchom Docker Engine z Compose i wykonaj: docker compose up -d --build' fi