refactor: make libffi-dev conditional for armhf (32-bit ARM) only

Only install libffi-dev on armhf (32-bit ARM) systems where cffi needs
to compile from source. x86_64 and arm64 have pre-built cffi wheels
available, so they don't need the development headers.

Changes:
- install.sh: Detect architecture and conditionally add libffi-dev for armhf
- test_installer.sh: Show libffi-dev in output only for armhf systems
- test.yml: Update ARM CI summary to reflect conditional dependency

This reduces unnecessary dependencies on x86_64 and arm64 systems while
maintaining full compatibility with 32-bit Raspberry Pi devices.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
torlando-tech 2025-10-29 11:02:51 -04:00
commit 9aeee07e69
3 changed files with 31 additions and 5 deletions

View file

@ -218,7 +218,12 @@ jobs:
echo "**Platform:** ${{ matrix.platform }}" >> $GITHUB_STEP_SUMMARY
echo "**Base Image:** ${{ matrix.os-image }}" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "✓ System packages: python3-gi, python3-dbus, python3-cairo, bluez" >> $GITHUB_STEP_SUMMARY
if [[ "${{ matrix.platform }}" == "linux/arm/v7" ]]; then
echo "✓ System packages: python3-gi, python3-dbus, python3-cairo, bluez, libffi-dev" >> $GITHUB_STEP_SUMMARY
echo "✓ libffi-dev included for 32-bit ARM cffi compilation" >> $GITHUB_STEP_SUMMARY
else
echo "✓ System packages: python3-gi, python3-dbus, python3-cairo, bluez" >> $GITHUB_STEP_SUMMARY
fi
echo "✓ Pip packages: bleak==1.1.1, bluezero" >> $GITHUB_STEP_SUMMARY
echo "✓ BLE interface files copied" >> $GITHUB_STEP_SUMMARY
echo "✓ BlueZ experimental mode configured" >> $GITHUB_STEP_SUMMARY