summary refs log tree commit diff
path: root/gnu/packages/node-xyz.scm
diff options
context:
space:
mode:
authorPhilip McGrath <philip@philipmcgrath.com>2022-01-08 03:42:10 -0500
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2022-01-09 02:07:15 +0100
commitfa802f39dc23db483a1395dc5319a243d9b82d39 (patch)
treefd146c2239ffd5eb5bfb73c51c8b0cf46098c682 /gnu/packages/node-xyz.scm
parent4e5c1d4f0af2a2bb3cfa3a232e02239203918c4e (diff)
downloadguix-fa802f39dc23db483a1395dc5319a243d9b82d39.tar.gz
gnu: Add node-nan.
* gnu/packages/node-xyz.scm (node-nan): New variable.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu/packages/node-xyz.scm')
-rw-r--r--gnu/packages/node-xyz.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 58fdc1dc33..6de0138b72 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -560,3 +560,42 @@ such as rainbows.")
     (description "@code{node-irc} is an IRC client library for Node.js.
 It has functions for joining, parting, talking, and many other IRC commands.")
     (license license:gpl3+)))
+
+(define-public node-nan
+  (package
+    (name "node-nan")
+    (version "2.15.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/nodejs/nan")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "18xslh9va5ld872scrp5y4251ax9s3c6qh0lnl1200lpzbsxy7yd"))))
+    (build-system node-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'patch-dependencies 'delete-dependencies
+           (lambda args
+             (delete-dependencies
+              '("bindings"
+                "commander"
+                "glob"
+                "request"
+                "node-gyp" ;; would be needed for tests
+                "tap"
+                "xtend")))))
+       ;; tests need tap and other dependencies
+       #:tests? #f))
+    (inputs
+     (list node-readable-stream))
+    (home-page "https://github.com/nodejs/nan")
+    (synopsis "Native Abstractions for Node.js")
+    (description "Native Abstractions for Node.js (``NaN'') provides a header
+file filled with macros and utilities for making add-on development for Node.js
+easier across versions.  The goal is to provide all logic necessary to develop
+native Node.js addons without having to inspect @code{NODE_MODULE_VERSION}.")
+    (license license:expat)))