The on-device and Raspberry Pi installers hardcoded the release version, which had to be bumped on every release. Default VERSION to empty and resolve the newest tag by following GitHub's documented stable redirect (https://github.com/<repo>/releases/latest -> .../releases/tag/vX.Y.Z), reading the effective URL. This avoids the GitHub API rate limit and needs no jq. An explicit version (positional arg / VERSION= / --version) still pins a release. If the lookup fails (offline, rate-limited, or a curl without -w support), each script falls back to a pinned FALLBACK_VERSION so installs still work. The Pi self_update path runs after resolution, so it fetches the resolved tag's installer. Docs updated to state the default installs the latest release; the pinned-version examples remain as illustrations. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2.2 KiB
Raspberry Pi installers
Full documentation — installation, configuration, service management, updates,
and removal for both soundtouch-service and soundtouch-player — lives in the
project docs:
docs/content/docs/guides/RASPBERRY-PI.md
Quick start
soundtouch-service (cloud-replacement relay):
curl -fsSL -o install.sh \
https://raw.githubusercontent.com/gesellix/Bose-SoundTouch/main/scripts/raspberry-pi/install.sh
sudo bash install.sh
soundtouch-player (browser control panel):
curl -fsSL -o install-player.sh \
https://raw.githubusercontent.com/gesellix/Bose-SoundTouch/main/scripts/raspberry-pi/install-player.sh
sudo bash install-player.sh
Both install the latest release by default (resolved from GitHub's
releases/latest redirect). Pass a version tag as the first argument to pin a
specific release:
sudo bash install.sh v0.111.3
sudo bash install-player.sh v0.111.3
install-web.shis the old name forinstall-player.shand still works as a deprecated alias. If you installedsoundtouch-webpreviously, remove it withuninstall-web.sh(see below) and switch toinstall-player.sh.
Removal
Matching uninstallers reverse each installer (stop and disable the service, remove the unit, binary, and config). You can also remove things by hand — see the full guide for the manual commands.
# soundtouch-service (keeps the data directory unless you pass --purge):
curl -fsSL -o uninstall.sh \
https://raw.githubusercontent.com/gesellix/Bose-SoundTouch/main/scripts/raspberry-pi/uninstall.sh
sudo bash uninstall.sh
# soundtouch-player:
curl -fsSL -o uninstall-player.sh \
https://raw.githubusercontent.com/gesellix/Bose-SoundTouch/main/scripts/raspberry-pi/uninstall-player.sh
sudo bash uninstall-player.sh
# soundtouch-web (deprecated; switch to soundtouch-player afterwards):
curl -fsSL -o uninstall-web.sh \
https://raw.githubusercontent.com/gesellix/Bose-SoundTouch/main/scripts/raspberry-pi/uninstall-web.sh
sudo bash uninstall-web.sh
The shared soundtouch:soundtouch user/group is removed only once no other
soundtouch-* install remains on the host.