{ config, lib, pkgs, ... }: let secrets = config.age.secrets; vhostName = "bt.${config.homelab.domain}"; in { # https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/torrent/transmission.nix services.transmission = { enable = true; group = "nas"; performanceNetParameters = true; home = "/data/fast/torrents"; openPeerPorts = true; settings = { dht-enabled = false; cache-size-mb = 128; peer-port = 52213; peer-port-random-low = 49152; peer-port-random-high = 65535; message-level = 2; rpc-enabled = true; rpc-host-whitelist-enabled = false; verify-threads = 4; }; }; services.nginx.virtualHosts."${vhostName}" = { forceSSL = true; useACMEHost = config.homelab.domain; listen = [ { addr = "192.168.6.40"; port = 443; ssl = true; } { addr = "192.168.6.40"; port = 80; ssl = false; } ]; locations."/" = { proxyPass = "http://127.0.0.1:9091"; proxyWebsockets = true; }; }; }