main @ 39 LINES
[ HISTORY ] [ UP ]
┌─ NIX ──────────────────────────────────────────────────────────────────────┐
│ { │
│ config, │
│ lib, │
│ ook, │
│ self, │
│ ... │
│ }: let │
│ ookflixLib = import ../lib.nix {inherit lib config self;}; │
│ inherit (ookflixLib) mkServiceUser mkServiceStateDir; │
│ inherit (lib) mkIf; │
│ inherit (ook.lib.container) mkContainerLabel mkContainerEnvironment mkContainerP │
│ ort; │
│ inherit (config.ooknet.server.ookflix) groups; │
│ inherit (config.ooknet.server.ookflix.services) tautulli; │
│ in { │
│ config = mkIf tautulli.enable { │
│ users = mkServiceUser tautulli.user.name; │
│ systemd.tmpfiles.settings.tautulliStateDir = mkServiceStateDir "tautulli"; │
│ virtualisation.oci-containers.containers = { │
│ # plex monitoring service │
│ tautulli = { │
│ image = "lscr.io/linuxserver/tautulli:latest"; │
│ autoStart = true; │
│ hostname = "tautulli"; │
│ ports = [(mkContainerPort tautulli.port)]; │
│ volumes = ["${tautulli.stateDir}:/config"]; │
│ labels = mkContainerLabel { │
│ name = "tautulli"; │
│ inherit (tautulli) port domain; │
│ homepage = { │
│ group = "monitoring"; │
│ description = "media-server monitoring"; │
│ }; │
│ }; │
│ environment = mkContainerEnvironment tautulli.user.id groups.media.id; │
│ }; │
│ }; │
│ }; │
│ } │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ NIX ────────────────────────────────┐
│ { │
│ config, │
│ lib, │
│ ook, │
│ self, │
│ ... │
│ }: let │
│ ookflixLib = import ../lib.nix {inherit li │
│ b config self;}; │
│ inherit (ookflixLib) mkServiceUser mkServi │
│ ceStateDir; │
│ inherit (lib) mkIf; │
│ inherit (ook.lib.container) mkContainerLab │
│ el mkContainerEnvironment mkContainerPort; │
│ inherit (config.ooknet.server.ookflix) gro │
│ ups; │
│ inherit (config.ooknet.server.ookflix.serv │
│ ices) tautulli; │
│ in { │
│ config = mkIf tautulli.enable { │
│ users = mkServiceUser tautulli.user.name │
│ ; │
│ systemd.tmpfiles.settings.tautulliStateD │
│ ir = mkServiceStateDir "tautulli"; │
│ virtualisation.oci-containers.containers │
│ = { │
│ # plex monitoring service │
│ tautulli = { │
│ image = "lscr.io/linuxserver/tautull │
│ i:latest"; │
│ autoStart = true; │
│ hostname = "tautulli"; │
│ ports = [(mkContainerPort tautulli.p │
│ ort)]; │
│ volumes = ["${tautulli.stateDir}:/co │
│ nfig"]; │
│ labels = mkContainerLabel { │
│ name = "tautulli"; │
│ inherit (tautulli) port domain; │
│ homepage = { │
│ group = "monitoring"; │
│ description = "media-server moni │
│ toring"; │
│ }; │
│ }; │
│ environment = mkContainerEnvironment │
│ tautulli.user.id groups.media.id; │
│ }; │
│ }; │
│ }; │
│ } │
└──────────────────────────────────────────────┘
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET