From 7cb019f1adba70da78384b3e41da9818769fe86c Mon Sep 17 00:00:00 2001 From: dish Date: Thu, 27 Nov 2025 11:32:09 -0500 Subject: [PATCH] node-gyp-build: migrate from nodePackages --- pkgs/by-name/no/node-gyp-build/package.nix | 49 +++++++++++++++++++ pkgs/development/node-packages/aliases.nix | 1 + .../node-packages/node-packages.json | 1 - .../node-packages/node-packages.nix | 18 ------- 4 files changed, 50 insertions(+), 19 deletions(-) create mode 100644 pkgs/by-name/no/node-gyp-build/package.nix diff --git a/pkgs/by-name/no/node-gyp-build/package.nix b/pkgs/by-name/no/node-gyp-build/package.nix new file mode 100644 index 000000000000..e65f2905e657 --- /dev/null +++ b/pkgs/by-name/no/node-gyp-build/package.nix @@ -0,0 +1,49 @@ +{ + lib, + stdenv, + fetchFromGitHub, + nodejs, + nix-update-script, + +}: +stdenv.mkDerivation (finalAttrs: { + pname = "node-gyp-build"; + version = "4.8.4"; + + src = fetchFromGitHub { + owner = "prebuild"; + repo = "node-gyp-build"; + tag = "v${finalAttrs.version}"; + hash = "sha256-65EQGGpwL0C8AOhFyf62nVEt4e2pCS0lAv+20kt3Zdk="; + }; + + dontBuild = true; + + buildInputs = [ + nodejs + ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib/node_modules/node-gyp-build + mkdir -p $out/bin + + chmod +x ./{bin,build-test,optional}.js + mv *.js package.json $out/lib/node_modules/node-gyp-build + + ln -s $out/lib/node_modules/node-gyp-build/bin.js $out/bin/node-gyp-build + ln -s $out/lib/node_modules/node-gyp-build/optional.js $out/bin/node-gyp-build-optional + ln -s $out/lib/node_modules/node-gyp-build/build-test.js $out/bin/node-gyp-build-test + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Build tool and bindings loader for node-gyp that supports prebuilds"; + homepage = "https://github.com/prebuild/node-gyp-build"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ pyrox0 ]; + mainProgram = "node-gyp-build"; + }; +}) diff --git a/pkgs/development/node-packages/aliases.nix b/pkgs/development/node-packages/aliases.nix index bc3d17cb6de0..1ebb75c70b3e 100644 --- a/pkgs/development/node-packages/aliases.nix +++ b/pkgs/development/node-packages/aliases.nix @@ -252,6 +252,7 @@ mapAliases { near-cli = throw "'near-cli' has been removed as upstream has deprecated it and archived the source code repo"; # Added 2025-11-10 neovim = pkgs.neovim-node-client; # added 2024-11-13 nijs = throw "'nijs' has been removed as it was unmaintained upstream"; # Added 2025-11-14 + inherit (pkgs) node-gyp-build; # Added 2025-11-27 node-inspector = throw "node-inspector was removed because it was broken"; # added 2023-08-21 inherit (pkgs) node-gyp; # added 2024-08-13 inherit (pkgs) node-pre-gyp; # added 2024-08-05 diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json index 904632bb4cb2..721a25129b03 100644 --- a/pkgs/development/node-packages/node-packages.json +++ b/pkgs/development/node-packages/node-packages.json @@ -21,7 +21,6 @@ , "jsdoc" , "lcov-result-merger" , "mathjax" -, "node-gyp-build" , "node2nix" , "postcss" , "prebuild-install" diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix index f90b3574fd60..a142882d87a3 100644 --- a/pkgs/development/node-packages/node-packages.nix +++ b/pkgs/development/node-packages/node-packages.nix @@ -23635,24 +23635,6 @@ in bypassCache = true; reconstructLock = true; }; - node-gyp-build = nodeEnv.buildNodePackage { - name = "node-gyp-build"; - packageName = "node-gyp-build"; - version = "4.8.4"; - src = fetchurl { - url = "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz"; - sha512 = "LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ=="; - }; - buildInputs = globalBuildInputs; - meta = { - description = "Build tool and bindings loader for node-gyp that supports prebuilds"; - homepage = "https://github.com/prebuild/node-gyp-build"; - license = "MIT"; - }; - production = true; - bypassCache = true; - reconstructLock = true; - }; node2nix = nodeEnv.buildNodePackage { name = "node2nix"; packageName = "node2nix";