ncmpcpp: Allow str type values for mpdMusicDir option (#3565)
The default value of `programs.ncmpcpp.mpdMusicDir` is taken from `services.mpd.musicDirectory` if the mpd module is enabled, which has type `either path str`. `programs.ncmpcpp.mpdMusicDir` did not accept `str` values, though, so an error was raised when the default value was used and `services.mpd.musicDirectory` was set to a value of type `str`. This commit changes the type of `programs.ncmpcpp.mpdMusicDir` to also accept `str` to reflect the type of `services.mpd.musicDirectory`. Fixes #3560
This commit is contained in:
parent
709a87fe33
commit
2cff1c7642
4 changed files with 32 additions and 3 deletions
|
|
@ -62,7 +62,7 @@ in {
|
|||
};
|
||||
|
||||
mpdMusicDir = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
type = with types; nullOr (coercedTo path toString str);
|
||||
default = let mpdCfg = config.services.mpd;
|
||||
in if pkgs.stdenv.hostPlatform.isLinux && mpdCfg.enable then
|
||||
mpdCfg.musicDirectory
|
||||
|
|
@ -123,7 +123,7 @@ in {
|
|||
xdg.configFile = {
|
||||
"ncmpcpp/config" = let
|
||||
settings = cfg.settings // optionalAttrs (cfg.mpdMusicDir != null) {
|
||||
mpd_music_dir = toString cfg.mpdMusicDir;
|
||||
mpd_music_dir = cfg.mpdMusicDir;
|
||||
};
|
||||
in mkIf (settings != { }) { text = renderSettings settings + "\n"; };
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue