Merge pull request #43934 from jfrankenau/mpd-smb

mpd: add nfs and smb support

xeji c9f3382a af176db5

Changed files
+9 -3
nixos
modules
services
audio
pkgs
servers
+2 -2
nixos/modules/services/audio/mpd.nix
···
};
musicDirectory = mkOption {
-
type = types.path;
default = "${cfg.dataDir}/music";
defaultText = ''''${dataDir}/music'';
description = ''
-
The directory where mpd reads music from.
'';
};
···
};
musicDirectory = mkOption {
+
type = with types; either path (strMatching "(http|https|nfs|smb)://.+");
default = "${cfg.dataDir}/music";
defaultText = ''''${dataDir}/music'';
description = ''
+
The directory or NFS/SMB network share where mpd reads music from.
'';
};
+7 -1
pkgs/servers/mpd/default.nix
···
, clientSupport ? true, mpd_clientlib
, opusSupport ? true, libopus
, soundcloudSupport ? true, yajl
}:
assert avahiSupport -> avahi != null && dbus != null;
···
++ opt icuSupport icu
++ opt clientSupport mpd_clientlib
++ opt opusSupport libopus
-
++ opt soundcloudSupport yajl;
nativeBuildInputs = [ autoreconfHook pkgconfig ];
···
(mkFlag clientSupport "libmpdclient")
(mkFlag opusSupport "opus")
(mkFlag soundcloudSupport "soundcloud")
"--enable-debug"
"--with-zeroconf=avahi"
]
···
, clientSupport ? true, mpd_clientlib
, opusSupport ? true, libopus
, soundcloudSupport ? true, yajl
+
, nfsSupport ? true, libnfs
+
, smbSupport ? true, smbclient
}:
assert avahiSupport -> avahi != null && dbus != null;
···
++ opt icuSupport icu
++ opt clientSupport mpd_clientlib
++ opt opusSupport libopus
+
++ opt soundcloudSupport yajl
+
++ opt (!stdenv.isDarwin && nfsSupport) libnfs
+
++ opt (!stdenv.isDarwin && smbSupport) smbclient;
nativeBuildInputs = [ autoreconfHook pkgconfig ];
···
(mkFlag clientSupport "libmpdclient")
(mkFlag opusSupport "opus")
(mkFlag soundcloudSupport "soundcloud")
+
(mkFlag (!stdenv.isDarwin && nfsSupport) "libnfs")
+
(mkFlag (!stdenv.isDarwin && smbSupport) "smbclient")
"--enable-debug"
"--with-zeroconf=avahi"
]