aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/nixos/modules/services/misc/jellyfin.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/nixos/modules/services/misc/jellyfin.nix')
-rw-r--r--nixpkgs/nixos/modules/services/misc/jellyfin.nix15
1 files changed, 14 insertions, 1 deletions
diff --git a/nixpkgs/nixos/modules/services/misc/jellyfin.nix b/nixpkgs/nixos/modules/services/misc/jellyfin.nix
index 6ecdfb57dc3..0493dadea94 100644
--- a/nixpkgs/nixos/modules/services/misc/jellyfin.nix
+++ b/nixpkgs/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;