-
Notifications
You must be signed in to change notification settings - Fork 0
Fix D-Bus connection failures in multiroom-server container #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
- Added dbus package to Dockerfile - Start D-Bus daemon before other services in start.sh - Removed D-Bus and Avahi socket volume mounts from docker-compose.yml - Added error handling for mkfifo commands (prevent errors on restart) - Improved script readability with blank lines and better comments - Increased PulseAudio startup delay to 2 seconds for stability Co-authored-by: tipbr <10751100+tipbr@users.noreply.github.com>
|
@copilot now I get ✔ multiroom-server-librespot-snapcast Built 0.0s |
- Kill any existing snapserver/pulseaudio processes before starting (fixes port conflicts) - Create PulseAudio cookie directory to avoid authentication warnings - Ensures clean startup on fresh Raspberry Pi OS with host network mode Co-authored-by: tipbr <10751100+tipbr@users.noreply.github.com>
... Fixed in commit 0642ebf. The issues were:
The D-Bus and Avahi errors are resolved (librespot now publishes zeroconf and snapserver adds Avahi service successfully). The new changes handle the port binding and authentication issues on fresh Pi OS installations. |
- Kill avahi-daemon process before restart - Remove stale PID files for avahi-daemon and pulseaudio - Fixes "Daemon already running" errors after forceful container stop - Ensures clean restart after docker compose down/stop Co-authored-by: tipbr <10751100+tipbr@users.noreply.github.com>
Fix D-Bus and Avahi errors in multiroom-server container
Problem: The librespot-snapcast container was experiencing critical D-Bus connection failures causing PulseAudio and Avahi to fail, preventing mDNS advertisement for Spotify, AirPlay, and Snapcast services.
Root Cause: The container was trying to share the host's D-Bus socket, which caused handshake failures and authentication errors.
Solution Implemented:
Changes Made:
Dockerfile: Added
dbuspackage and updated startup script to:docker-compose.yml: Made container fully self-contained by:
/var/run/dbus:/var/run/dbus)Expected Results:
docker compose downor forceful stopThe container is now fully self-contained with its own D-Bus daemon and properly handles all cleanup scenarios including forceful stops and restarts.
Original prompt
brad@multiroom-server:~/multiroom-server $ docker compose logs
librespot-snapcast | Removed /etc/systemd/system/multi-user.target.wants/raspotify.service.
librespot-snapcast | W: [pulseaudio] main.c: Running in system mode, but --disallow-module-loading not set.
librespot-snapcast | N: [pulseaudio] main.c: Running in system mode, forcibly disabling SHM mode.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | W: [pulseaudio] main.c: Home directory of user 'pulse' is not '/var/run/pulse', ignoring.
librespot-snapcast | W: [pulseaudio] main.c: OK, so you are running PA in system mode. Please make sure that you actually do want to do that.
librespot-snapcast | W: [pulseaudio] main.c: Please read http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system mode is usually a bad idea.
librespot-snapcast | W: [pulseaudio] authkey.c: Failed to open cookie file '/var/run/pulse/.config/pulse/cookie': No such file or directory
librespot-snapcast | W: [pulseaudio] authkey.c: Failed to load authentication key '/var/run/pulse/.config/pulse/cookie': No such file or directory
librespot-snapcast | W: [pulseaudio] authkey.c: Failed to open cookie file '/var/run/pulse/.pulse-cookie': No such file or directory
librespot-snapcast | W: [pulseaudio] authkey.c: Failed to load authentication key '/var/run/pulse/.pulse-cookie': No such file or directory
librespot-snapcast | E: [null-sink] util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
librespot-snapcast | E: [null-sink] util.c: Failed to connect to ...
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.