36 lines
829 B
Bash
36 lines
829 B
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
|
|
cd "$ROOT_DIR"
|
||
|
|
|
||
|
|
# Choose a Python; prefer 3.10 to match the tested venv.
|
||
|
|
PYTHON_BIN="${PYTHON_BIN:-}"
|
||
|
|
if [[ -z "${PYTHON_BIN}" ]]; then
|
||
|
|
if command -v python3.10 >/dev/null 2>&1; then
|
||
|
|
PYTHON_BIN="python3.10"
|
||
|
|
else
|
||
|
|
PYTHON_BIN="python3"
|
||
|
|
fi
|
||
|
|
fi
|
||
|
|
|
||
|
|
VENV_DIR="$ROOT_DIR/.venv"
|
||
|
|
if [[ ! -d "$VENV_DIR" ]]; then
|
||
|
|
echo "Creating venv at $VENV_DIR using $PYTHON_BIN"
|
||
|
|
"$PYTHON_BIN" -m venv "$VENV_DIR"
|
||
|
|
fi
|
||
|
|
|
||
|
|
source "$VENV_DIR/bin/activate"
|
||
|
|
|
||
|
|
echo "Installing Python requirements..."
|
||
|
|
pip install --upgrade pip >/dev/null
|
||
|
|
pip install -r "$ROOT_DIR/requirements.txt"
|
||
|
|
|
||
|
|
if [[ ! -d "$ROOT_DIR/node_modules" ]]; then
|
||
|
|
echo "Installing npm dependencies..."
|
||
|
|
npm install
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "Starting Tauri dev (npm run tauri dev)..."
|
||
|
|
npm run tauri dev
|