@@ -73,13 +73,13 @@ jobs:
7373 manylinux : manylinux_2_28
7474
7575 # Linux aarch64 — AWS Graviton, Raspberry Pi, etc.
76- # Cross-compiled on the x86_64 runner using rust-cross container .
77- # rust-cross/manylinux_2_28-cross has no Python, so PYO3_CROSS_PYTHON_VERSION
78- # tells PyO3 which version to target without needing a Python binary .
76+ # Uses the official pypa manylinux_2_28 aarch64 image via QEMU emulation .
77+ # The rust-cross container has no Python, so we use the pypa image which has
78+ # Python 3.11–3.13 preinstalled. Slower than cross-compilation but correct .
7979 - os : ubuntu-latest
8080 target : aarch64
8181 manylinux : manylinux_2_28
82- pyo3_cross_python_version : " 3.11 "
82+ container : quay.io/pypa/manylinux_2_28_aarch64
8383
8484 # macOS Apple Silicon (M1/M2/M3)
8585 # Pin to Python 3.13: macos-latest ships Python 3.14 which PyO3 0.23.x
@@ -135,8 +135,6 @@ jobs:
135135
136136 - name : Build wheels
137137 uses : PyO3/maturin-action@32307a466a178317e8c2ae343b38e73896a047be # v1.47.0
138- env :
139- PYO3_CROSS_PYTHON_VERSION : ${{ matrix.pyo3_cross_python_version }}
140138 with :
141139 command : build
142140 args : >-
@@ -145,6 +143,7 @@ jobs:
145143 --manifest-path coordinode-embedded/Cargo.toml
146144 --out dist
147145 manylinux : ${{ matrix.manylinux || 'auto' }}
146+ container : ${{ matrix.container || '' }}
148147 target : ${{ matrix.target }}
149148 before-script-linux : |
150149 if command -v dnf >/dev/null 2>&1; then
0 commit comments