Closed andrewn closed 1 year ago
andrewm, thank you. where do you run the script ? from the Raspberry Pi or on the CLI ?
@andrewn, it's all part of the process, IoT has many layers and we can't always test them all. :)
Have we tried installing the package via cargo (https://crates.io/crates/librespot) or from the Alpine testing library (https://pkgs.alpinelinux.org/packages?name=librespot&branch=edge&repo=&arch=&maintainer=)? I'm wondering why it was originally decided to build it from scratch. For the Alpine library I think we could add in the testing library just for that one package, rather than have to change the whole base image. According to the inline note in the file the same build process is used in balenaSound as in Alpine Testing anyway:
# Build process from: https://git.alpinelinux.org/aports/tree/testing/librespot/APKBUILD
docker run -it alpine sh
/ # apk add librespot
fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/main/aarch64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/community/aarch64/APKINDEX.tar.gz
ERROR: unable to select packages:
librespot (no such package):
required by: world[librespot]
/ # apk add librespot=0.4.2-r1 --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/
fetch http://dl-cdn.alpinelinux.org/alpine/edge/testing/aarch64/APKINDEX.tar.gz
(1/3) Installing alsa-lib (1.2.8-r0)
(2/3) Installing libgcc (12.2.1_git20220924-r4)
(3/3) Installing librespot (0.4.2-r1)
Executing librespot-0.4.2-r1.pre-install
Executing busybox-1.35.0-r29.trigger
OK: 12 MiB in 18 packages
I don't mind using the new images you have built if you think that's better? It is tried and tested after all, and could help make the build times quicker than the cargo option.
Had a quick look in to some of those options, it seems it is more difficult to pin to a specific version when using the testing library. Maybe it is better we lean towards the tried and tested method of the pre build images like it is in your PR we just merged?
Have we tried installing the package via cargo (https://crates.io/crates/librespot) or from the Alpine testing library (https://pkgs.alpinelinux.org/packages?name=librespot&branch=edge&repo=&arch=&maintainer=)?
It seems the Alpine testing library is built for the alsa-backend and not pulse-audio.
I did try installing from cargo and didn't get very far. This is probably my lack of Rust/Cargo knowledge though.
I have no idea why the
librespot
building isn't working (implemented in PR #610) causing issues #611 and #612.Option 1:
I think we should switch to the pre-built images of v0.4.2.
There's a list of architectures here.
I used this script and have been running on a Pi model 3 A+ for a few months.
Option 2:
Open a PR to revert commit 9f8c623c7c6778e19ce20a99e4b0029bb85e316b.
@maggie0002 it's up to you. Sorry about messing things up :-(
(fixes #611, #612)