diff options
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/kanata/configuration.nix | 10 | ||||
-rw-r--r-- | nixos/kanata/secrets/secrets.yaml | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/nixos/kanata/configuration.nix b/nixos/kanata/configuration.nix index 6ad4735..b927a86 100644 --- a/nixos/kanata/configuration.nix +++ b/nixos/kanata/configuration.nix @@ -103,6 +103,7 @@ in sops.secrets.attic-credentials = { }; # TODO: insecure? sops.secrets.invidious-hmac = { mode = "0444"; }; + sops.secrets.transmission-extra-config = { owner = "transmission"; }; boot.kernel.sysctl."net.ipv4.ip_forward" = 1; boot.kernel.sysctl."net.ipv6.conf.all.forwarding" = 1; @@ -156,6 +157,7 @@ in "invidious.kusanari.network".to = "http://localhost:4003"; "hydra.kusanari.network".to = "http://localhost:4004"; "cache.kusanari.network".to = "http://localhost:4005"; + "torrent.kusanari.network".to = "http://localhost:4006"; # Nginx pre-configured routes "nextcloud.kusanari.network" = { @@ -192,6 +194,7 @@ in "invidious" "hydra" "cache" + "torrent" ]; }; }; @@ -262,6 +265,13 @@ in secrets.attic-credentials = config.sops.secrets.attic-credentials.path; }; + + services.transmission = { + enable = true; + home = "/smol/sandbox/torrent"; + + secrets.transmission-extra-config = config.sops.secrets.transmission-extra-config.path; + }; }; containers.v-interlink = { diff --git a/nixos/kanata/secrets/secrets.yaml b/nixos/kanata/secrets/secrets.yaml index 7096ab1..790e962 100644 --- a/nixos/kanata/secrets/secrets.yaml +++ b/nixos/kanata/secrets/secrets.yaml @@ -13,6 +13,7 @@ interlink-ovpn-creds: ENC[AES256_GCM,data:Dy4QLcfPhwqDa4+8YTUZjxaU,iv:oGe91cJVKn interlink-ovpn: ENC[AES256_GCM,data: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,iv:xRA4Q0zFdJLXSg/jGVdXJrG5KCiYM/2+26oZ1jNn6kE=,tag:7ufCLQD/PP/K2PxI8t49Dw==,type:str] proton-private-key: ENC[AES256_GCM,data:OnZGYf/203XOLXyDRIqrRKwLe0cN2c0RF+CkwwNtttP+ACD3AJCY0rNgKoc=,iv:IWFF95Z3r+OuSu+GfJWJjwRv5b9KZSKGMuxSnkRGqlg=,tag:QvDBvSzzGxwawhaio47MEQ==,type:str] attic-credentials: ENC[AES256_GCM,data:S25D1E4kTp2Nre1uu1WWVV1jrEpQtPz5+5XQ/W0pr0CF5pFm0UEyGn2XdJKQzyM5CYSCo581JeJNMtTKIwEKm8lYY9X5e8Jgwe2o5f5YRwmHSfvK1UAJoUdM7Q0FaAcVTU3bNis1dClqDvB0QbNjF1xsYCKCgZRe8TSenmJgPjA=,iv:m+UzkoVsEfUtKIYaGZIej4efhVuWN4EKCqMamlQwWaI=,tag:vBPq0JkRDbKmyw9qLbh1gg==,type:str] +transmission-extra-config: ENC[AES256_GCM,data:lyZ8Nkjp0Mjm4HFDqRN1G6iyBksHT6dKKQDSO8Br1DpXxKLDBclQ4L2F1FqQJ3OB/7o4EqWFX8J1ZjVYDCQkQnhr6v13glvFciICQ99hPsypUS349936vDCgEF/WP0RAHOsaRq81JnMDegZvEg==,iv:bfN2oEfQ3uk4i6hwHp2ZdYCf3l7Kb0EoXSEGyOSB8CM=,tag:fZkMayEJiXzifTCiVLJq6w==,type:str] sops: kms: [] gcp_kms: [] @@ -37,8 +38,8 @@ sops: YkRGS2ZBbm1keWpUQUFOWDRtTWZVa0EKc+lKEP0L/yoFLx6p1zbWfifPWc7Y9Qqh qccODSyHqzwdriHLxXuw9SCnF+SeA721te6+pDVhJj8vqv2UqHiATw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-02-10T10:17:01Z" - mac: ENC[AES256_GCM,data:+bG3fm405WMZI8NQ7TTgKhwcOw26mdCPEzTdOIWv1xwF6Ag0onlx0Sr+E2WHj/lEB4SJmg+gyZs0MEwxNMu8AYZjah88DCuFmOWMfdmFejUCARSqZleLcFD+ZtXd+V0Nlh5DfKYH9lXW5MGS4rX7NymHWJMatgnOvOjQ/+i7xHo=,iv:pxVCSN+tl+3HwRy13GxzoeXpN7dFo0O95OkXKWzDwaQ=,tag:6DECLknVB6yQ0vYN4hZL6w==,type:str] + lastmodified: "2024-02-24T19:35:52Z" + mac: ENC[AES256_GCM,data:4L+MQUbimb6JIcJrQhLig0qs3Z9iKbD2BQ/nEGXwAfYc4ikPK8M+aR0tWls/SePSJL5XnZ5dKUZQpIrhWE9gBYsZSogI/ECj59Q3IqahWF+RCecqTzCKQ7njDIyZbpQ+lLf6iZ/EcCU+ZawTaXlZAfpDyAmrHXd5CsXJMzRYfEk=,iv:NOKH3m+KGpSWgQIX4owd/jYbA9NKH4TgpEsn2ZpUx5k=,tag:bHrZCIs7xdlh+hiS/CRENg==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 |