From 00de2104fc1048a36bb8526b96c9b2d285a321a9 Mon Sep 17 00:00:00 2001 From: Wout Mertens Date: Wed, 20 Sep 2023 09:54:38 +0200 Subject: [PATCH] corepack: PR review updates Co-authored-by: Antoine du Hamel Co-authored-by: Sandro Jaeckel --- .../javascript.section.md | 2 +- pkgs/development/web/nodejs/corepack.nix | 18 +++++----- pkgs/top-level/all-packages.nix | 34 +++++++------------ 3 files changed, 21 insertions(+), 33 deletions(-) diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md index 87d9195fd2a..fb1dd898c8a 100644 --- a/doc/languages-frameworks/javascript.section.md +++ b/doc/languages-frameworks/javascript.section.md @@ -219,7 +219,7 @@ sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= ### corepack {#javascript-corepack} -This package puts the corepack wrappers for npm, pnpm and yarn in your PATH, and they will honor the `packageManager` setting in the `package.json`. +This package puts the corepack wrappers for pnpm and yarn in your PATH, and they will honor the `packageManager` setting in the `package.json`. ### node2nix {#javascript-node2nix} diff --git a/pkgs/development/web/nodejs/corepack.nix b/pkgs/development/web/nodejs/corepack.nix index 44cc1ea1bc6..c83d3f1645f 100644 --- a/pkgs/development/web/nodejs/corepack.nix +++ b/pkgs/development/web/nodejs/corepack.nix @@ -1,26 +1,24 @@ { lib, stdenv, nodejs }: -let - inherit (nodejs) version; -in stdenv.mkDerivation { - name = "corepack-nodejs-${version}"; + pname = "corepack-nodejs"; + inherit (nodejs) version; nativeBuildInputs = [ nodejs ]; - unpackPhase = "true"; + dontUnpack = true; installPhase = '' mkdir -p $out/bin corepack enable --install-directory $out/bin - # Also wrap npm - corepack enable --install-directory $out/bin npm + # Enabling npm caused some crashes - leaving out for now + # corepack enable --install-directory $out/bin npm ''; meta = { - description = "Wrappers for npm, pnpm and yarn via nodejs's corepack"; - homepage = "https://nodejs.org"; - changelog = "https://github.com/nodejs/node/releases/tag/v${version}"; + description = "Wrappers for npm, pnpm and Yarn via Node.js Corepack"; + homepage = "https://nodejs.org/api/corepack.html"; + changelog = "https://github.com/nodejs/node/releases/tag/v${nodejs.version}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ wmertens ]; platforms = lib.platforms.linux ++ lib.platforms.darwin; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b56112d3199..cc82178c2fb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10236,40 +10236,30 @@ with pkgs; nodenv = callPackage ../development/tools/nodenv { }; nodejs = hiPrio nodejs_18; - corepack = hiPrio (callPackage ../development/web/nodejs/corepack.nix { - nodejs = nodejs; }); - nodejs-slim = nodejs-slim_18; + corepack = hiPrio corepack_18; - nodejs_14 = callPackage ../development/web/nodejs/v14.nix { - openssl = openssl_1_1; - }; + nodejs_14 = callPackage ../development/web/nodejs/v14.nix { openssl = openssl_1_1; }; nodejs-slim_14 = callPackage ../development/web/nodejs/v14.nix { openssl = openssl_1_1; enableNpm = false; }; + nodejs_16 = callPackage ../development/web/nodejs/v16.nix { }; - nodejs-slim_16 = callPackage ../development/web/nodejs/v16.nix { - enableNpm = false; - }; + nodejs-slim_16 = callPackage ../development/web/nodejs/v16.nix { enableNpm = false; }; + nodejs_18 = callPackage ../development/web/nodejs/v18.nix { }; - nodejs-slim_18 = callPackage ../development/web/nodejs/v18.nix { - enableNpm = false; - }; - corepack_18 = hiPrio (callPackage ../development/web/nodejs/corepack.nix - { nodejs = nodejs_18; }); + nodejs-slim_18 = callPackage ../development/web/nodejs/v18.nix { enableNpm = false; }; + corepack_18 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_18; }); + nodejs_20 = callPackage ../development/web/nodejs/v20.nix { }; - nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { - enableNpm = false; - }; - corepack_20 = hiPrio (callPackage ../development/web/nodejs/corepack.nix - { nodejs = nodejs_20; }); + nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { enableNpm = false; }; + corepack_20 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_20; }); + # Update this when adding the newest nodejs major version! nodejs_latest = nodejs_20; nodejs-slim_latest = nodejs-slim_20; - corepack_latest = hiPrio (callPackage ../development/web/nodejs/corepack.nix - { nodejs = nodejs_latest; }); - + corepack_latest = hiPrio corepack_20; buildNpmPackage = callPackage ../build-support/node/build-npm-package { };