C1: shower — copy wheel to clean filename before pip install

Nix store paths embed a 32-char hash prefix, which pip rejects as
"Invalid wheel filename (invalid version)". Copy the wheel into TMPDIR
under its bare name first, then install from there.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Erich Blume 2026-05-11 17:17:02 -07:00
commit a156ea7687

View file

@ -82,10 +82,16 @@ let
${python}/bin/python -m venv "$TMPDIR/venv"
"$TMPDIR/venv/bin/pip" install --upgrade pip
# Nix store paths embed a 32-char hash prefix, which pip's wheel
# filename parser rejects ("Invalid wheel filename"). Copy to a
# clean filename in TMPDIR before installing.
cp ${showerWheel} "$TMPDIR/${showerWheel.name}"
"$TMPDIR/venv/bin/pip" install \
--no-cache-dir \
--index-url=https://pypi.ops.eblu.me/root/pypi/+simple/ \
${showerWheel} \
"$TMPDIR/${showerWheel.name}" \
gunicorn
runHook postBuild