Fixed cross-seed

This commit is contained in:
rasmus-kirk
2025-10-29 09:02:42 +01:00
parent e8312dfa78
commit 9f1b809818
2 changed files with 21 additions and 10 deletions
+16 -4
View File
@@ -54,14 +54,14 @@ in {
};
user = mkOption {
type = types.str;
default = "cross-seed";
type = types.nullOr types.str;
default = null;
description = "User account under which cross-seed runs.";
};
group = mkOption {
type = types.str;
default = "cross-seed";
type = types.nullOr types.str;
default = null;
description = "Group under which cross-seed runs.";
};
};
@@ -81,6 +81,18 @@ in {
The settings.torrentDir option must be set if cross-seed is enabled.
'';
}
{
assertion = cfg.enable -> cfg.user != null;
message = ''
The user option must be set if cross-seed is enabled.
'';
}
{
assertion = cfg.enable -> cfg.group != null;
message = ''
The group option must be set if cross-seed is enabled.
'';
}
];
systemd.tmpfiles.rules =
+5 -6
View File
@@ -287,7 +287,6 @@ in {
users = {
groups.${globals.transmission.group}.gid = globals.gids.${globals.transmission.group};
groups.${globals.cross-seed.group}.gid = globals.gids.${globals.cross-seed.group};
users.${globals.transmission.user} = {
isSystemUser = true;
group = globals.transmission.group;
@@ -296,10 +295,10 @@ in {
};
systemd.tmpfiles.rules = [
"d '${cfg.stateDir}' 0750 ${globals.transmission.user} ${globals.cross-seed.group} - -"
"d '${cfg.stateDir}' 0750 ${globals.transmission.user} ${globals.transmission.group} - -"
# This is fixes a bug in nixpks (https://github.com/NixOS/nixpkgs/issues/291883)
"d '${cfg.stateDir}/.config' 0750 ${globals.transmission.user} ${globals.cross-seed.group} - -"
"d '${cfg.stateDir}/.config/transmission-daemon' 0750 ${globals.transmission.user} ${globals.cross-seed.group} - -"
"d '${cfg.stateDir}/.config' 0750 ${globals.transmission.user} ${globals.transmission.group} - -"
"d '${cfg.stateDir}/.config/transmission-daemon' 0750 ${globals.transmission.user} ${globals.transmission.group} - -"
# Media Dirs
"d '${nixarr.mediaDir}/torrents' 0755 ${globals.transmission.user} ${globals.transmission.group} - -"
@@ -315,8 +314,8 @@ in {
util-nixarr.services.cross-seed = mkIf cfg-cross-seed.enable {
enable = true;
dataDir = cfg-cross-seed.stateDir;
user = globals.cross-seed.user;
group = globals.cross-seed.group;
user = globals.transmission.user;
group = globals.transmission.group;
settings =
{
torrentDir = "${cfg.stateDir}/.config/transmission-daemon/torrents";