diff options
Diffstat (limited to 'pkgs/servers/jellyfin/web.nix')
-rw-r--r-- | pkgs/servers/jellyfin/web.nix | 58 |
1 files changed, 46 insertions, 12 deletions
diff --git a/pkgs/servers/jellyfin/web.nix b/pkgs/servers/jellyfin/web.nix index b2a40c0690832..569c72e2be133 100644 --- a/pkgs/servers/jellyfin/web.nix +++ b/pkgs/servers/jellyfin/web.nix @@ -1,25 +1,54 @@ -{ lib -, fetchFromGitHub -, stdenv -, buildNpmPackage -, nix-update-script +{ + lib, + stdenv, + nodejs_20, + overrideSDK, + fetchFromGitHub, + buildNpmPackage, + nix-update-script, + pkg-config, + xcbuild, + pango, + giflib, + darwin, }: - -buildNpmPackage rec { +let + # node-canvas builds code that requires aligned_alloc, + # which on Darwin requires at least the 10.15 SDK + stdenv' = + if stdenv.isDarwin then + overrideSDK stdenv { + darwinMinVersion = "10.15"; + darwinSdkVersion = "11.0"; + } + else + stdenv; + buildNpmPackage' = buildNpmPackage.override { stdenv = stdenv'; nodejs = nodejs_20; }; +in +buildNpmPackage' rec { pname = "jellyfin-web"; - version = "10.8.13"; + version = "10.9.2"; src = fetchFromGitHub { owner = "jellyfin"; repo = "jellyfin-web"; rev = "v${version}"; - hash = "sha256-2W9s8TQV9BtxNYIrCbGRh5EUw0brwxSHohnb7269pQE="; + hash = "sha256-0MBVcMajRk+CR0nZ8Dtd3Mg4tKdLiHGs3AhI8BEqZyE="; }; - npmDepsHash = "sha256-i077UAxY2K12VXkHYbGYZRV1uhgdGUnoDbokSk2ZDIA="; + npmDepsHash = "sha256-aN+EXHRXez26oS4Ad1d9HSBkwVKnvYQMJvJVypDCk+0="; npmBuildScript = [ "build:production" ]; + nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ xcbuild ]; + + buildInputs = + [ pango ] + ++ lib.optionals stdenv.isDarwin [ + giflib + darwin.apple_sdk.frameworks.CoreText + ]; + installPhase = '' runHook preInstall @@ -29,12 +58,17 @@ buildNpmPackage rec { runHook postInstall ''; - passthru.updateScript = nix-update-script {}; + passthru.updateScript = nix-update-script { }; meta = with lib; { description = "Web Client for Jellyfin"; homepage = "https://jellyfin.org/"; license = licenses.gpl2Plus; - maintainers = with maintainers; [ nyanloutre minijackson purcell jojosch ]; + maintainers = with maintainers; [ + nyanloutre + minijackson + purcell + jojosch + ]; }; } |