mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: node: Update to 6.8.0.
Remove <https://debbugs.gnu.org/23744> and <https://debbugs.gnu.org/23723> workaround. * gnu/packages/node.scm (node): Update to 6.8.0. (node)[arguments]: Disabled more tests. Remove custom 'patch-shebangs' phase. Manually patch npm script shebang in new 'patch-npm-shebang' phase. * gnu/packages/patches/node-9077.patch: New file. * gnu/local.mk (dist_patch_DATA): Add patches. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
a8de0d1ec4
commit
dd04f56a2b
3 changed files with 46 additions and 19 deletions
|
@ -25,6 +25,7 @@
|
|||
#:use-module (guix derivations)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gcc)
|
||||
|
@ -37,14 +38,16 @@
|
|||
(define-public node
|
||||
(package
|
||||
(name "node")
|
||||
(version "6.0.0")
|
||||
(version "6.8.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://nodejs.org/dist/v" version
|
||||
"/node-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cpw7ng193jgfbw2g1fd0kcglmjjkbj4xb89g00z8zz0lj0nvdbd"))))
|
||||
"0lj3250hglz4w5ic4svd7wlg2r3qc49hnasvbva1v69l8yvx98m8"))
|
||||
;; https://github.com/nodejs/node/pull/9077
|
||||
(patches (search-patches "node-9077.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
;; TODO: Package http_parser and add --shared-http-parser.
|
||||
|
@ -78,10 +81,10 @@
|
|||
;; FIXME: These tests fail in the build container, but they don't
|
||||
;; seem to be indicative of real problems in practice.
|
||||
(for-each delete-file
|
||||
'("test/parallel/test-cluster-master-error.js"
|
||||
'("test/parallel/test-dgram-membership.js"
|
||||
"test/parallel/test-cluster-master-error.js"
|
||||
"test/parallel/test-cluster-master-kill.js"
|
||||
"test/parallel/test-npm-install.js"
|
||||
"test/parallel/test-stdout-close-unref.js"
|
||||
"test/sequential/test-child-process-emfile.js"))
|
||||
#t))
|
||||
(replace 'configure
|
||||
|
@ -101,22 +104,15 @@
|
|||
(string-append (assoc-ref inputs "python")
|
||||
"/bin/python")
|
||||
"configure" flags)))))
|
||||
(replace 'patch-shebangs
|
||||
(lambda* (#:key outputs #:allow-other-keys #:rest all)
|
||||
;; Work around <http://bugs.gnu.org/23723>.
|
||||
(let* ((patch (assoc-ref %standard-phases 'patch-shebangs))
|
||||
(npm (string-append (assoc-ref outputs "out")
|
||||
"/bin/npm"))
|
||||
(add-after 'patch-shebangs 'patch-npm-shebang
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((bindir (string-append (assoc-ref outputs "out")
|
||||
"/bin"))
|
||||
(npm (string-append bindir "/npm"))
|
||||
(target (readlink npm)))
|
||||
(and (apply patch all)
|
||||
(with-directory-excursion (dirname npm)
|
||||
;; Turn NPM into a symlink to TARGET again, which 'npm'
|
||||
;; relies on for the resolution of relative file names
|
||||
;; in JS files.
|
||||
(delete-file target)
|
||||
(rename-file npm target)
|
||||
(symlink target npm)
|
||||
#t))))))))
|
||||
(with-directory-excursion bindir
|
||||
(patch-shebang target (list bindir))
|
||||
#t)))))))
|
||||
(native-inputs
|
||||
`(("python" ,python-2)
|
||||
("perl" ,perl)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue