diff --git a/hosts/layne/services/apps/transmission.nix b/hosts/layne/services/apps/transmission.nix index f4f1797..bd62e72 100644 --- a/hosts/layne/services/apps/transmission.nix +++ b/hosts/layne/services/apps/transmission.nix @@ -28,7 +28,7 @@ in "--lpd" ]; settings = { - peer-port = 51515; + peer-port = 35994; rpc-bind-address = "127.0.0.1"; rpc-port = 9091; rpc-host-whitelist = "transmission.labs.adtya.xyz"; @@ -54,4 +54,23 @@ in }; }; systemd.services.transmission.unitConfig.RequiresMountsFor = [ "/mnt/data" ]; + systemd.timers.transmission-port-mapping = { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnCalendar = "*:*:00/30"; + Unit = "transmission-port-mapping.service"; + }; + }; + + systemd.services.transmission-port-mapping = { + script = '' + set -eu + ${pkgs.libnatpmp}/bin/natpmpc -g 10.2.0.1 -a 1 0 tcp 60 + ${pkgs.libnatpmp}/bin/natpmpc -g 10.2.0.1 -a 1 0 udp 60 + ''; + serviceConfig = { + Type = "oneshot"; + User = "root"; + }; + }; }