27 lines
560 B
Bash
Executable File
27 lines
560 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
cd "$ROOT"
|
|
|
|
TK_PY="$("$ROOT/scripts/find_tk_python.sh")"
|
|
|
|
needs_rebuild=0
|
|
if [[ ! -x ".venv/bin/python" ]]; then
|
|
needs_rebuild=1
|
|
elif ! ".venv/bin/python" - <<'PY' >/dev/null 2>&1
|
|
import tkinter
|
|
PY
|
|
then
|
|
needs_rebuild=1
|
|
fi
|
|
|
|
if [[ "$needs_rebuild" == "1" ]]; then
|
|
rm -rf .venv
|
|
"$TK_PY" -m venv .venv
|
|
fi
|
|
|
|
".venv/bin/python" -m pip install --upgrade pip >/dev/null
|
|
".venv/bin/python" -m pip install -r requirements.txt >/dev/null
|
|
exec ".venv/bin/python" run.py
|