Build squeezelite on the device on a 64-bit or trixie userland

The shipped squeezelite is a 32-bit ARM binary linked against libFLAC.so.12 (bookworm
on armhf). Elsewhere the role now builds upstream squeezelite at a pinned commit with
the same options as the old ARM build, installing the -dev packages instead of
soname-specific runtime libraries. `ansible_architecture` is the kernel's, so the
choice reads the userland's architecture from dpkg; override with
`pi_squeezelite_custom_build_from_source: true|false`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-02 23:14:18 +02:00
parent f6a169afaa
commit a6d4180b2b
4 changed files with 100 additions and 7 deletions

View File

@@ -3,3 +3,9 @@
Like `pi_squeezelite`, but uninstalls the distro package and deploys a
custom-compiled `squeezelite` build instead as a systemd service. See
`custom build/readme_build.md` for how that build is produced.
The shipped 32-bit binary only runs on an armhf userland with Debian 12 (bookworm) or
older. On a 64-bit userland or Debian 13 (trixie) the role builds the same upstream commit
on the device and installs it to `/opt/squeezelite` instead. That is picked
automatically from `dpkg --print-architecture` and the distribution version; override with
`pi_squeezelite_custom_build_from_source: true|false`.