nix-config/features/server/multimedia/slskd.nix

40 lines
772 B
Nix

{
config,
lib,
secrets,
...
}:
with lib;
let
cfg = config.downloads.music;
in
{
options = {
downloads.music.directory = mkOption {
type = types.str;
default = "/srv/media/Music";
};
};
config = {
sops.secrets.slskd = {
sopsFile = "${secrets}/secrets/slskd.env";
format = "dotenv";
};
services.slskd = {
enable = true;
openFirewall = true;
environmentFile = config.sops.secrets.slskd.path;
domain = null;
settings = {
shares.directories = [ "${cfg.directory}/clean" ];
soulseek.description = "i luv katz n mewsik";
directories.downloads = "${cfg.directory}/downloads";
directories.incomplete = "${cfg.directory}/incomplete";
};
};
};
}