fix(install): add python3-dev for armv7l cffi build#3100
Conversation
On 32-bit ARM (armv7l) there is no python-build-standalone binary, so
uv falls back to the system interpreter and compiles cffi from its sdist
(no armv7 wheel exists). That build needs the CPython headers (Python.h),
provided by python3-dev, which was missing from the apt install list.
This left 32-bit Raspberry Pi OS installs failing with:
fatal error: Python.h: No such file or directory
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Validated on native armv7 (32-bit) hardwareRan the exact Before (no After (with Note: the Pi 5's default |



Issues Fixed
32-bit Raspberry Pi OS (armv7l) installs of v2026.6.x abort while building
cffiwith:Reported on the forum: https://forums.screenly.io/t/anthias-v2026-6-3-installation-stops-halfway-on-pi3-b/6716
Description
bin/install.shusesuv, which normally manages its own Python interpreter (headers included). Butpython-build-standalonehas no armv7l build, so on 32-bit Pi OS uv falls back to the systempython3. There is also no prebuiltcffiwheel for armv7, so uv compiles it from sdist — which needs the CPython development headers (Python.h). The apt list already hadlibffi-devandlibssl-dev(cffi's C-lib deps) but not the Python headers.Adds
python3-devto the apt install list. 64-bit/arm64/x86 installs use uv's managed Python and prebuilt wheels, so they never compile cffi — installing the package there is harmless and keeps the path uniform.Checklist
🤖 Generated with Claude Code