From 4f0a7d184a072d3c828e0d25bb7efea66d08a036 Mon Sep 17 00:00:00 2001 From: ccicnce113424 Date: Wed, 25 Mar 2026 02:43:41 +0800 Subject: [PATCH] pnpmConfigHook: disable version management before any execution of pnpm commands This would prevent hanging when pnpm tries to download the version set in package.json. --- .../node/fetch-pnpm-deps/pnpm-config-hook.sh | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh b/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh index e481f627c66e..2590de95343a 100644 --- a/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh +++ b/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh @@ -17,6 +17,12 @@ pnpmConfigHook() { exit 1 fi + # If the packageManager field in package.json is set to a different pnpm version than what is in nixpkgs, + # any pnpm command would fail in that directory, the following disables this + pushd $HOME + pnpm config set manage-package-manager-versions false + popd + echo "Found 'pnpm' with version '$(pnpm --version)'" fetcherVersion=$(cat "${pnpmDeps}/.fetcher-version" || echo 1) @@ -37,13 +43,6 @@ pnpmConfigHook() { chmod -R +w "$STORE_PATH" - - # If the packageManager field in package.json is set to a different pnpm version than what is in nixpkgs, - # any pnpm command would fail in that directory, the following disables this - pushd $HOME - pnpm config set manage-package-manager-versions false - popd - pnpm config set store-dir "$STORE_PATH" # Prevent hard linking on file systems without clone support.