Nixpkgs version
Describe the bug
Navidrome — an open-source music streaming server — has a Jukebox mode. The Jukebox mode plays the audio on the audio interface connected to the server Navidrome is running on which can be controlled via one of the client applications. The Jukebox mode depends on mpv to play the audio locally.
Currently, mpv is not included in the Navidrome package but can be added easily:
services.navidrome = {
enable = true;
openFirewall = true;
settings = {
Jukebox.Enabled = true;
MusicFolder = "/var/music";
};
};
systemd.services.navidrome = {
path = [ pkgs.mpv ];
};
Problem is the systemd service is so locked down that Navidrome can not communicate with mpv. Using the Jukebox mode gives an error (see log below). I tested this with the play:Sub and iSub iOS apps.
I think loosening the systemd service configuration could solve the error, but I don't know enough about systemd services and interprocess communication to know what exactly is needed.
Steps to reproduce
- Install Navidrome and enable Jukebox mode as shown above.
- Install a Navidrome client that supports Jukebox mode (play:Sub or iSub for iOS, Android has numerous other options).
- Connect the client to the server and use the Jukebox function in the app.
- On play:Sub it looks like the song plays on the "jukebox" but no sound comes out of the server's audio interface.
- A timeout error message appears in the Navidrome server log.
Expected behaviour
The Jukebox mode works and the audio starts playing through the audio interface of the Navidrome server, not the client.
Relevant log output
The relevant line is near the end: Error or timeout waiting for control socket
Sep 13 23:22:44 navidrome[3344]: time="2025-09-13T23:22:44" level=info msg="Now Playing" artist="[Unknown Artist]" player="playSub_iPh>
Sep 13 23:22:49 navidrome[3344]: time="2025-09-13T23:22:49" level=info msg="JukeboxControl request received" action=get requestId=thin>
Sep 13 23:22:49 navidrome[3344]: time="2025-09-13T23:22:49" level=info msg="JukeboxControl request received" action=set requestId=thin>
Sep 13 23:22:49 navidrome[3344]: time="2025-09-13T23:22:49" level=info msg="JukeboxControl request received" action=skip requestId=thi>
Sep 13 23:22:49 navidrome[3344]: time="2025-09-13T23:22:49" level=info msg="Found mpv" path=/nix/store/z45ln4n9ag8s8zfaabxc6frsyfyjbir>
Sep 13 23:22:52 navidrome[3344]: time="2025-09-13T23:22:52" level=error msg="Error or timeout waiting for control socket" error="timeo>
Sep 13 23:22:52 navidrome[3344]: time="2025-09-13T23:22:52" level=warning msg="API: Failed response" endpoint=/rest/jukeboxControl.vie>
System metadata
- system:
"x86_64-linux"
- host os:
Linux 6.12.46, NixOS, 25.05 (Warbler), 25.05.809711.8cd5ce828d5d
- multi-user?:
yes
- sandbox:
yes
- version:
nix-env (Nix) 2.28.5
- channels(root):
"nixos-25.05"
- nixpkgs:
/nix/store/x91rhbn2bwfr8pgna5y8bn2rw327d9w1-nixos-25.05/nixos
Notify maintainers
@fsnkty
Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)
I assert that this issue is relevant for Nixpkgs
Is this issue important to you?
Add a 👍 reaction to issues you find important.
Nixpkgs version
Describe the bug
Navidrome — an open-source music streaming server — has a Jukebox mode. The Jukebox mode plays the audio on the audio interface connected to the server Navidrome is running on which can be controlled via one of the client applications. The Jukebox mode depends on mpv to play the audio locally.
Currently, mpv is not included in the Navidrome package but can be added easily:
Problem is the systemd service is so locked down that Navidrome can not communicate with mpv. Using the Jukebox mode gives an error (see log below). I tested this with the play:Sub and iSub iOS apps.
I think loosening the systemd service configuration could solve the error, but I don't know enough about systemd services and interprocess communication to know what exactly is needed.
Steps to reproduce
Expected behaviour
The Jukebox mode works and the audio starts playing through the audio interface of the Navidrome server, not the client.
Relevant log output
The relevant line is near the end: Error or timeout waiting for control socket
System metadata
"x86_64-linux"Linux 6.12.46, NixOS, 25.05 (Warbler), 25.05.809711.8cd5ce828d5dyesyesnix-env (Nix) 2.28.5"nixos-25.05"/nix/store/x91rhbn2bwfr8pgna5y8bn2rw327d9w1-nixos-25.05/nixosNotify maintainers
@fsnkty
Note for maintainers: Please tag this issue in your pull request description. (i.e.
Resolves #ISSUE.)I assert that this issue is relevant for Nixpkgs
Is this issue important to you?
Add a 👍 reaction to issues you find important.