infrastructure/modules/nixos/deluge.nix
2024-01-24 13:02:02 -08:00

33 lines
685 B
Nix

{
config,
lib,
...
}: let
inherit (lib.options) mkOption;
inherit (lib.modules) mkIf mkMerge;
cfg = config.services.deluge;
in {
options.services.deluge = with lib.types; {
downloadDir = mkOption {
type = path;
default = cfg.dataDir + "/Downloads";
};
completedDir = mkOption {
type = nullOr path;
default = null;
};
};
config = {
services.deluge = {
config = mkMerge [
{
download_location = cfg.downloadDir;
move_completed = cfg.completedDir != null;
}
(mkIf (cfg.completedDir != null) {
move_completed_path = cfg.completedDir;
})
];
};
};
}