Change to nodePackages and nodePackages_latest

currently LTS 12.x and Current 14.x
This commit is contained in:
Christian Albrecht 2020-05-29 18:25:11 +02:00
parent 8a03e80ea7
commit 2312f5fbc4
No known key found for this signature in database
GPG Key ID: 866AF4B25DF7EB00
2 changed files with 14 additions and 17 deletions

View File

@ -12,10 +12,9 @@ When it is desired to use NPM libraries in a development project, use the
`node2nix` generator directly on the `package.json` configuration file of the `node2nix` generator directly on the `package.json` configuration file of the
project. project.
The package set also provides support for multiple Node.js versions. The policy The package set provides support for the official stable Node.js versions.
is that a new package should be added to the collection for the latest stable LTS The latest stable LTS release in `nodePackages`, as well as the latest stable
release (which is currently 10.x), unless there is an explicit reason to support Current release in `nodePackages_latest`.
a different release.
If your package uses native addons, you need to examine what kind of native If your package uses native addons, you need to examine what kind of native
build system it uses. Here are some examples: build system it uses. Here are some examples:
@ -26,7 +25,7 @@ build system it uses. Here are some examples:
After you have identified the correct system, you need to override your package After you have identified the correct system, you need to override your package
expression while adding in build system as a build input. For example, `dat` expression while adding in build system as a build input. For example, `dat`
requires `node-gyp-build`, so we override its expression in `default-v12.nix`: requires `node-gyp-build`, so we override its expression in `default.nix`:
```nix ```nix
dat = nodePackages.dat.override (oldAttrs: { dat = nodePackages.dat.override (oldAttrs: {
@ -36,14 +35,14 @@ dat = nodePackages.dat.override (oldAttrs: {
To add a package from NPM to nixpkgs: To add a package from NPM to nixpkgs:
1. Modify `pkgs/development/node-packages/node-packages-v12.json` to add, update 1. Modify `pkgs/development/node-packages/node-packages.json` to add, update
or remove package entries. (Or `pkgs/development/node-packages/node-packages-v8.json` or remove package entries to have it included in `nodePackages` and
for packages depending on Node.js 8.x) `nodePackages_latest`.
2. Run the script: `(cd pkgs/development/node-packages && ./generate.sh)`. 2. Run the script: `(cd pkgs/development/node-packages && ./generate.sh)`.
3. Build your new package to test your changes: 3. Build your new package to test your changes:
`cd /path/to/nixpkgs && nix-build -A nodePackages.<new-or-updated-package>`. `cd /path/to/nixpkgs && nix-build -A nodePackages.<new-or-updated-package>`.
To build against a specific Node.js version (e.g. 12.x): To build against the latest stable Current Node.js version (e.g. 14.x):
`nix-build -A nodePackages_12_x.<new-or-updated-package>` `nix-build -A nodePackages_latest.<new-or-updated-package>`
4. Add and commit all modified and generated files. 4. Add and commit all modified and generated files.
For more information about the generation process, consult the For more information about the generation process, consult the

View File

@ -4827,7 +4827,7 @@ in
nodejs = hiPrio nodejs-12_x; nodejs = hiPrio nodejs-12_x;
nodejs-slim = nodejs-slim-10_x; nodejs-slim = nodejs-slim-12_x;
nodejs-10_x = callPackage ../development/web/nodejs/v10.nix { }; nodejs-10_x = callPackage ../development/web/nodejs/v10.nix { };
@ -4851,16 +4851,14 @@ in
nodejs_latest = nodejs-14_x; nodejs_latest = nodejs-14_x;
nodejs-slim_latest = nodejs-slim-14_x; nodejs-slim_latest = nodejs-slim-14_x;
nodePackages_13_x = dontRecurseIntoAttrs (callPackage ../development/node-packages/default-v13.nix { nodePackages_latest = dontRecurseIntoAttrs (callPackage ../development/node-packages/default.nix {
nodejs = pkgs.nodejs-13_x; nodejs = pkgs.nodejs_latest;
}); });
nodePackages_12_x = dontRecurseIntoAttrs (callPackage ../development/node-packages/default-v12.nix { nodePackages = dontRecurseIntoAttrs (callPackage ../development/node-packages/default.nix {
nodejs = pkgs.nodejs-12_x; nodejs = pkgs.nodejs;
}); });
nodePackages = nodePackages_12_x;
now-cli = callPackage ../development/web/now-cli {}; now-cli = callPackage ../development/web/now-cli {};
file-rename = callPackage ../tools/filesystems/file-rename { }; file-rename = callPackage ../tools/filesystems/file-rename { };