nixos/readarr: add settings option

This commit is contained in:
Felix Buehler
2025-02-24 18:50:08 +01:00
parent ae25ae9c3d
commit 7045b5061f
+8 -1
View File
@@ -6,6 +6,7 @@
}:
let
cfg = config.services.readarr;
servarr = import ./servarr/settings-options.nix { inherit lib pkgs; };
in
{
options = {
@@ -28,6 +29,10 @@ in
'';
};
settings = servarr.mkServarrSettingsOptions "readarr" 8787;
environmentFiles = servarr.mkServarrEnvironmentFiles "readarr";
user = lib.mkOption {
type = lib.types.str;
default = "readarr";
@@ -56,18 +61,20 @@ in
description = "Readarr";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
environment = servarr.mkServarrSettingsEnvVars "READARR" cfg.settings;
serviceConfig = {
Type = "simple";
User = cfg.user;
Group = cfg.group;
EnvironmentFile = cfg.environmentFiles;
ExecStart = "${cfg.package}/bin/Readarr -nobrowser -data='${cfg.dataDir}'";
Restart = "on-failure";
};
};
networking.firewall = lib.mkIf cfg.openFirewall {
allowedTCPPorts = [ 8787 ];
allowedTCPPorts = [ cfg.settings.server.port ];
};
users.users = lib.mkIf (cfg.user == "readarr") {