gnu: emacs-svg-icon: Fix grammar.
[jackhill/guix/guix.git] / gnu / packages / node-xyz.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
3 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
4 ;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
5 ;;;
6 ;;; This file is part of GNU Guix.
7 ;;;
8 ;;; GNU Guix is free software; you can redistribute it and/or modify it
9 ;;; under the terms of the GNU General Public License as published by
10 ;;; the Free Software Foundation; either version 3 of the License, or (at
11 ;;; your option) any later version.
12 ;;;
13 ;;; GNU Guix is distributed in the hope that it will be useful, but
14 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ;;; GNU General Public License for more details.
17 ;;;
18 ;;; You should have received a copy of the GNU General Public License
19 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
20
21 (define-module (gnu packages node-xyz)
22 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix packages)
24 #:use-module (guix git-download)
25 #:use-module (guix build-system node))
26
27 (define-public node-color-name
28 (package
29 (name "node-color-name")
30 (version "1.1.3")
31 (source
32 (origin
33 (method git-fetch)
34 (uri (git-reference
35 (url "https://github.com/colorjs/color-name")
36 (commit (string-append "v" version))))
37 (file-name (git-file-name name version))
38 (sha256
39 (base32
40 "09rbmj16nfwcwkhrybqxyy66bkrs50vpw6hkdqqb14l3gsyxpr74"))))
41 (build-system node-build-system)
42 (home-page "https://github.com/colorjs/color-name")
43 (synopsis "JSON with CSS color names")
44 (description
45 "This package provides a JSON list with color names and their values.")
46 (license license:expat)))
47
48 (define-public node-env-variable
49 (package
50 (name "node-env-variable")
51 (version "0.0.4")
52 (source
53 (origin
54 (method git-fetch)
55 (uri (git-reference
56 (url "https://github.com/bigpipe/env-variable")
57 (commit version)))
58 (file-name (git-file-name name version))
59 (sha256
60 (base32
61 "0nnpxjxfhy4na7fixb7p3ww6ard5xgggfm83b78i333867r4gmsq"))))
62 (build-system node-build-system)
63 (arguments '(#:tests? #f)) ; No tests.
64 (home-page "https://github.com/bigpipe/env-variable")
65 (synopsis "Environment variables for Node with fallbacks")
66 (description "This package provides environment variables with
67 @code{process.env}, @code{window.name}, @code{location.hash} and
68 @code{localStorage} fallbacks.")
69 (license license:expat)))
70
71 (define-public node-far
72 (package
73 (name "node-far")
74 (version "0.0.7")
75 (source
76 (origin
77 (method git-fetch)
78 (uri (git-reference
79 (url "https://github.com/felixge/node-far")
80 (commit (string-append "v" version))))
81 (file-name (git-file-name name version))
82 (sha256
83 (base32
84 "083rv1rszjn0i91zcpaghlid0kwhk0angmpj4hiflrlyhd6cmjzw"))))
85 (build-system node-build-system)
86 (arguments
87 '(#:phases
88 (modify-phases %standard-phases
89 (replace 'check
90 (lambda _
91 ;; We skip the two tests which are supposed to fail.
92 (invoke "bin/node-far" "-v" "test/" "-e" "test.*fail.js"))))))
93 (inputs
94 `(("node-oop" ,node-oop)))
95 (home-page "https://github.com/felixge/node-far")
96 (synopsis "Node.js test runner")
97 (description "This package provides a simple test runner that finds and runs
98 multiple node.js files, while providing useful information about output and exit
99 codes.")
100 (license license:expat)))
101
102 (define-public node-long-stack-traces
103 (package
104 (name "node-long-stack-traces")
105 (version "0.1.2")
106 (source
107 (origin
108 (method git-fetch)
109 (uri (git-reference
110 (url "https://github.com/tlrobinson/long-stack-traces")
111 (commit (string-append "v" version))))
112 (file-name (git-file-name name version))
113 (sha256
114 (base32
115 "0famwsyc6xawi30v25zi65d8fhbvlvh976bqydf1dqn5gz200cl3"))))
116 (build-system node-build-system)
117 (arguments '(#:tests? #f)) ; No tests.
118 (home-page "https://github.com/tlrobinson/long-stack-traces")
119 (synopsis "Long stacktraces implemented in user-land JavaScript")
120 (description "This package provides long stacktraces for V8 implemented in
121 user-land JavaScript.")
122 (license license:expat))) ; in README
123
124 (define-public node-mersenne
125 (package
126 (name "node-mersenne")
127 (version "0.0.4")
128 (source
129 (origin
130 (method git-fetch)
131 (uri (git-reference
132 (url "https://github.com/jwatte/node-mersenne")
133 ;; The actual release lacks a git tag.
134 (commit "f9fa01694ee49d6ae6ff9d90cfda594bddd3ccef")))
135 (file-name (git-file-name name version))
136 (sha256
137 (base32
138 "034iaiq2pdqn342p2404cpz364g282d2hkp9375hysnh9i968wbb"))))
139 (build-system node-build-system)
140 (arguments '(#:tests? #f)) ; No tests.
141 (home-page "http://www.enchantedage.com/node-mersenne")
142 (synopsis "Node.js module for generating Mersenne Twister random numbers")
143 (description "Thix package provides a node.js port of the Mersenne Twister
144 random number generator.")
145 (license license:bsd-3)))
146
147 (define-public node-oop
148 ;; No releases, last commit was February 2013.
149 (let ((commit "f9d87cda0958886955c14a0a716e57021ed295dc")
150 (revision "1"))
151 (package
152 (name "node-oop")
153 (version (git-version "0.0.0" revision commit))
154 (source
155 (origin
156 (method git-fetch)
157 (uri (git-reference
158 (url "https://github.com/felixge/node-oop")
159 (commit commit)))
160 (file-name (git-file-name name version))
161 (sha256
162 (base32
163 "0mqrcf0xi2jbwffwkk00cljpqfsri1jk8s6kz8jny45apn7zjds1"))))
164 (build-system node-build-system)
165 (arguments '(#:tests? #f)) ; Tests run during build phase.
166 (home-page "https://github.com/felixge/node-oop")
167 (synopsis "Simple, light-weight oop module for Node")
168 (description "This library tries to bring basic oop features to JavaScript
169 while being as light-weight and simple as possible.")
170 (license license:expat))))
171
172 (define-public node-stack-trace
173 ;; There have been improvements since the last release.
174 (let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf")
175 (revision "1"))
176 (package
177 (name "node-stack-trace")
178 (version (git-version "0.0.10" revision commit))
179 (source
180 (origin
181 (method git-fetch)
182 (uri (git-reference
183 (url "https://github.com/felixge/node-stack-trace")
184 (commit commit)))
185 (file-name (git-file-name name version))
186 (sha256
187 (base32
188 "1pk19wcpy8i95z5jr77fybd57qj7xmzmniap4dy47vjlmpkqia4i"))))
189 (build-system node-build-system)
190 (arguments
191 '(#:phases
192 (modify-phases %standard-phases
193 (add-before 'check 'skip-intentionally-failing-test
194 (lambda _
195 (substitute* "test/run.js"
196 (("far.include") "far.exclude(/test-parse.js/)\nfar.include"))
197 #t)))))
198 (native-inputs
199 `(("node-far" ,node-far)
200 ("node-long-stack-traces" ,node-long-stack-traces)))
201 (home-page "https://github.com/felixge/node-stack-trace")
202 (synopsis "Get v8 stack traces as an array of CallSite objects")
203 (description "Get v8 stack traces as an array of CallSite objects.")
204 (license license:expat))))
205
206 (define-public node-statsd-parser
207 (package
208 (name "node-statsd-parser")
209 (version "0.0.4")
210 (source
211 (origin
212 (method git-fetch)
213 (uri (git-reference
214 (url "https://github.com/dscape/statsd-parser")
215 (commit version)))
216 (file-name (git-file-name name version))
217 (sha256
218 (base32
219 "049rnczsd6pv6bk282q4w72bhqc5cs562djgr7yncy7lk0wzq5j3"))))
220 (build-system node-build-system)
221 (arguments '(#:tests? #f)) ; No tests.
222 (home-page "https://github.com/dscape/statsd-parser")
223 (synopsis "Streaming parser for the statsd protocol")
224 (description "This package provides a streaming parser for the statsd
225 protocol used in @code{node-lynx}.")
226 (license license:asl2.0)))
227
228 (define-public node-util-deprecate
229 (package
230 (name "node-util-deprecate")
231 (version "1.0.2")
232 (source
233 (origin
234 (method git-fetch)
235 (uri (git-reference
236 (url "https://github.com/TooTallNate/util-deprecate")
237 (commit version)))
238 (file-name (git-file-name name version))
239 (sha256
240 (base32
241 "1rk94nl3qc7znsk8400bnga30v0m7j2mmvz9ldwjinxv1d3n11xc"))))
242 (build-system node-build-system)
243 (arguments '(#:tests? #f)) ; No test suite.
244 (home-page "https://github.com/TooTallNate/util-deprecate")
245 (synopsis "Node.js `util.deprecate()` function with browser support")
246 (description "This package provides the Node.js @code{util.deprecate()}
247 function with browser support.")
248 (license license:expat)))
249
250 (define-public node-semver
251 (package
252 (name "node-semver")
253 (version "7.2.1")
254 (source (origin
255 (method git-fetch)
256 (uri (git-reference
257 (url "https://github.com/npm/node-semver")
258 (commit (string-append "v" version))))
259 (file-name (git-file-name name version))
260 (sha256
261 (base32
262 "06biknqb05r9xsmcflm3ygh50pjvdk84x6r79w43kmck4fn3qn5p"))))
263 (build-system node-build-system)
264 (arguments
265 '(#:tests? #f ; FIXME: Tests depend on node-tap
266 #:phases
267 (modify-phases %standard-phases
268 ;; The only dependency to check for is tap, which we don't have.
269 (delete 'configure))))
270 (home-page "https://github.com/npm/node-semver")
271 (synopsis "Parses semantic versions strings")
272 (description
273 "@code{node-semver} is a JavaScript implementation of the
274 @uref{https://semver.org/, SemVer.org} specification.")
275 (license license:isc)))
276
277 (define-public node-wrappy
278 (package
279 (name "node-wrappy")
280 (version "1.0.2")
281 (source (origin
282 (method git-fetch)
283 (uri (git-reference
284 (url "https://github.com/npm/wrappy")
285 (commit (string-append "v" version))))
286 (file-name (git-file-name name version))
287 (sha256
288 (base32
289 "1ymlc61cja6v5438vwb04gq8wg2b784lj39zf0g4i36fvgcw9783"))))
290 (build-system node-build-system)
291 (arguments
292 '(#:tests? #f ; FIXME: Tests depend on node-tap
293 #:phases
294 (modify-phases %standard-phases
295 ;; The only dependency to check for is tap, which we don't have.
296 (delete 'configure))))
297 (home-page "https://github.com/npm/wrappy")
298 (synopsis "Callback wrapping utility")
299 (description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
300 (license license:isc)))