From a3330a9b96b391d55785bb73e6752a7de142740a Mon Sep 17 00:00:00 2001 From: Roger Qiu Date: Thu, 21 Dec 2017 23:45:21 +1100 Subject: nodePackages: Added instructions to README about packages with binary addons --- pkgs/development/node-packages/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'pkgs/development/node-packages/README.md') diff --git a/pkgs/development/node-packages/README.md b/pkgs/development/node-packages/README.md index 79f180759b09..17a203ed12be 100644 --- a/pkgs/development/node-packages/README.md +++ b/pkgs/development/node-packages/README.md @@ -17,6 +17,23 @@ is that a new package should be added to the collection for the latest stable LT release (which is currently 6.x), unless there is an explicit reason to support a different release. +If your package uses native addons, you need to examine what kind of native +build system it uses. Here are some examples: + +* `node-gyp` +* `node-gyp-builder` +* `node-pre-gyp` + +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` +requires `node-gyp-build`, so we override its expression in `default-v6.nix`: + +```nix +dat = nodePackages.dat.override (oldAttrs: { + buildInputs = oldAttrs.buildInputs ++ [ nodePackages.node-gyp-build ]; +}); +``` + To add a package from NPM to nixpkgs: 1. Modify `pkgs/development/node-packages/node-packages-v6.json` to add, update -- cgit v1.2.3