Private
Public Access
1
0
Files
MineSeeker/gtk-client/run.sh

32 lines
1.5 KiB
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# Convenience launcher for the MineSeeker GTK4 desktop client.
# Creates the venv on first run, then launches main.py.
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
VENV="$SCRIPT_DIR/.venv"
PYTHON="$VENV/bin/python"
# ── Create venv if missing ──────────────────────────────────────────────────
if [ ! -f "$PYTHON" ]; then
echo "[run.sh] Creating venv with --system-site-packages…"
python3 -m venv --system-site-packages "$VENV"
fi
# ── Install / update pure-Python deps ──────────────────────────────────────
echo "[run.sh] Installing dependencies…"
"$VENV/bin/pip" install --quiet requests sseclient-py python-dotenv
# ── Check .env ──────────────────────────────────────────────────────────────
if [ ! -f "$SCRIPT_DIR/.env" ]; then
echo ""
echo "ERROR: $SCRIPT_DIR/.env not found."
echo "Copy .env.example to .env and set MINESEEKER_BASE_URL."
exit 1
fi
# ── Launch ──────────────────────────────────────────────────────────────────
echo "[run.sh] Starting MineSeeker…"
exec "$PYTHON" "$SCRIPT_DIR/main.py" "$@"