diff --git a/pkgs/build-support/node/build-npm-package/default.nix b/pkgs/build-support/node/build-npm-package/default.nix index 9832e11ed923..685ea9a85038 100644 --- a/pkgs/build-support/node/build-npm-package/default.nix +++ b/pkgs/build-support/node/build-npm-package/default.nix @@ -104,6 +104,16 @@ lib.extendMkDerivation { # Stripping takes way too long with the amount of files required by a typical Node.js project. dontStrip = args.dontStrip or true; + env = { + npm_config_arch = + { + "x86_64" = "x64"; + "aarch64" = "arm64"; + } + .${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name; + npm_config_platform = stdenv.hostPlatform.parsed.kernel.name; + } // (args.env or { }); + meta = (args.meta or { }) // { platforms = args.meta.platforms or nodejs.meta.platforms; }; diff --git a/pkgs/by-name/no/node-gyp/package.nix b/pkgs/by-name/no/node-gyp/package.nix index d440e1a228b3..eb9aca673bb9 100644 --- a/pkgs/by-name/no/node-gyp/package.nix +++ b/pkgs/by-name/no/node-gyp/package.nix @@ -21,7 +21,7 @@ postPatch = '' ln -s ${./package-lock.json} package-lock.json - sed -E -i -e 's/sys.platform/"${stdenv.targetPlatform.parsed.kernel.name}"/g' gyp/pylib/gyp/**.py + substituteInPlace gyp/pylib/gyp/**.py --replace-fail sys.platform '"${stdenv.targetPlatform.parsed.kernel.name}"' ''; dontNpmBuild = true;