Fixed cross-seed
This commit is contained in:
@@ -54,14 +54,14 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
user = mkOption {
|
user = mkOption {
|
||||||
type = types.str;
|
type = types.nullOr types.str;
|
||||||
default = "cross-seed";
|
default = null;
|
||||||
description = "User account under which cross-seed runs.";
|
description = "User account under which cross-seed runs.";
|
||||||
};
|
};
|
||||||
|
|
||||||
group = mkOption {
|
group = mkOption {
|
||||||
type = types.str;
|
type = types.nullOr types.str;
|
||||||
default = "cross-seed";
|
default = null;
|
||||||
description = "Group under which cross-seed runs.";
|
description = "Group under which cross-seed runs.";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -81,6 +81,18 @@ in {
|
|||||||
The settings.torrentDir option must be set if cross-seed is enabled.
|
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 =
|
systemd.tmpfiles.rules =
|
||||||
|
|||||||
@@ -287,7 +287,6 @@ in {
|
|||||||
|
|
||||||
users = {
|
users = {
|
||||||
groups.${globals.transmission.group}.gid = globals.gids.${globals.transmission.group};
|
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} = {
|
users.${globals.transmission.user} = {
|
||||||
isSystemUser = true;
|
isSystemUser = true;
|
||||||
group = globals.transmission.group;
|
group = globals.transmission.group;
|
||||||
@@ -296,10 +295,10 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
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)
|
# 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' 0750 ${globals.transmission.user} ${globals.transmission.group} - -"
|
||||||
"d '${cfg.stateDir}/.config/transmission-daemon' 0750 ${globals.transmission.user} ${globals.cross-seed.group} - -"
|
"d '${cfg.stateDir}/.config/transmission-daemon' 0750 ${globals.transmission.user} ${globals.transmission.group} - -"
|
||||||
|
|
||||||
# Media Dirs
|
# Media Dirs
|
||||||
"d '${nixarr.mediaDir}/torrents' 0755 ${globals.transmission.user} ${globals.transmission.group} - -"
|
"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 {
|
util-nixarr.services.cross-seed = mkIf cfg-cross-seed.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
dataDir = cfg-cross-seed.stateDir;
|
dataDir = cfg-cross-seed.stateDir;
|
||||||
user = globals.cross-seed.user;
|
user = globals.transmission.user;
|
||||||
group = globals.cross-seed.group;
|
group = globals.transmission.group;
|
||||||
settings =
|
settings =
|
||||||
{
|
{
|
||||||
torrentDir = "${cfg.stateDir}/.config/transmission-daemon/torrents";
|
torrentDir = "${cfg.stateDir}/.config/transmission-daemon/torrents";
|
||||||
|
|||||||
Reference in New Issue
Block a user