From e5c0fe3ff9c0e2f94af2e61680b8ca21ee51c147 Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Sat, 31 Aug 2024 15:12:27 +0200 Subject: [PATCH] backwards: Add `transmission` module --- hosts/backwards/modules/default.nix | 1 + .../modules/transmission/default.nix | 42 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 hosts/backwards/modules/transmission/default.nix diff --git a/hosts/backwards/modules/default.nix b/hosts/backwards/modules/default.nix index ac48b4a..cbfe334 100644 --- a/hosts/backwards/modules/default.nix +++ b/hosts/backwards/modules/default.nix @@ -14,6 +14,7 @@ in git.enable = true; syncthing.enable = true; restic.enable = true; + transmission.enable = true; }; }; } diff --git a/hosts/backwards/modules/transmission/default.nix b/hosts/backwards/modules/transmission/default.nix new file mode 100644 index 0000000..2b2b81a --- /dev/null +++ b/hosts/backwards/modules/transmission/default.nix @@ -0,0 +1,42 @@ +{ pkgs, lib, config, ... }: +let + enabled = config.mod.transmission.enable; +in +{ + options = { + mod.transmission = { + enable = lib.mkEnableOption "enable transmission module"; + }; + }; + + config = lib.mkIf enabled { + services = { + transmission = { + enable = true; + package = pkgs.transmission_4; + + openFirewall = true; + openRPCPort = true; + + user = "alex"; + group = "users"; + + home = "/home/alex/media/ts-home"; + downloadDirPermissions = "775"; + + settings = { + rpc-bind-address = "0.0.0.0"; + rpc-port = 9191; + + incomplete-dir-enabled = false; + download-dir = "/home/alex/media/downloads"; + + rpc-authentication-required = true; + rpc-whitelist-enabled = false; + rpc-username = "transmission"; + rpc-password = "{55d884e4042db67313da49e05d7089a368eb64b3Br.3X.Xi"; + }; + }; + }; + }; +}