[PR #277] [MERGED] feat: add support for mDNS using avahi or built-in backend #288

Closed
opened 2026-02-28 14:26:32 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/devgianlu/go-librespot/pull/277
Author: @YutongGu
Created: 12/24/2025
Status: Merged
Merged: 1/1/2026
Merged by: @devgianlu

Base: masterHead: zeroconf-backend-override


📝 Commits (3)

  • 9f29965 feat: add support for mDNS service registration using avahi or built-in backend
  • d106d04 Update README to include background on zeroconf modes
  • cf889da Fix formatting issues for CI

📊 Changes

7 files changed (+266 additions, -21 deletions)

View changed files

📝 README.md (+30 -6)
📝 cmd/daemon/main.go (+4 -1)
📝 config_schema.json (+9 -0)
zeroconf/backend.go (+16 -0)
zeroconf/backend_avahi.go (+142 -0)
zeroconf/backend_builtin.go (+34 -0)
📝 zeroconf/zeroconf.go (+31 -14)

📄 Description

Description

Adds support for using an existing avahi-daemon for mDNS service registration instead of the built-in mDNS responder. This is useful for:

  • Embedded systems where a single mDNS daemon is preferred
  • Avoiding port conflicts with other mDNS services
  • Integration with system service management

Configuration:

zeroconf_backend: avahi  # Options: "builtin" (default), "avahi"

Or via command line:

go-librespot -c zeroconf_backend=avahi

Compatibility:

  • Avahi 0.6.x and later (uses stable D-Bus API)
  • Tested with Avahi 0.7 and 0.8

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/devgianlu/go-librespot/pull/277 **Author:** [@YutongGu](https://github.com/YutongGu) **Created:** 12/24/2025 **Status:** ✅ Merged **Merged:** 1/1/2026 **Merged by:** [@devgianlu](https://github.com/devgianlu) **Base:** `master` ← **Head:** `zeroconf-backend-override` --- ### 📝 Commits (3) - [`9f29965`](https://github.com/devgianlu/go-librespot/commit/9f29965502757bcb260c66ad0a776c22844bfc09) feat: add support for mDNS service registration using avahi or built-in backend - [`d106d04`](https://github.com/devgianlu/go-librespot/commit/d106d04aaa0bee4aeaa9dbd08d7627c7ee79ba92) Update README to include background on zeroconf modes - [`cf889da`](https://github.com/devgianlu/go-librespot/commit/cf889daea1be0bf8a80387162f3bb98f9faa56eb) Fix formatting issues for CI ### 📊 Changes **7 files changed** (+266 additions, -21 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+30 -6) 📝 `cmd/daemon/main.go` (+4 -1) 📝 `config_schema.json` (+9 -0) ➕ `zeroconf/backend.go` (+16 -0) ➕ `zeroconf/backend_avahi.go` (+142 -0) ➕ `zeroconf/backend_builtin.go` (+34 -0) 📝 `zeroconf/zeroconf.go` (+31 -14) </details> ### 📄 Description ## Description Adds support for using an existing avahi-daemon for mDNS service registration instead of the built-in mDNS responder. This is useful for: * Embedded systems where a single mDNS daemon is preferred * Avoiding port conflicts with other mDNS services * Integration with system service management ## Configuration: ``` zeroconf_backend: avahi # Options: "builtin" (default), "avahi" ``` Or via command line: ``` go-librespot -c zeroconf_backend=avahi ``` ## Compatibility: * Avahi 0.6.x and later (uses stable D-Bus API) * Tested with Avahi 0.7 and 0.8 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-28 14:26:32 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/go-librespot#288
No description provided.