jellyfin{,-web}: 10.10.7 -> 10.11.0 (#453777)

This commit is contained in:
dish
2025-10-24 01:28:38 +00:00
committed by GitHub
5 changed files with 379 additions and 274 deletions
+4
View File
@@ -301,6 +301,10 @@
- `searx` was updated to use `envsubst` instead of `sed` for parsing secrets from environment variables.
If your previous configuration included a secret reference like `server.secret_key = "@SEARX_SECRET_KEY@"`, you must migrate to the new envsubst syntax: `server.secret_key = "$SEARX_SECRET_KEY"`.
- `jellyfin` was updated to `10.11.x`, which includes heavy backend changes.
Make sure to backup your data and configuration directories
and read the [Jellyfin 10.11.0 release announcement](https://jellyfin.org/posts/jellyfin-release-10.11.0/).
- A new hardening flag, `glibcxxassertions` was made available, corresponding to the glibc `_GLIBCXX_ASSERTIONS` option.
- `versionCheckHook`: Packages that previously relied solely on `pname` to locate the program used to version check, but have a differing `meta.mainProgram` entry, might now fail.
+8 -7
View File
@@ -4,12 +4,12 @@
name = "jellyfin";
meta.maintainers = with lib.maintainers; [ minijackson ];
nodes.machine =
{ ... }:
{
services.jellyfin.enable = true;
environment.systemPackages = with pkgs; [ ffmpeg ];
};
nodes.machine = {
services.jellyfin.enable = true;
environment.systemPackages = with pkgs; [ ffmpeg ];
# Jellyfin fails to start if the data dir doesn't have at least 2GiB of free space
virtualisation.diskSize = 3 * 1024;
};
# Documentation of the Jellyfin API: https://api.jellyfin.org/
# Beware, this link can be resource intensive
@@ -30,6 +30,7 @@
machine.wait_for_unit("jellyfin.service")
machine.wait_for_open_port(8096)
machine.wait_until_succeeds("journalctl --since -1m --unit jellyfin --grep 'Startup complete'")
machine.succeed("curl --fail http://localhost:8096/")
machine.wait_until_succeeds("curl --fail http://localhost:8096/health | grep Healthy")
@@ -105,7 +106,7 @@
folders_str = machine.succeed(api_get("/Library/VirtualFolders"))
folders = json.loads(folders_str)
print(folders)
return all(folder["RefreshStatus"] == "Idle" for folder in folders)
return all(folder.get("RefreshStatus") == "Idle" for folder in folders)
retry(is_refreshed)
+3 -3
View File
@@ -13,7 +13,7 @@
}:
buildNpmPackage rec {
pname = "jellyfin-web";
version = "10.10.7";
version = "10.11.0";
src =
assert version == jellyfin.version;
@@ -21,7 +21,7 @@ buildNpmPackage rec {
owner = "jellyfin";
repo = "jellyfin-web";
rev = "v${version}";
hash = "sha256-jX9Qut8YsJRyKI2L7Aww4+6G8z741WzN37CUx3KWQfY=";
hash = "sha256-LcZNfFXM2dFHeUheSnri1t4eBYvlCfF2wlaqWlh+U7A=";
};
nodejs = nodejs_20; # does not build with 22
@@ -31,7 +31,7 @@ buildNpmPackage rec {
--replace-fail "git describe --always --dirty" "echo ${src.rev}" \
'';
npmDepsHash = "sha256-nfvqVByD3Kweq+nFJQY4R2uRX3mx/qJvGFiKiOyMUdw=";
npmDepsHash = "sha256-w3xMbkxNGFEBR2K1PhJW6pr943DfJvyQvILiF0VuLlw=";
preBuild = ''
# using sass-embedded fails at executing node_modules/sass-embedded-linux-x64/dart-sass/src/dart
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -13,13 +13,13 @@
buildDotnetModule rec {
pname = "jellyfin";
version = "10.10.7"; # ensure that jellyfin-web has matching version
version = "10.11.0"; # ensure that jellyfin-web has matching version
src = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin";
rev = "v${version}";
hash = "sha256-GWpzX8DvCafHb5V9it0ZPTXKm+NbLS7Oepe/CcMiFuI=";
hash = "sha256-8kvN2ZugmjjgSMepDdP9tc48362b6w+RpIsp/IXaivM=";
};
propagatedBuildInputs = [ sqlite ];
@@ -32,8 +32,8 @@ buildDotnetModule rec {
fontconfig
freetype
];
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
dotnet-sdk = dotnetCorePackages.sdk_9_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_9_0;
dotnetBuildFlags = [ "--no-self-contained" ];
makeWrapperArgs = [