From e78366dc67634218e25dfebdb1461f3237334783 Mon Sep 17 00:00:00 2001 From: Infinidoge Date: Wed, 27 Mar 2024 04:00:50 -0400 Subject: [PATCH] Infini-OPTIPLEX: add jellyfin --- hosts/Infini-OPTIPLEX/default.nix | 1 + hosts/Infini-OPTIPLEX/jellyfin.nix | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 hosts/Infini-OPTIPLEX/jellyfin.nix diff --git a/hosts/Infini-OPTIPLEX/default.nix b/hosts/Infini-OPTIPLEX/default.nix index 65f51bd..67ec744 100644 --- a/hosts/Infini-OPTIPLEX/default.nix +++ b/hosts/Infini-OPTIPLEX/default.nix @@ -7,6 +7,7 @@ ./freshrss.nix ./thelounge.nix ./vaultwarden.nix + ./jellyfin.nix ]; system.stateVersion = "23.05"; diff --git a/hosts/Infini-OPTIPLEX/jellyfin.nix b/hosts/Infini-OPTIPLEX/jellyfin.nix new file mode 100644 index 0000000..2a84d33 --- /dev/null +++ b/hosts/Infini-OPTIPLEX/jellyfin.nix @@ -0,0 +1,30 @@ +{ config, pkgs, ... }: +let + address = "127.0.0.1"; + port = 8096; + jellyfin = "http://${address}:${toString port}"; +in +{ + services.nginx.virtualHosts."jellyfin.inx.moe" = config.common.nginx.ssl // { + locations."= /" = { + return = "302 https://$host/web/"; + }; + + locations."/" = { + proxyPass = jellyfin; + }; + + locations."/socket" = { + proxyPass = jellyfin; + proxyWebsockets = true; + }; + }; + + services.jellyfin = { + enable = true; + dataDir = "/srv/jellyfin"; + openFirewall = true; + }; + + persist.directories = with config.services.jellyfin; [ dataDir cacheDir logDir ]; +}