blob: b30f69954692fd333bd1b73aed050709f935d28a (
plain) (
tree)
|
|
{
config,
pkgs,
lib,
osConfig,
...
}: let
dataDir = "${config.xdg.dataHome}/mpd";
playlistDirectory = "${dataDir}/playlists";
runtimeDir = "/run/user/${builtins.toString osConfig.users.users.soispha.uid}/mpd";
in {
home.sessionVariables = {
MPD_HOST = "/run/user/${builtins.toString osConfig.users.users.soispha.uid}/mpd/socket";
};
systemd.user.services.mpd.Service.ExecStartPre = lib.mkForce ''
${pkgs.coreutils}/bin/mkdir --parents "${dataDir}" "${playlistDirectory}" "${runtimeDir}"
'';
services.mpd = {
enable = true;
inherit dataDir playlistDirectory;
musicDirectory = config.programs.beets.settings.directory;
network = {
listenAddress = "${runtimeDir}/socket";
};
extraConfig = ''
metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc,comment"
# Updated by the beets `mpdupdate` plugin
auto_update "no"
audio_output {
type "pipewire"
name "pipewire"
}
replaygain "track"
replaygain_limit "yes"
#database {
# plugin "simple"
# path "~/.local/share/mpd/db
# cache_directory "~/.local/share/mpd/cache"
#}
filesystem_charset "UTF-8"
'';
};
}
|