From 88faa7ae8e08f2d08eeef515d325014ab3da831d Mon Sep 17 00:00:00 2001 From: Chris Moultrie <821688+tebriel@users.noreply.github.com> Date: Tue, 31 Mar 2026 22:13:33 -0400 Subject: [PATCH] navidrome: 0.60.3 -> 0.61.1 --- doc/release-notes/rl-2605.section.md | 2 ++ pkgs/by-name/na/navidrome/package.nix | 29 +++++++++++++++++++-------- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/doc/release-notes/rl-2605.section.md b/doc/release-notes/rl-2605.section.md index 657978141a02..cc423f2376e1 100644 --- a/doc/release-notes/rl-2605.section.md +++ b/doc/release-notes/rl-2605.section.md @@ -310,6 +310,8 @@ gnuradioMinimal.override { - `nodejs` is now a simple wrapper for `nodejs-slim`+`nodejs-slim.npm`+`nodejs-slim.corepack`, meaning it is no longer possible to reference or override its attributes or outputs (e.g. `nodejs.libv8` must be replaced with `nodejs-slim.libv8`, `nodejs.nativeBuildInputs` with `nodejs-slim.nativeBuildInputs`, etc.). +- `navidrome` has removed the built-in Spotify integration https://github.com/navidrome/navidrome/releases/tag/v0.61.0 has details on optional replacements + - `mold` is now wrapped by default. - The `neovim` package and module now disable by default the `python3` and `ruby` providers, unused by most users and reducing closure size from 365MiB to 240MiB. Host provider executables are not exposed anymore along with the neovim wrapper. You can still refer to those using the neovim provider variables (e.g., `python3_host_prog`). diff --git a/pkgs/by-name/na/navidrome/package.nix b/pkgs/by-name/na/navidrome/package.nix index ed97690bac4e..c8267ea640d0 100644 --- a/pkgs/by-name/na/navidrome/package.nix +++ b/pkgs/by-name/na/navidrome/package.nix @@ -3,6 +3,7 @@ buildPackages, fetchFromGitHub, fetchNpmDeps, + fetchpatch, lib, nodejs_24, npmHooks, @@ -19,23 +20,37 @@ buildGoModule (finalAttrs: { pname = "navidrome"; - version = "0.60.3"; + version = "0.61.1"; src = fetchFromGitHub { owner = "navidrome"; repo = "navidrome"; rev = "v${finalAttrs.version}"; - hash = "sha256-DwVmNJKjwEhTKIVPYFqaUR9SD4HpACkK4XJoFfQVRus="; + hash = "sha256-BRMJCBQl38AqsCI2UYQ9X36U57pg9uuiHsx8sHpVBKE="; }; - vendorHash = "sha256-StI4CfWN/OnbYFktRriTJWMHTuJkCinpYk9qgsxMGG8="; + patches = [ + # https://github.com/navidrome/navidrome/pull/5276 (waiting on release) + (fetchpatch { + name = "regenerate-package-lock-json"; + url = "https://github.com/navidrome/navidrome/compare/v0.61.1...33a05ef662760fd9feb0a3ae43c7fe149eda610b.patch"; + hash = "sha256-IQ0wJ7vsSaLjBZS/fKIApNM8UV8oj6L2taCQIPhHvwg="; + }) + ]; + + vendorHash = "sha256-iVXJPP41rIpC6Tu1P/jWcePYCQ2Z9lEoTOrDLN26kTU="; npmRoot = "ui"; npmDeps = fetchNpmDeps { - inherit (finalAttrs) src; + inherit (finalAttrs) src patches; + # Remove after https://github.com/navidrome/navidrome/pull/5276 is released + # patches are applied after we run npmDeps without inheriting patches here + # so we have to get out of the sourceRoot to apply it then get back in to it + prePatch = "cd .."; + postPatch = "cd ui"; sourceRoot = "${finalAttrs.src.name}/ui"; - hash = "sha256-EA2WM7xaqP7rS0pjx+yXwpjdauaduvDefmFH73eByxI="; + hash = "sha256-iXey2XmDwsTR1/bIrBLzm6uvVGzPgQFcDLUtNy8robI="; }; nativeBuildInputs = [ @@ -66,9 +81,6 @@ buildGoModule (finalAttrs: { env = lib.optionalAttrs stdenv.cc.isGNU { CGO_CFLAGS = toString [ "-Wno-return-local-addr" ]; - # Workaround for https://github.com/golang/go/issues/77387 - # Remove when go1.25.8 has been merged - CGO_CFLAGS_ALLOW = "--define-prefix"; }; postPatch = '' @@ -81,6 +93,7 @@ buildGoModule (finalAttrs: { tags = [ "netgo" + "sqlite_fts5" ]; nativeInstallCheckInputs = [ versionCheckHook ];