Bump snapcast in base image
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 24 Oct 2025 00:23:50 +0000 (02:23 +0200)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 24 Oct 2025 00:23:50 +0000 (02:23 +0200)
Dockerfile.base

index 39fc1d75820a3b4715cf3905824f067d8b9474ec..1d4cec17a377b138511ab1cdf007468c55cc01e4 100644 (file)
@@ -117,6 +117,7 @@ RUN set -x \
         ca-certificates \
         libjemalloc2 \
         tzdata \
+        wget \
         # cifs utils and libnfs are needed for smb and nfs support (file provider)
         cifs-utils \
         libnfs13 \
@@ -125,9 +126,6 @@ RUN set -x \
         libssl-dev \
         # libsndfile needed for librosa audio file support (smartfades)
         libsndfile1 \
-        # snapcast server and client for snapcast provider
-        snapserver \
-        snapclient \
         # Audio codec runtime libraries (needed for FFmpeg)
         libfdk-aac2 \
         libmp3lame0 \
@@ -151,9 +149,28 @@ RUN set -x \
         # Additional libraries
         libbluray2 \
         libxml2 \
+        # Snapcast dependencies
+        libvorbisidec1 \
+        libflac12 \
+        libavahi-client3 \
+        libavahi-common3 \
     && apt-get clean \
     && rm -rf /var/lib/apt/lists/*
 
+# Install Snapcast 0.34.0 from GitHub releases (requires at least 0.27)
+ARG SNAPCAST_VERSION=0.34.0
+ARG TARGETARCH
+RUN set -x \
+    && if [ "$TARGETARCH" = "arm64" ]; then \
+        SNAPCAST_ARCH="arm64"; \
+    else \
+        SNAPCAST_ARCH="amd64"; \
+    fi \
+    && wget -q "https://github.com/badaix/snapcast/releases/download/v${SNAPCAST_VERSION}/snapserver_${SNAPCAST_VERSION}-1_${SNAPCAST_ARCH}_bookworm.deb" -O /tmp/snapserver.deb \
+    && wget -q "https://github.com/badaix/snapcast/releases/download/v${SNAPCAST_VERSION}/snapclient_${SNAPCAST_VERSION}-1_${SNAPCAST_ARCH}_bookworm.deb" -O /tmp/snapclient.deb \
+    && dpkg -i /tmp/snapserver.deb /tmp/snapclient.deb \
+    && rm /tmp/snapserver.deb /tmp/snapclient.deb
+
 # Copy FFmpeg binaries and libraries from builder stage
 COPY --from=ffmpeg-builder /usr/local/bin/ffmpeg /usr/local/bin/
 COPY --from=ffmpeg-builder /usr/local/bin/ffprobe /usr/local/bin/