#!/usr/bin/env bash set -euo pipefail VENV_DIR="${1:-.venv}" if ! command -v python3 >/dev/null 2>&1; then echo "[setup] python3 not found. Installing..." sudo apt-get update sudo apt-get install -y python3 python3-venv python3-pip fi if ! dpkg -s python3-venv >/dev/null 2>&1; then echo "[setup] Installing python3-venv..." sudo apt-get update sudo apt-get install -y python3-venv python3-pip fi echo "[setup] Creating virtual environment: ${VENV_DIR}" python3 -m venv "${VENV_DIR}" PYTHON_BIN="${VENV_DIR}/bin/python" echo "[setup] Upgrading pip" "${PYTHON_BIN}" -m pip install --upgrade pip echo "[setup] Installing required Python packages" "${PYTHON_BIN}" -m pip install pytest echo "[setup] Done" echo "Activate: source ${VENV_DIR}/bin/activate" echo "Run tests: pytest -q"