summary refs log tree commit diff
path: root/nixos/modules/services/misc/jellyfin.nix
diff options
context:
space:
mode:
authorNoah Hendrickson <nhendrickson@backtrace.io>2020-08-16 11:41:41 -0400
committerNoah Hendrickson <nhendrickson@backtrace.io>2020-08-16 11:41:41 -0400
commitce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01 (patch)
treece6988b5f04b30bea9886a902de24cdbd3291d40 /nixos/modules/services/misc/jellyfin.nix
parent6a71fd341dc416abcbec829b2ce0ccff94e2f6ff (diff)
downloadnixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar.gz
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar.bz2
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar.lz
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar.xz
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.tar.zst
nixpkgs-ce9f0c42f9b0899d6cf80ce9781ab8b3cc8bab01.zip
nixos/jellyfin: added a package option to the options section, defaults to using the default jellyfin package if nixos version is 20.09 or greater, otherwise will default to using the new jellyfin_10_5 derivation for older systems.
Diffstat (limited to 'nixos/modules/services/misc/jellyfin.nix')
-rw-r--r--nixos/modules/services/misc/jellyfin.nix15
1 files changed, 14 insertions, 1 deletions
diff --git a/nixos/modules/services/misc/jellyfin.nix b/nixos/modules/services/misc/jellyfin.nix
index 6ecdfb57dc3..0493dadea94 100644
--- a/nixos/modules/services/misc/jellyfin.nix
+++ b/nixos/modules/services/misc/jellyfin.nix
@@ -16,6 +16,14 @@ in
         description = "User account under which Jellyfin runs.";
       };
 
+      package = mkOption {
+        type = types.package;
+        example = literalExample "pkgs.jellyfin";
+        description = ''
+          Jellyfin package to use.
+        '';
+      };
+
       group = mkOption {
         type = types.str;
         default = "jellyfin";
@@ -35,11 +43,16 @@ in
         Group = cfg.group;
         StateDirectory = "jellyfin";
         CacheDirectory = "jellyfin";
-        ExecStart = "${pkgs.jellyfin}/bin/jellyfin --datadir '/var/lib/${StateDirectory}' --cachedir '/var/cache/${CacheDirectory}'";
+        ExecStart = "${cfg.package}/bin/jellyfin --datadir '/var/lib/${StateDirectory}' --cachedir '/var/cache/${CacheDirectory}'";
         Restart = "on-failure";
       };
     };
 
+    services.jellyfin.package = mkDefault (
+      if versionAtLeast config.system.stateVersion "20.09" then pkgs.jellyfin
+        else pkgs.jellyfin_10_5
+    );
+
     users.users = mkIf (cfg.user == "jellyfin") {
       jellyfin = {
         group = cfg.group;