nix/modules/services/plex.nix
2024-12-24 15:08:14 +01:00

55 lines
1.1 KiB
Nix

{
lib,
config,
pkgs,
...
}:
let
cfg = config.my.services.plex;
in
{
options.my.services.plex = {
enable = lib.mkEnableOption "Enable Plex, Tautulli and Ombi";
tautulli.enable = lib.mkEnableOption "Enable Tautulli";
ombi.enable = lib.mkEnableOption "Enable Ombi";
};
config = lib.mkMerge [
(lib.mkIf cfg.enable {
services.plex = {
enable = true;
openFirewall = true;
extraPlugins = [
(builtins.path {
name = "Audnexus.bundle";
path = pkgs.fetchFromGitHub {
owner = "djdembeck";
repo = "Audnexus.bundle";
rev = "v1.3.2";
sha256 = "sha256-BpwyedIjkXS+bHBsIeCpSoChyWCX5A38ywe71qo3tEI=";
};
})
];
};
})
(lib.mkIf cfg.tautulli.enable {
services.tautulli = {
enable = true;
port = 8181;
openFirewall = true;
};
})
(lib.mkIf cfg.ombi.enable {
services.ombi = {
enable = true;
port = 5000;
openFirewall = true;
};
})
];
}