The shiv zipapp's shebang points at the system python3 (GIL-enabled), which cannot load the cp314t extensions built under the free-threaded 3.14 project venv, so ./dist/eris failed at runtime. pyinstaller bundles its own 3.14t interpreter and works, so the Dockerfiles now run the pyinstaller binary directly instead of via a python wrapper, and the debian image no longer needs to install uv/python. Remove build-shiv and the shiv dev dependency; build comments use podman.
32 lines
585 B
Bash
Executable file
32 lines
585 B
Bash
Executable file
#!/bin/bash
|
|
|
|
|
|
set -e
|
|
set -x
|
|
|
|
|
|
cd "$(dirname "$0")/.."
|
|
mkdir -p dist
|
|
|
|
COMMON_ARGS=(
|
|
--onefile
|
|
--add-data "$PWD/eris/tools.toml:eris"
|
|
--add-data "$PWD/eris/__main__.py:eris"
|
|
--add-data "$PWD/eris/tools.py:eris"
|
|
--hidden-import lzma
|
|
--hidden-import bz2
|
|
--collect-data lscolors
|
|
--collect-data fill3
|
|
--collect-data termstr
|
|
--distpath dist
|
|
--specpath build/pyinstaller
|
|
--workpath build/pyinstaller
|
|
--noconfirm
|
|
)
|
|
|
|
uv run pyinstaller "${COMMON_ARGS[@]}" --name eris eris/__main__.py
|
|
|
|
rm -rf build/pyinstaller
|
|
|
|
echo "Built:"
|
|
ls -lh dist/eris
|