From 71a0d206384fc183681827e395733dcac8948720 Mon Sep 17 00:00:00 2001 From: retr0 Date: Mon, 6 Apr 2026 13:56:32 +0200 Subject: [PATCH] Fix: librespot via git+locked bauen statt crates.io MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit cargo install von crates.io löst immer die neuesten Abhängigkeiten auf und zieht vergen-gitcl >=1.0 rein (vergen-lib 9.x), was mit dem build.rs von librespot-core kollidiert (erwartet vergen-lib 0.1.x). Mit --git --tag v0.7.0 --locked wird das originale Cargo.lock aus dem Release-Tag verwendet, das vergen-gitcl 0.x pinnt. Co-Authored-By: Claude Sonnet 4.6 --- busch_radio_spotify/Dockerfile | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/busch_radio_spotify/Dockerfile b/busch_radio_spotify/Dockerfile index a020197..b593812 100644 --- a/busch_radio_spotify/Dockerfile +++ b/busch_radio_spotify/Dockerfile @@ -9,18 +9,25 @@ RUN apk add --no-cache \ musl-dev \ pkgconfig \ openssl-dev \ - openssl-libs-static + openssl-libs-static \ + git -# Librespot ohne Hardware-Audio-Backends kompilieren. -# --no-default-features entfernt ALSA/PulseAudio; der Pipe-Backend -# ist immer verfügbar und reicht für diesen Anwendungsfall. +# Librespot aus dem Git-Tag mit --locked kompilieren. # -# v0.8.0 hat einen bekannten Build-Bug (vergen/vergen-lib Versionskonflikt), -# daher wird die stabile Version 0.7.0 verwendet. -RUN cargo install librespot \ - --version "0.7.0" \ +# Hintergrund: `cargo install librespot --version X.Y.Z` (ohne --locked) löst +# immer die NEUESTEN kompatiblen Abhängigkeiten auf. Das zieht vergen-gitcl +# >= 1.0 rein, das vergen-lib 9.x benötigt. librespot-core's build.rs erwartet +# jedoch vergen-lib 0.1.x → Versionkonflikt → Build-Fehler E0277. +# +# Mit `--git --tag --locked` verwendet cargo das originale Cargo.lock aus dem +# Release-Tag, das vergen-gitcl 0.x pinnt und damit kompatibel ist. +RUN cargo install \ + --git https://github.com/librespot-org/librespot \ + --tag v0.7.0 \ + --locked \ --no-default-features \ - --root /install + --root /install \ + librespot # ============================================================ # Runtime stage: HA-Basis-Image + ffmpeg + icecast