X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fmpd.nix;h=640b0015f6078fc47fbf152abf005358c73f59f2;hb=5492ca525f6b2e9339a29846b51662304bc7a49a;hp=17454d72aa9c1bdef74c8351b49b5a1eb6e1863b;hpb=17f6eae9907a122d4472da727ae8b1ac1c40c027;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/mpd.nix b/modules/private/mpd.nix index 17454d7..640b001 100644 --- a/modules/private/mpd.nix +++ b/modules/private/mpd.nix @@ -1,36 +1,35 @@ -{ lib, pkgs, config, myconfig, ... }: +{ lib, pkgs, config, ... }: { - config = { - secrets.keys = [ - { - dest = "mpd"; + options.myServices.mpd.enable = lib.mkEnableOption "enable MPD"; + config = lib.mkIf config.myServices.mpd.enable { + secrets.keys = { + "mpd" = { permissions = "0400"; - text = myconfig.env.mpd.password; - } - { - dest = "mpd-config"; + text = config.myEnv.mpd.password; + }; + "mpd-config" = { permissions = "0400"; user = "mpd"; group = "mpd"; text = '' - password "${myconfig.env.mpd.password}@read,add,control,admin" + password "${config.myEnv.mpd.password}@read,add,control,admin" ''; - } - ]; + }; + }; networking.firewall.allowedTCPPorts = [ 6600 ]; users.users.mpd.extraGroups = [ "wwwrun" "keys" ]; systemd.services.mpd.serviceConfig.RuntimeDirectory = "mpd"; services.filesWatcher.mpd = { restart = true; - paths = [ "/var/secrets/mpd-config" ]; + paths = [ config.secrets.fullPaths."mpd-config" ]; }; services.mpd = { enable = true; network.listenAddress = "any"; - musicDirectory = myconfig.env.mpd.folder; + musicDirectory = config.myEnv.mpd.folder; extraConfig = '' - include "/var/secrets/mpd-config" + include "${config.secrets.fullPaths."mpd-config"}" audio_output { type "null" name "No Output"