diff --git a/hosts/server/configuration.nix b/hosts/server/configuration.nix index b2d08d6..108f459 100644 --- a/hosts/server/configuration.nix +++ b/hosts/server/configuration.nix @@ -34,6 +34,13 @@ }; }; + networking.nameservers = [ + "1.1.1.1" + "1.0.0.1" + "8.8.8.8" + "8.8.4.4" + ]; + service = { selfhost = { htop = true; diff --git a/services/self_host.nix b/services/self_host.nix index 6703929..9a146e3 100644 --- a/services/self_host.nix +++ b/services/self_host.nix @@ -23,6 +23,14 @@ let lib ; }; + jellyfin = import ./self_host/jellyfin.nix { + inherit + inputs + config + pkgs + lib + ; + }; mail = import ./self_host/mail.nix { inherit inputs @@ -68,6 +76,7 @@ in { imports = [ git + jellyfin htop mail monitor @@ -92,6 +101,11 @@ in default = false; description = "Enable the htop"; }; + jellyfin = lib.mkOption { + type = lib.types.bool; + default = false; + description = "Enable the jellyfin"; + }; mail = lib.mkOption { type = lib.types.bool; default = false; diff --git a/services/self_host/jellyfin.nix b/services/self_host/jellyfin.nix new file mode 100644 index 0000000..7de7151 --- /dev/null +++ b/services/self_host/jellyfin.nix @@ -0,0 +1,43 @@ +{ +config, +pkgs, +lib, +... +}: +let + cfg = config.service.selfhost.jellyfin; +in + { + config = lib.mkIf cfg { + services = { + jellyfin = + { + enable = true; + dataDir = "/mnt/data/media"; + openFirewall = true; + }; + + qbittorrent = { + enable = true; + dataDir = "/mnt/data/downloads"; + webui.port = 8137; + }; + + radarr = { + enable = true; + dataDir = "/var/lib/radarr"; + user = "radarr"; + group = "media"; + openFirewall = true; + }; + + prowlarr = { + enable = true; + dataDir = "/var/lib/prowlarr"; + openFirewall = true; + }; + + bazarr.enable = true; + }; + }; +} diff --git a/services/self_host/sso.nix b/services/self_host/sso.nix index 6befb5a..bac96d5 100644 --- a/services/self_host/sso.nix +++ b/services/self_host/sso.nix @@ -74,7 +74,7 @@ in AUTHENTIK_REDIS__PORT = 6380; }; }; - redis.servers.authentik.port = lib.mkForce 6380; + redis.servers."authentik".port = lib.mkForce 6380; postgresql = { enable = true; ensureDatabases = [