mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-06-15 09:15:29 -04:00
fix(macos): rebuild incomplete venv instead of failing on re-run (#3106)
start-macos.sh guarded venv creation with `[ ! -d venv ]`, which trusts any existing venv/ directory even when a prior run was interrupted before pip was bootstrapped into it. Re-runs then failed with "No module named pip" and never self-healed, contradicting the script's "safe to re-run" promise. Validate that the venv has a working pip before reusing it, and rebuild it otherwise. Fixes #3105
This commit is contained in:
committed by
GitHub
parent
f7a5047228
commit
b5a7d5ccda
+3
-2
@@ -130,11 +130,12 @@ fi
|
||||
# 3. Python environment + dependencies (kept inside the repo, in venv/).
|
||||
# Named `venv` to match the manual steps and build-macos-app.sh, so the
|
||||
# clickable .app reuses this same environment.
|
||||
if [ ! -d venv ]; then
|
||||
VENV_PY="./venv/bin/python3"
|
||||
if [ ! -x "$VENV_PY" ] || ! "$VENV_PY" -m pip --version >/dev/null 2>&1; then
|
||||
[ -d venv ] && { echo "▶ Existing venv is incomplete (no working pip) — rebuilding…"; rm -rf venv; }
|
||||
echo "▶ Creating Python environment…"
|
||||
"$PY" -m venv venv
|
||||
fi
|
||||
VENV_PY="./venv/bin/python3"
|
||||
REQ_HASH="$(md5 -q requirements.txt 2>/dev/null || md5sum requirements.txt | cut -d' ' -f1)"
|
||||
REQ_HASH_FILE="venv/.requirements_hash"
|
||||
if [ ! -f "$REQ_HASH_FILE" ] || [ "$REQ_HASH" != "$(cat "$REQ_HASH_FILE" 2>/dev/null)" ]; then
|
||||
|
||||
Reference in New Issue
Block a user