Commit Graph

10 Commits

Author SHA1 Message Date
Niklas Gühne
5b99f3fc17 Release v1.0.8: OAuth-URL im HA-Log sichtbar (stdout→stderr)
librespot schreibt die 'Browse to:'-URL mit println! auf stdout,
das direkt in die ffmpeg-Pipe geht – die URL war dadurch nie im
Log sichtbar, und ffmpeg erhielt Text statt PCM (Absturz-Schleife).

Fix: println! → eprintln! im librespot-Quellcode-Patch, sodass
die URL auf stderr landet und im HA-Log erscheint.

Außerdem: Patch-Verifikation schlägt jetzt mit exit 1 fehl statt
stillschweigend weiterzumachen (|| true → || exit 1).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 08:03:49 +02:00
6f4e408190 Release v1.0.7: OAuth-Server korrekt auf 0.0.0.0 gebunden
Die bisherigen Patches zielten auf Muster, die in oauth/src/lib.rs
nicht vorhanden sind. Der tatsächliche Bind-Aufruf ist
TcpListener::bind(socket_address) – dieser wird jetzt direkt durch
SocketAddrV4::new(Ipv4Addr::UNSPECIFIED, port) ersetzt.

Dadurch ist der OAuth-Callback-Server unter http://<ha-ip>:5588
erreichbar. Der Benutzer ersetzt nach der Spotify-Weiterleitung
127.0.0.1 durch die HA-IP in der Adressleiste.

run.sh erkennt die HA-IP automatisch und zeigt eine klare
Schritt-für-Schritt-Anleitung beim ersten Start.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 22:57:35 +02:00
7c26af0d36 Release v1.0.6: OAuth-Patch für alle Rust-Adress-Schreibweisen
Erweiterter sed-Patch der oauth/src/lib.rs:
- '127.0.0.1' (String-Literal)
- [127, 0, 0, 1] (Array-Syntax)
- Ipv4Addr::LOCALHOST (Rust-Konstante → Ipv4Addr::UNSPECIFIED)

Build gibt die gepatchten Zeilen aus damit der Patch nachvollziehbar ist.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 19:39:56 +02:00
2fb79dcead Release v1.0.5: OAuth-Server auf 0.0.0.0 gepatcht
librespot bindet den OAuth-Callback-Server an 127.0.0.1 (nur lokal
erreichbar). Das macht den OAuth-Flow von Heimnetz-Geräten unmöglich.

Fix: librespot Quellcode wird geklont, oauth/src/lib.rs gepatcht
(127.0.0.1 → 0.0.0.0), und dann mit cargo build kompiliert.
Damit ist http://<ha-ip>:5588 aus dem Browser im Heimnetz erreichbar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 18:54:57 +02:00
76bb0694fe Release v1.0.4: OAuth statt Zeroconf
Zeroconf/mDNS schlägt in Containern fehl weil Port 5353 vom Host
(systemd-resolved/avahi) bereits belegt ist. mdns-sd kann den Socket
nicht teilen → librespot: 'discovery disabled'.

Lösung: OAuth-Authentifizierung (der offiziell unterstützte Weg in
librespot 0.7+). Das Gerät registriert sich bei Spotifys Servern und
erscheint ohne lokales mDNS in der Spotify-App.

- --disable-discovery + --enable-oauth + --system-cache /data/librespot-cache
- Credentials werden in /data persistent gespeichert (data:rw)
- Beim ersten Start: URL im Log → Browser öffnen → Spotify autorisieren
- Ab dem zweiten Start: direkt mit gecachten Credentials

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 18:06:32 +02:00
a0a8b15694 Release v1.0.3: host_network für Zeroconf/mDNS
librespot benötigt Multicast-UDP (mDNS) für Zeroconf-Discovery.
Docker-Bridge-Netzwerk blockiert Multicast → Discovery schlägt fehl.

- host_network: true gesetzt → Container nutzt Host-Netzwerk
- ports-Eintrag entfernt (mit host_network nicht nötig/wirksam)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 17:55:37 +02:00
f13193958b Release v1.0.2: Passwort-Auth entfernt, Zeroconf-only
librespot 0.7+ unterstützt --password nicht mehr (nur noch OAuth/Zeroconf).
Der --password-Arg ließ librespot sofort abstürzen → leere Pipeline.

- username/password aus config.yaml und run.sh entfernt
- librespot nutzt jetzt ausschließlich Zeroconf/mDNS zur Erkennung
- Gerät erscheint automatisch in der Spotify-App im lokalen Netz

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 16:45:52 +02:00
caa6138b5e Release v1.0.1
Bugfixes:
- Repository-Struktur für HAOS Add-on Store korrigiert
- args.BUILD_FROM aus build.yaml entfernt (hat BUILD_FROM überschrieben)
- librespot via git+locked gebaut (vergen-gitcl Versionskonflikt behoben)
- native-tls Feature für librespot-oauth aktiviert
- Icecast startet nicht mehr als root (changeowner nobody)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 16:36:30 +02:00
e403baa6fa Fix: Gitea-URL auf korrekte Adresse aktualisiert
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:36:34 +02:00
1349e6515f Fix: Repository-Struktur für HAOS Add-on Store korrigiert
- ha-addon/ → busch_radio_spotify/ (Ordner muss dem Slug entsprechen)
- repository.yaml im Root hinzugefügt (von HAOS zum Erkennen des Repos benötigt)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:31:57 +02:00