diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2023-10-08 12:01:52 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-08 12:01:52 +0000 |
commit | 81871f4c87a029aa89e9e9f58037ab2bc50baf0b (patch) | |
tree | 0503b9eba37e27fbd54e8cdd749180eb06b5e75b /pkgs/build-support | |
parent | 187f681cb4921d413ad940834baab18654cb0f9a (diff) | |
parent | 0b4a97a07f72bcf265034e5e2d95d6fa02e694a7 (diff) | |
download | nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar.gz nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar.bz2 nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar.lz nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar.xz nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.tar.zst nixpkgs-81871f4c87a029aa89e9e9f58037ab2bc50baf0b.zip |
Merge staging-next into staging
Diffstat (limited to 'pkgs/build-support')
-rwxr-xr-x | pkgs/build-support/fetchgit/nix-prefetch-git | 2 | ||||
-rw-r--r-- | pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh | 23 |
2 files changed, 22 insertions, 3 deletions
diff --git a/pkgs/build-support/fetchgit/nix-prefetch-git b/pkgs/build-support/fetchgit/nix-prefetch-git index 8e3fe456e68..018cf692b88 100755 --- a/pkgs/build-support/fetchgit/nix-prefetch-git +++ b/pkgs/build-support/fetchgit/nix-prefetch-git @@ -417,7 +417,7 @@ fi tmpHomePath="$(mktemp -d "${TMPDIR:-/tmp}/nix-prefetch-git-tmp-home-XXXXXXXXXX")" exit_handlers+=(remove_tmpHomePath) HOME="$tmpHomePath" -ln -s /build/.netrc "$HOME/" +ln -s "$NIX_BUILD_TOP/.netrc" "$HOME/" unset XDG_CONFIG_HOME export GIT_CONFIG_NOSYSTEM=1 diff --git a/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh b/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh index 64ddcbd567f..79e2c4b2686 100644 --- a/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh +++ b/pkgs/build-support/node/build-npm-package/hooks/npm-install-hook.sh @@ -16,9 +16,19 @@ npmInstallHook() { cp "${npmWorkspace-.}/$file" "$dest" done < <(@jq@ --raw-output '.[0].files | map(.path) | join("\n")' <<< "$(npm pack --json --dry-run ${npmWorkspace+--workspace=$npmWorkspace} $npmPackFlags "${npmPackFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}")") + # Based on code from Python's buildPythonPackage wrap.sh script, for + # supporting both the case when makeWrapperArgs is an array and a + # IFS-separated string. + # + # TODO: remove the string branch when __structuredAttrs are used. + if [[ "${makeWrapperArgs+defined}" == "defined" && "$(declare -p makeWrapperArgs)" =~ ^'declare -a makeWrapperArgs=' ]]; then + local -a user_args=("${makeWrapperArgs[@]}") + else + local -a user_args="(${makeWrapperArgs:-})" + fi while IFS=" " read -ra bin; do mkdir -p "$out/bin" - makeWrapper @hostNode@ "$out/bin/${bin[0]}" --add-flags "$packageOut/${bin[1]}" + makeWrapper @hostNode@ "$out/bin/${bin[0]}" --add-flags "$packageOut/${bin[1]}" "${user_args[@]}" done < <(@jq@ --raw-output '(.bin | type) as $typ | if $typ == "string" then .name + " " + .bin elif $typ == "object" then .bin | to_entries | map(.key + " " + .value) | join("\n") @@ -34,7 +44,16 @@ npmInstallHook() { if [ ! -d "$nodeModulesPath" ]; then if [ -z "${dontNpmPrune-}" ]; then - npm prune --omit=dev --no-save ${npmWorkspace+--workspace=$npmWorkspace} $npmPruneFlags "${npmPruneFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}" + if ! npm prune --omit=dev --no-save ${npmWorkspace+--workspace=$npmWorkspace} $npmPruneFlags "${npmPruneFlagsArray[@]}" $npmFlags "${npmFlagsArray[@]}"; then + echo + echo + echo "ERROR: npm prune step failed" + echo + echo 'If npm tried to download additional dependencies above, try setting `dontNpmPrune = true`.' + echo + + exit 1 + fi fi find node_modules -maxdepth 1 -type d -empty -delete |