summary refs log tree commit diff
path: root/nixos/modules/services/torrent
diff options
context:
space:
mode:
authorLassulus <github@lassul.us>2020-05-22 11:23:17 +0200
committerGitHub <noreply@github.com>2020-05-22 11:23:17 +0200
commit79f41b296c45ef815f4ae6b584d23575b3708464 (patch)
treec83a267321e24bb0ac49d9f84bc45496cca9d0ab /nixos/modules/services/torrent
parentc641500aaaf0e3eabf0d60319185a429ae371ee5 (diff)
parentf43f7894ffb470722e6330b510e0dcc50359057c (diff)
downloadnixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar.gz
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar.bz2
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar.lz
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar.xz
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.tar.zst
nixpkgs-79f41b296c45ef815f4ae6b584d23575b3708464.zip
Merge pull request #81104 from bb2020/transmission
nixos/transmission: fix startup directory creation
Diffstat (limited to 'nixos/modules/services/torrent')
-rw-r--r--nixos/modules/services/torrent/transmission.nix15
1 files changed, 8 insertions, 7 deletions
diff --git a/nixos/modules/services/torrent/transmission.nix b/nixos/modules/services/torrent/transmission.nix
index fd28b94f7be..e7f5aaed844 100644
--- a/nixos/modules/services/torrent/transmission.nix
+++ b/nixos/modules/services/torrent/transmission.nix
@@ -11,7 +11,7 @@ let
   downloadDir = "${homeDir}/Downloads";
   incompleteDir = "${homeDir}/.incomplete";
 
-  settingsDir = "${homeDir}/.config/transmission-daemon";
+  settingsDir = "${homeDir}/config";
   settingsFile = pkgs.writeText "settings.json" (builtins.toJSON fullSettings);
 
   # for users in group "transmission" to have access to torrents
@@ -20,12 +20,6 @@ let
   preStart = pkgs.writeScript "transmission-pre-start" ''
     #!${pkgs.runtimeShell}
     set -ex
-    for DIR in "${homeDir}" "${settingsDir}" "${fullSettings.download-dir}" "${fullSettings.incomplete-dir}"; do
-      mkdir -p "$DIR"
-    done
-    chmod 755 "${homeDir}"
-    chmod 700 "${settingsDir}"
-    chmod ${downloadDirPermissions} "${fullSettings.download-dir}" "${fullSettings.incomplete-dir}"
     cp -f ${settingsFile} ${settingsDir}/settings.json
   '';
 in
@@ -110,6 +104,13 @@ in
   };
 
   config = mkIf cfg.enable {
+    systemd.tmpfiles.rules = [
+      "d '${homeDir}' 0770 '${cfg.user}' '${cfg.group}' - -"
+      "d '${settingsDir}' 0700 '${cfg.user}' '${cfg.group}' - -"
+      "d '${fullSettings.download-dir}' '${downloadDirPermissions}' '${cfg.user}' '${cfg.group}' - -"
+      "d '${fullSettings.incomplete-dir}' '${downloadDirPermissions}' '${cfg.user}' '${cfg.group}' - -"
+    ];
+
     systemd.services.transmission = {
       description = "Transmission BitTorrent Service";
       after = [ "network.target" ] ++ optional apparmor "apparmor.service";