nix-dotfiles/nixos/torrentbox.nix

45 lines
1.9 KiB
Nix

{ pkgs, lib, ... }:
let
hosts = import ../hosts.nix;
in
{
services = {
bazarr = { enable = true; openFirewall = true; group = "users"; };
# jellyseerr = { enable = true; openFirewall = true; };
lidarr = { enable = true; openFirewall = true; group = "users"; };
ombi = { enable = true; openFirewall = true; };
prowlarr = { enable = true; openFirewall = true; };
radarr = { enable = true; openFirewall = true; group = "users"; };
readarr = { enable = true; openFirewall = true; group = "users"; };
sonarr = { enable = true; openFirewall = true; group = "users"; };
transmission = {
enable = true;
openFirewall = true;
group = "users";
package = pkgs.transmission_4;
settings = {
download-dir = "/mnt/raid/condiviso/Torrent";
download-queue-size = 20;
ratio-limit = 3;
ratio-limit-enabled = true;
blocklist-enabled = true;
blocklist-url = "https://raw.githubusercontent.com/Naunter/BT_BlockLists/master/bt_blocklists.gz";
rpc-bind-address = hosts.tailscale.ipv4.heimdall;
rpc-host-whitelist = lib.strings.join "," [ "heimdall" ];
rpc-whitelist = lib.strings.join "," [ "127.0.0.1" "::1" hosts.tailscale.ipv4.heimdall hosts.tailscale.ipv4.sif hosts.tailscale.ipv4.thor ];
};
};
};
systemd.services = {
bazarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
lidarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
ombi.serviceConfig = { MemoryHigh = "400M"; MemoryMax = "1G"; };
prowlarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
radarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
readarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
sonarr.serviceConfig = { MemoryHigh = "600M"; MemoryMax = "2G"; };
transmission.serviceConfig = { MemoryHigh = "400M"; MemoryMax = "1G"; };
};
}