nixos: services: servarr: fix 'enableAll' logic
I renamed the option and refactored how it worked to make it more explicit that it enables the entire suite by default, with explicit opt-out of individual components (or fine-grained opt-in as an alternative).
This commit is contained in:
parent
ca98b8367c
commit
7791ad0907
2 changed files with 10 additions and 12 deletions
|
|
@ -144,7 +144,7 @@ in
|
||||||
sabnzbd.enable = true;
|
sabnzbd.enable = true;
|
||||||
# The whole *arr software suite
|
# The whole *arr software suite
|
||||||
servarr = {
|
servarr = {
|
||||||
enable = true;
|
enableAll = true;
|
||||||
# ... But not Lidarr because I don't care for music that much
|
# ... But not Lidarr because I don't care for music that much
|
||||||
lidarr = {
|
lidarr = {
|
||||||
enable = false;
|
enable = false;
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,8 @@ let
|
||||||
enable = true;
|
enable = true;
|
||||||
group = "media";
|
group = "media";
|
||||||
};
|
};
|
||||||
|
# Set-up media group
|
||||||
|
users.groups.media = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
mkRedirection = service: {
|
mkRedirection = service: {
|
||||||
|
|
@ -54,34 +56,30 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.my.services.servarr = {
|
options.my.services.servarr = {
|
||||||
enable = lib.mkEnableOption "Media automation";
|
enableAll = lib.mkEnableOption "media automation suite";
|
||||||
|
|
||||||
bazarr = {
|
bazarr = {
|
||||||
enable = lib.my.mkDisableOption "Bazarr";
|
enable = lib.mkEnableOption "Bazarr" // { default = cfg.enableAll; };;
|
||||||
};
|
};
|
||||||
|
|
||||||
lidarr = {
|
lidarr = {
|
||||||
enable = lib.my.mkDisableOption "Lidarr";
|
enable = lib.mkEnableOption "Lidarr" // { default = cfg.enableAll; };
|
||||||
};
|
};
|
||||||
|
|
||||||
radarr = {
|
radarr = {
|
||||||
enable = lib.my.mkDisableOption "Radarr";
|
enable = lib.mkEnableOption "Radarr" // { default = cfg.enableAll; };
|
||||||
};
|
};
|
||||||
|
|
||||||
readarr = {
|
readarr = {
|
||||||
enable = lib.my.mkDisableOption "Readarr";
|
enable = lib.mkEnableOption "Readarr" // { default = cfg.enableAll; };
|
||||||
};
|
};
|
||||||
|
|
||||||
sonarr = {
|
sonarr = {
|
||||||
enable = lib.my.mkDisableOption "Sonarr";
|
enable = lib.mkEnableOption "Sonarr" // { default = cfg.enableAll; };
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable (lib.mkMerge [
|
config = (lib.mkMerge [
|
||||||
{
|
|
||||||
# Set-up media group
|
|
||||||
users.groups.media = { };
|
|
||||||
}
|
|
||||||
# Bazarr does not log authentication failures...
|
# Bazarr does not log authentication failures...
|
||||||
(mkFullConfig "bazarr")
|
(mkFullConfig "bazarr")
|
||||||
# Lidarr for music
|
# Lidarr for music
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue