diff options
author | pjotrp | 2020-01-14 02:47:54 -0600 |
---|---|---|
committer | pjotrp | 2020-01-14 02:47:54 -0600 |
commit | 0632c2211ec17c24e1cb86342a9f0f0f86c0f78a (patch) | |
tree | 9d6e6a7bc3b50871ec867fc2525070c8cff9b749 | |
parent | 92c6388e645e48f44f1856616df09aab8c29a9aa (diff) | |
parent | fc7386366195a3270e928cd09f9d3576c0771663 (diff) | |
download | guix-bioinformatics-0632c2211ec17c24e1cb86342a9f0f0f86c0f78a.tar.gz |
Merge commit 'fc7386366195a3270e928cd09f9d3576c0771663' of gitlab.com:genenetwork/guix-bioinformatics
-rw-r--r-- | gn/packages/bioinformatics.scm | 5 | ||||
-rw-r--r-- | gn/packages/bnw.scm | 92 | ||||
-rw-r--r-- | gn/packages/crates-io.scm | 121 | ||||
-rw-r--r-- | gn/packages/helm.scm | 4 | ||||
-rw-r--r-- | gn/packages/jupyterhub.scm | 62 | ||||
-rw-r--r-- | gn/packages/kubernetes.scm | 56 | ||||
-rw-r--r-- | gn/packages/node.scm | 1988 | ||||
-rw-r--r-- | gn/services/bnw-container.scm | 16 | ||||
-rw-r--r-- | gn/services/bnw.service | 2 |
9 files changed, 2139 insertions, 207 deletions
diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm index 4b8e16b..1539919 100644 --- a/gn/packages/bioinformatics.scm +++ b/gn/packages/bioinformatics.scm @@ -480,11 +480,10 @@ reads.") ,(origin (method url-fetch) (uri (string-append "ftp://ftp.ncbi.nlm.nih.gov/entrez/entrezdirect/" - "versions/" (package-version edirect) "/xtract.Linux")) - (file-name (string-append "xtract.Linux-" (package-version edirect))) + "/xtract.Linux")) ;; March 10, 2016 (sha256 (base32 - "0fx6arpn38spnwszmvkkpa3498qrrlglg2l9jw91icgqbyjjq9wq")))) + "0wppi3q3wcind6za043w0g7a987qr59yiyh553h46a1apjkd8y9b")))) ("rchive.Linux" ,(origin (method url-fetch) diff --git a/gn/packages/bnw.scm b/gn/packages/bnw.scm index 5b7131b..5c97eab 100644 --- a/gn/packages/bnw.scm +++ b/gn/packages/bnw.scm @@ -14,7 +14,7 @@ (define-public bnw (let ((commit "eb6b002b924694808384f1a8d7c6d1121806ae04") - (revision "4")) + (revision "5")) (package (name "bnw") (version (git-version "1.22" revision commit)) ; June 28, 2019 @@ -38,7 +38,8 @@ (substitute* "index.html" (("url=home.php") "url=sourcecodes/home.php")) (substitute* "home.php" - (("http://bnw.genenetwork.org/BNW_1.22") "http://bnw-test.genenetwork.org")) + (("http://bnw.genenetwork.org/BNW_1.22") + "http://bnw-test.genenetwork.org")) (substitute* "sourcecodes/header_batchsearch.inc" (("my_style.css") "my_new_style.css")) (substitute* (find-files "." "\\.php") @@ -50,48 +51,58 @@ #t)) (add-after 'patch-source-shebangs 'patch-more-shebangs (lambda* (#:key inputs #:allow-other-keys) - (let* ((bash (assoc-ref inputs "bash")) - (graphviz (assoc-ref inputs "graphviz")) - (octave (assoc-ref inputs "octave")) - (python (assoc-ref inputs "python")) - (rmath (assoc-ref inputs "rmath")) - (jquery (assoc-ref inputs "jquery")) - (awesome (assoc-ref inputs "awesome")) - (cyto (assoc-ref inputs "cytoscape")) - (cyto2 (assoc-ref inputs "cytoscape-2")) - (cs-dagre (assoc-ref inputs "cyto-dagre")) - (d3js (assoc-ref inputs "d3js")) - (d3js-multi (assoc-ref inputs "d3js-multi")) - (dagre (assoc-ref inputs "dagre")) - (lodash (assoc-ref inputs "lodash")) - (canvas-toblob (assoc-ref inputs "canvas-toblob")) - (filesaver (assoc-ref inputs "filesaver")) - (panzoom (assoc-ref inputs "panzoom")) - (js-path "/share/genenetwork2/javascript/")) + (let ((bash (assoc-ref inputs "bash")) + (graphviz (assoc-ref inputs "graphviz")) + (octave (assoc-ref inputs "octave")) + (python (assoc-ref inputs "python")) + (rmath (assoc-ref inputs "rmath"))) (for-each (lambda (file) (patch-shebang file (list (string-append bash "/bin") (string-append octave "/bin") (string-append python "/bin")))) (find-files "." ".*")) - (substitute* '("sourcecodes/examplefilecopy.sh" - "sourcecodes/filecopy.sh") - (("^rm") (which "rm")) - (("\\ cp") (string-append " " (which "cp")))) (substitute* (find-files "sourcecodes" "(^run|py$)") - (("/home/jziebart/python/Python-2.7.15/python") (which "python2"))) + (("/home/jziebart/python/Python-2.7.15/python") + (which "python2"))) (substitute* (append (find-files "sourcecodes" ".php") (find-files "sourcecodes/run_scripts" ".*")) (("/usr/bin/dot") (string-append graphviz "/bin/dot"))) (substitute* '("sourcecodes/build.sh" "downloads/BNW/src/build.sh") - (("./localscore/libRmath.so") (string-append rmath "/lib/libRmath.so"))) - (substitute* "sourcecodes/run.sh" - (("rm ") (string-append (which "rm") " ")) - (("rmdir ") (string-append (which "rmdir") " ")) + (("./localscore/libRmath.so") + (string-append rmath "/lib/libRmath.so"))) + (substitute* (find-files "." "\\.sh$") + (("cat ") (string-append (which "cat") " ")) + (("\\ cp") (string-append " " (which "cp"))) + (("date ") (string-append (which "date") " ")) + (("dirname \\$0") (string-append (which "dirname")" $0")) + (("dirname \"\\$0") (string-append (which "dirname")" \"$0")) + (("expr ") (string-append (which "expr") " ")) + (("head ") (string-append (which "head") " ")) (("mkdir ") (string-append (which "mkdir") " ")) - (("dirname ") (string-append (which "dirname")" "))) + (("^rm ") (string-append (which "rm") " ")) + (("rmdir ") (string-append (which "rmdir") " ")) + (("wc ") (string-append (which "wc") " "))) + #t))) + ;(add-after 'patch-source-shebangs 'replace-javascript + ; (lambda* (#:key inputs #:allow-other-keys) + ; (let ( + ; (jquery (assoc-ref inputs "jquery")) + ; (awesome (assoc-ref inputs "awesome")) + ; (cyto (assoc-ref inputs "cytoscape")) + ; (cyto2 (assoc-ref inputs "cytoscape-2")) + ; (cs-dagre (assoc-ref inputs "cyto-dagre")) + ; (d3js (assoc-ref inputs "d3js")) + ; (d3js-multi (assoc-ref inputs "d3js-multi")) + ; (dagre (assoc-ref inputs "dagre")) + ; (lodash (assoc-ref inputs "lodash")) + ; (canvas-toblob (assoc-ref inputs "canvas-toblob")) + ; (filesaver (assoc-ref inputs "filesaver")) + ; (panzoom (assoc-ref inputs "panzoom")) + ; (js-path "/share/genenetwork2/javascript/") + ; ) ;(substitute* "sourcecodes/layout_cyto.php" ; (("https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.7.1/cytoscape.min.js") ; (string-append cyto js-path "cytoscape/cytoscape.min.js")) @@ -121,8 +132,8 @@ ; (string-append canvas-toblob js-path "canvas-toBlob/canvas-toBlob.js")) ; (("https://cdn.rawgit.com/eligrey/FileSaver.js/e9d941381475b5df8b7d7691013401e171014e89/FileSaver.min.js") ; (string-append filesaver js-path "filesaver/filesaver.js"))) - ) - #t)) + ; ) + ; #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -136,7 +147,8 @@ (chmod file #o555)) (append (find-files out "\\.(sh|py)$") (find-files (string-append out "/sourcecodes/run_scripts/" ".")))) - (chmod (string-append out "/sourcecodes/data") #o777) ; needs to be writable + ;; This folder needs to be writable. + (chmod (string-append out "/sourcecodes/data") #o777) #t))) (replace 'build (lambda _ @@ -155,26 +167,28 @@ (inputs `(("graphviz" ,graphviz-2.26) ("octave" ,octave-3.4.3) - ("python" ,python-2) ("plotly" ,python2-plotly-3.2.1) + ("python" ,python-2) ("rmath" ,rmath-standalone) - ("jquery" ,web-jquery) + ;; the javascript libraries: ("awesome" ,web-font-awesome) + ("canvas-toblob" ,javascript-canvas-toblob) + ("cyto-dagre" ,javascript-cytoscape-dagre) ("cytoscape" ,javascript-cytoscape) ("cytoscape-2" ,javascript-cytoscape-2) ("d3js" ,javascript-d3js-4) ("d3js-multi" ,javascript-d3js-multi) ("dagre" ,javascript-dagre) - ("lodash" ,javascript-lodash) - ("canvas-toblob" ,javascript-canvas-toblob) ("filesaver" ,javascript-filesaver) - ("cyto-dagre" ,javascript-cytoscape-dagre) + ("jquery" ,web-jquery) + ("lodash" ,javascript-lodash) ("panzoom" ,javascript-cytoscape-panzoom))) (native-inputs `(("gcc" ,gcc-5))) (home-page "http://compbio.uthsc.edu/BNW/") (synopsis "Bayesian Network Webserver") - (description "This contains the code for the @dfn{Bayesian Network Webserver} (BNW).") + (description + "This contains the code for the @dfn{Bayesian Network Webserver} (BNW).") (license (list license:gpl2 license:gpl2+ license:lgpl2.1+))))) diff --git a/gn/packages/crates-io.scm b/gn/packages/crates-io.scm index a8430d1..55f7355 100644 --- a/gn/packages/crates-io.scm +++ b/gn/packages/crates-io.scm @@ -8,28 +8,6 @@ ;; Please keep these packages sorted alphabetically -(define-public rust-arrayvec-0.4 - (package - (name "rust-arrayvec") - (version "0.4.12") - (source - (origin - (method url-fetch) - (uri (crate-uri "arrayvec" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1fdiv5m627gh6flp4mpmi1mh647imm9x423licsr11psz97d97yd")))) - (build-system cargo-build-system) - (home-page "https://github.com/bluss/arrayvec") - (synopsis - "A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.") - (description - "This package provides a vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.") - (properties '((hidden? . #t))) - (license (list license:asl2.0 - license:expat)))) - (define-public rust-crossbeam-deque-0.2 (package (name "rust-crossbeam-deque") @@ -92,28 +70,6 @@ (license (list license:asl2.0 license:expat)))) -(define-public rust-either-1.5 - (package - (name "rust-either") - (version "1.5.3") - (source - (origin - (method url-fetch) - (uri (crate-uri "either" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1qyz1b1acad6w0k5928jw5zaq900zhsk7p8dlcp4hh61w4f6n7xv")))) - (build-system cargo-build-system) - (home-page "https://github.com/bluss/either") - (synopsis - "The enum `Either` with variants `Left` and `Right` is a general purpose sum type with two cases.") - (description - "The enum `Either` with variants `Left` and `Right` is a general purpose sum type with two cases.") - (properties '((hidden? . #t))) - (license (list license:asl2.0 - license:expat)))) - (define-public rust-heck-0.3 (package (name "rust-heck") @@ -177,27 +133,6 @@ (license (list license:asl2.0 license:expat)))) -(define-public rust-memoffset-0.2 - (package - (name "rust-memoffset") - (version "0.2.1") - (source - (origin - (method url-fetch) - (uri (crate-uri "memoffset" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1cvm2z7dy138s302ii7wlzcxbka5a8yfl5pl5di7lbdnw9hw578g")))) - (build-system cargo-build-system) - (home-page "https://github.com/Gilnaa/memoffset") - (synopsis - "offset_of functionality for Rust structs.") - (description - "offset_of functionality for Rust structs.") - (properties '((hidden? . #t))) - (license license:expat))) - (define-public rust-ndarray-0.12 (package (name "rust-ndarray") @@ -220,28 +155,6 @@ (license (list license:asl2.0 license:expat)))) -(define-public rust-num-complex-0.2 - (package - (name "rust-num-complex") - (version "0.2.3") - (source - (origin - (method url-fetch) - (uri (crate-uri "num-complex" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1z6zjdzx1g1hj4y132ddy83d3p3zvw06igbf59npxxrzzcqwzc7w")))) - (build-system cargo-build-system) - (home-page "https://github.com/rust-num/num-complex") - (synopsis - "Complex numbers implementation for Rust") - (description - "Complex numbers implementation for Rust") - (properties '((hidden? . #t))) - (license (list license:asl2.0 - license:expat)))) - (define-public rust-rayon-1.0 (package (name "rust-rayon") @@ -328,26 +241,6 @@ (license (list license:asl2.0 license:expat)))) -(define-public rust-syn-0.15 - (package - (name "rust-syn") - (version "0.15.44") - (source - (origin - (method url-fetch) - (uri (crate-uri "syn" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1id5g6x6zihv3j7hwrw3m1jp636bg8dpi671r7zy3jvpkavb794w")))) - (build-system cargo-build-system) - (home-page "https://github.com/dtolnay/syn") - (synopsis "Parser for Rust source code") - (description "Parser for Rust source code") - (properties '((hidden? . #t))) - (license (list license:asl2.0 - license:expat)))) - (define-public rust-unicode-segmentation-1.6 (package (name "rust-unicode-segmentation") @@ -369,17 +262,3 @@ according to Unicode Standard Annex #29 rules.") (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) - -(define-public rust-unicode-segmentation-1.3 - (package - (inherit rust-unicode-segmentation-1.6) - (name "rust-unicode-segmentation") - (version "1.3.0") - (source - (origin - (method url-fetch) - (uri (crate-uri "unicode-segmentation" version)) - (file-name (string-append name "-" version ".crate")) - (sha256 - (base32 - "1a9jqg7rb1yq6w2xc9jgxcs111yk5vxm9afjfvykfnrmzk6z8rqr")))))) diff --git a/gn/packages/helm.scm b/gn/packages/helm.scm index 03b0255..3e00b57 100644 --- a/gn/packages/helm.scm +++ b/gn/packages/helm.scm @@ -9,14 +9,14 @@ (define-public helm (package (name "helm") - (version "3.0.0") + (version "3.0.2") (source (origin (method url-fetch) (uri (string-append "https://get.helm.sh/helm-v" version "-linux-amd64.tar.gz")) (sha256 (base32 - "1p60v2ij06nxa60ks9l1qgb3vvz19f93mf9cgcfjn1k3lb6gvq8h")))) + "078ff54b7kvms1s5rncqyfw3qr4csiqqycmynjmyhrpw9xzamdy6")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) diff --git a/gn/packages/jupyterhub.scm b/gn/packages/jupyterhub.scm index 782157d..5b69b5b 100644 --- a/gn/packages/jupyterhub.scm +++ b/gn/packages/jupyterhub.scm @@ -17,7 +17,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages serialization) #:use-module (gnu packages time) - ) + #:use-module (gn packages node)) (define-public jupyterhub (package @@ -29,30 +29,46 @@ (uri (pypi-uri "jupyterhub" version)) (sha256 (base32 - "0zx6gw9yhgki05j21p6x1x2sf5a2mg2c2mx0ii8rl6q4b98ilm1k")))) + "0zx6gw9yhgki05j21p6x1x2sf5a2mg2c2mx0ii8rl6q4b98ilm1k")) + (patches + (list + (origin + (method url-fetch) + (uri "https://github.com/jupyterhub/jupyterhub/commit/b624116be79168f37af728195af663498f3c55c0.patch") + (file-name "jupyterhub-fix-first-launch-errors.patch") + (sha256 + (base32 + "00rbqz0rz2642ypfgpd49fv7wzpc9n0pdfqixqp3zxs6vqf3x372"))))))) (build-system python-build-system) (arguments '(#:tests? #f ; Tests require a webserver, postgresql database and npm. #:phases (modify-phases %standard-phases (replace 'check - (lambda* (#:key tests? #:allow-other-keys) + (lambda* (#:key tests? inputs #:allow-other-keys) (if tests? - (;; From .travis.yml - (invoke "initdb" "main") - (invoke "pg_ctl" "-D" "main" "start") - (invoke "psql" "--list") - ;; From ci/init-db.sh - (invoke "psql" "-d" "postgres" "-c" - "CREATE DATABASE jupyterhub_upgrade_072;") - (invoke "psql" "-d" "postgres" "-c" - "CREATE DATABASE jupyterhub_upgrade_081;") - (invoke "psql" "-d" "postgres" "-c" - "CREATE DATABASE jupyterhub_upgrade_094;") - (invoke "pytest" "-v" "--maxfail=2" "jupyterhub/tests")) + ((let* ((postgres (assoc-ref inputs "postgresql")) + (initdb (string-append postgres "/bin/initdb")) + (pg_ctl (string-append postgres "/bin/pg_ctl")) + (psql (string-append postgres "/bin/psql")) + ) + ;; From .travis.yml + (invoke initdb "main") + (invoke pg_ctl "-D" "main" "start") + (invoke psql "--list") + ;; From ci/init-db.sh + (invoke psql "-d" "postgres" "-c" + "CREATE DATABASE jupyterhub_upgrade_072;") + (invoke psql "-d" "postgres" "-c" + "CREATE DATABASE jupyterhub_upgrade_081;") + (invoke psql "-d" "postgres" "-c" + "CREATE DATABASE jupyterhub_upgrade_094;") + (invoke "pytest" "-v" "--maxfail=2" "jupyterhub/tests")) + ) #t)))))) (propagated-inputs - `(("python-alembic" ,python-alembic) + `(;("node-configurable-http-proxy" ,node-configurable-http-proxy) + ("python-alembic" ,python-alembic) ("python-async-generator" ,python-async-generator) ("python-certipy" ,python-certipy) ("python-dateutil" ,python-dateutil) @@ -64,11 +80,13 @@ ("python-requests" ,python-requests) ("python-sqlalchemy" ,python-sqlalchemy) ("python-tornado" ,python-tornado) - ("python-traitlets" ,python-traitlets))) + ("python-traitlets" ,python-traitlets) + ;; Recommended but not required: + ("python-pycurl" ,python-pycurl))) (native-inputs `( - ;("postgresql" ,postgresql) - ;("python-psycopg2" ,python-psycopg2) + ("postgresql" ,postgresql) + ("python-psycopg2" ,python-psycopg2) ("python-beautifulsoup4" ,python-beautifulsoup4) ("python-jupyter-client" ,python-jupyter-client) @@ -86,8 +104,8 @@ proxies multiple instances of the single-user Jupyter notebook server.") (license license:bsd-3))) (define-public the-littlest-jupyterhub - (let ((commit "770b95027951c1e191690b0f65d3e2e2d72ba05f") ; Oct 30, 2019 - (revision "1")) + (let ((commit "29e8bcc4865d26ef67910862a567f55f46f96593") ; Dec 6, 2019 + (revision "2")) (package (name "the-littlest-jupyterhub") (version (git-version "0.0.0" revision commit)) @@ -100,7 +118,7 @@ proxies multiple instances of the single-user Jupyter notebook server.") (file-name (git-file-name name version)) (sha256 (base32 - "0dnin2rwrqr8nzf7gj6sjqchvdi24kd0sgjh655c4zq1hdbpsmc6")))) + "10xrmia8w9vd9zmgww426kyd95jx81l5c4zpq84gqbvkibq61rsa")))) (build-system python-build-system) (arguments '(#:phases diff --git a/gn/packages/kubernetes.scm b/gn/packages/kubernetes.scm index d90b367..e762895 100644 --- a/gn/packages/kubernetes.scm +++ b/gn/packages/kubernetes.scm @@ -8,12 +8,13 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages base) #:use-module (gnu packages compression) + #:use-module (gnu packages linux) #:use-module (gnu packages rsync)) (define-public kubernetes (package (name "kubernetes") - (version "1.16.3") + (version "1.16.4") (source (origin (method git-fetch) (uri (git-reference @@ -22,7 +23,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "1v4dhlpvi8gkc26zaxdfypng8b1f2lwm6hjz2amvq8mh49j5x7ld")))) + "0snk4jr5is8rwx0px2kwx802dg770mrgp11irnwy2z50p327jrcs")))) (build-system go-build-system) (arguments `(#:import-path "k8s.io/kubernetes" @@ -35,12 +36,37 @@ (for-each make-file-writable (find-files ".")) #t)) (add-before 'build 'prepare-build - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) (with-directory-excursion "src/k8s.io/kubernetes" (substitute* '("build/root/Makefile" "build/root/Makefile.generated_files" "build/pause/Makefile") - (("/bin/bash") (which "bash")))) + (("/bin/bash") (which "bash"))) + (substitute* "pkg/util/mount/mount.go" + (("defaultMountCommand.*") + (string-append "defaultMountCommand = \"" + (assoc-ref inputs "util-linux") + "/bin/mount\"\n")))) + #t)) + (add-before 'build 'fix-version-numbers + (lambda _ + (with-directory-excursion "src/k8s.io/kubernetes" + (substitute* '("cmd/kubeadm/app/version/base.go" + "staging/src/k8s.io/client-go/pkg/version/base.go" + "staging/src/k8s.io/kubectl/pkg/version/base.go" + "staging/src/k8s.io/component-base/version/base.go" + "staging/src/k8s.io/component-base/metrics/version_parser_test.go" + "pkg/version/base.go" + "vendor/k8s.io/client-go/pkg/version/base.go" + "vendor/k8s.io/kubectl/pkg/version/base.go" + "vendor/k8s.io/component-base/metrics/version_parser_test.go") + (("v0.0.0-master\\+\\$Format:\\%h\\$") (string-append "v" ,version)) + (("v0.0.0-master") (string-append "v" ,version)) + (("gitMajor string = \"\"") + (string-append "gitMajor string = \"" ,(version-major version) "\"")) + (("gitMinor string = \"\"") + (string-append "gitMinor string = \"" + ,(string-drop (version-major+minor version) 2) "\"")))) #t)) (replace 'build (lambda _ @@ -87,7 +113,8 @@ (native-inputs `(("which" ,which))) (inputs - `(("rsync" ,rsync))) + `(("rsync" ,rsync) + ("util-linux" ,util-linux))) (propagated-inputs `(("crictl" ,crictl))) ; Must be the same major+minor version as kubernetes. (home-page "https://kubernetes.io/") @@ -101,7 +128,7 @@ deployment, maintenance, and scaling of applications.") (package (inherit kubernetes) (name "kubernetes") - (version "1.15.6") + (version "1.15.7") (source (origin (method git-fetch) (uri (git-reference @@ -110,15 +137,20 @@ deployment, maintenance, and scaling of applications.") (file-name (git-file-name name version)) (sha256 (base32 - "055xizqpg5yjda7b6l1vnajmbfz2ljh2z85r1d63683rqyw2y078")))) + "0xk5cx0ihvnfb3y6s0xhkfyb7a62dy2bkxsarq4wdis5nkc2jdim")))) + (arguments + (substitute-keyword-arguments (package-arguments kubernetes) + ((#:phases phases) + `(modify-phases ,phases + (delete 'fix-version-numbers))))) (propagated-inputs `(("crictl" ,crictl-1.15))))) (define-public kubernetes-1.14 (package - (inherit kubernetes) + (inherit kubernetes-1.15) (name "kubernetes") - (version "1.14.9") + (version "1.14.10") (source (origin (method git-fetch) (uri (git-reference @@ -127,13 +159,13 @@ deployment, maintenance, and scaling of applications.") (file-name (git-file-name name version)) (sha256 (base32 - "06w2jjd89jjzmc0db1fgwnsyfwjr07chh8q3zvmx5pznprvv485l")))) + "09p3w64f7spcj2mg1gw32g2mwjpii4zmpd2ychazdq7zrc85lxdq")))) (propagated-inputs `(("crictl" ,crictl-1.14))))) (define-public kubernetes-1.13 (package - (inherit kubernetes) + (inherit kubernetes-1.15) (name "kubernetes") (version "1.13.12") (source (origin @@ -250,7 +282,7 @@ tools for Kubelet CRI.") (replace 'build (lambda _ (invoke "make" "windows"))) ; This is the correct invocation - (add-before 'prepare-source 'update-version + (add-after 'prepare-source 'update-version (lambda _ (substitute* "Makefile" (("^VERSION .*") (string-append "VERSION := " ,version "\n"))) diff --git a/gn/packages/node.scm b/gn/packages/node.scm new file mode 100644 index 0000000..d83714d --- /dev/null +++ b/gn/packages/node.scm @@ -0,0 +1,1988 @@ +(define-module (gn packages node) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix utils) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build-system node) + #:use-module (gnu packages lisp-xyz)) + +(define-public node-asap + (package + (name "node-asap") + (version "2.0.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kriskowal/asap") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0yclfxrfxlq7daxjfw40y37gbad3y4p4ia79wgycq4g6lrhqvlww")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-events" ,node-events) + ;("node-jshint" ,node-jshint) + ;("node-knox" ,node-knox) + ;("node-mr" ,node-mr) + ;("node-opener" ,node-opener) + ;("node-q" ,node-q) + ;("node-q-io" ,node-q-io) + ;("node-saucelabs" ,node-saucelabs) + ;("node-wd" ,node-wd) + ;("node-weak-map" ,node-weak-map) + ;("node-benchmark" ,node-benchmark) + )) + (home-page "https://github.com/kriskowal/asap") + (synopsis "High-priority task queue for Node.js and browsers") + (description "High-priority task queue for Node.js and browsers.") + (license license:expat))) + +;; TODO: Unbundle fonts +(define-public node-async + (package + (name "node-async") + (version "3.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/caolan/async") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "04b8qi2wi8wi3yjs991hh3s0ngk8x1xw0p7xrv3gnr5ck78vf75c")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + ;(replace 'build + ; (lambda _ + ; ;; make build + ; (invoke "make" "build-bundle") + ; )) + (delete 'build) + ) + )) + (native-inputs + `( + ;("node-babel-core" ,node-babel-core) + ;("node-babel-eslint" ,node-babel-eslint) + ;("node-babel-minify" ,node-babel-minify) + ;("node-babel-plugin-add-module-exports" ,node-babel-plugin-add-module-exports) + ;("node-babel-plugin-instanbul" ,node-babel-plugin-instanbul) + ;("node-babel-plugin-syntax-async-generators" ,node-babel-plugin-syntax-async-generators) + ;("node-babel-plugin-transform-es2015-modules-commonjs" ,babel-plugin-transform-es2015-modules-commonjs) + ;("node-babel-preset-es2015" ,node-babel-preset-es2015) + ;("node-babel-preset-es2017" ,node-babel-preset-es2017) + ;("node-babel-register" ,node-babel-register) + ;("node-babelify" ,noce-babelify) + ;("node-benchmark" ,node-benchmark) + ;("node-bluebird" ,node-bluebird) + ;("node-browserify" ,node-browserify) + ;("node-chai" ,node-chai) + ;("node-cheerio" ,noce-cheerio) + ;("node-coveralls" ,node-coveralls) + ;("node-es6-promise" ,node-es6-promise) + ;("node-eslint" ,node-eslint) + ;("node-eslint-plugin-prefer-arrow" ,node-eslint-plugin-prefer-arrow) + ;("node-fs-extra" ,node-fs-extra) + ;("node-jsdoc" ,node-jsdoc) + ;("node-karma" ,node-karma) + ;("node-karma-browserify" ,node-karma-browserify) + ;("node-karma-edge-launcher" ,node-karma-edge-launcher) + ;("node-karma-firefox-launcher" ,node-karma-firefox-launcher) + ;("node-karma-junit-reporter" ,node-karma-junit-reporter) + ;("node-karma-mocha" ,node-karma-mocha) + ;("node-karma-mocha-reporter" ,node-karma-mocha-reporter) + ;("node-safari-launcher" ,node-safari-launcher) + ;("node-mocha" ,node-mocha) + ;("node-mocha-junit-reporter" ,node-mocha-junit-reporter) + ;("node-native-promises-only" ,node-native-promises-only) + ;("node-nyc" ,node-nyc) + ;("node-rimraf" ,node-rimraf) + ;("node-rollup" ,node-rollup) + ;("node-rollup-plugin-node-resolve" ,node-rollup-plugin-node-resolve) + ;("node-rollup-plugin-npm" ,node-rollup-plugin-npm) + ;("node-rsvp" ,node-rsvp) + ;("node-semver" ,node-semver) + ;("node-yargs" ,node-yargs) + )) + (home-page "https://caolan.github.io/async/v3/") + (synopsis "Async utilities for node and the browser") + (description "Async is a utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript.") + (license license:expat))) + +(define-public node-async-2 + (package + (inherit node-async) + (name "node-async") + (version "2.6.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/caolan/async") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lxr8m00f7723p5qpg5b5wlqv5a0y9a301r6rmhy1cv64jnznpxk")))) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + ;(replace 'build + ; (lambda _ + ; ;; make build + ; (invoke "make" "build-bundle") + ; )) + (delete 'build)))) ; Runs tests by default during 'make all'. + (inputs + `( + ;("node-lodash" ,node-lodash) + ;("node-lodash-es" ,node-lodash-es) + )) + (native-inputs + `( + ;("node-babel-cli" ,node-babel-cli) + ;("node-babel-core" ,node-babel-core) + ;("node-babel-plugin-add-module-exports" ,node-babel-plugin-add-module-exports) + ;("node-babel-plugin-instanbul" ,node-babel-plugin-instanbul) + ;("node-babel-plugin-transform-es2015-modules-commonjs" ,babel-plugin-transform-es2015-modules-commonjs) + ;("node-babel-preset-es2015" ,node-babel-preset-es2015) + ;("node-babel-preset-es2017" ,node-babel-preset-es2017) + ;("node-babelify" ,noce-babelify) + ;("node-benchmark" ,node-benchmark) + ;("node-bluebird" ,node-bluebird) + ;("node-browserify" ,node-browserify) + ;("node-chai" ,node-chai) + ;("node-cheerio" ,noce-cheerio) + ;("node-coveralls" ,node-coveralls) + ;("node-es6-promise" ,node-es6-promise) + ;("node-eslint" ,node-eslint) + ;("node-fs-extra" ,node-fs-extra) + ;("node-gh-pages-deploy" ,node-gh-pages-deploy) + ;("node-jsdoc" ,node-jsdoc) + ;("node-karma" ,node-karma) + ;("node-karma-browserify" ,node-karma-browserify) + ;("node-karma-firefox-launcher" ,node-karma-firefox-launcher) + ;("node-karma-mocha" ,node-karma-mocha) + ;("node-karma-mocha-reporter" ,node-karma-mocha-reporter) + ;("node-mocha" ,node-mocha) + ;("node-native-promises-only" ,node-native-promises-only) + ;("node-nyc" ,node-nyc) + ;("node-rimraf" ,node-rimraf) + ;("node-rollup" ,node-rollup) + ;("node-rollup-plugin-node-resolve" ,node-rollup-plugin-node-resolve) + ;("node-rollup-plugin-npm" ,node-rollup-plugin-npm) + ;("node-rsvp" ,node-rsvp) + ;("node-semver" ,node-semver) + ;("node-yargs" ,node-yargs) + ;("uglify-js" ,uglify-js) + )))) + +(define-public node-async-1 + (package + (inherit node-async) + (name "node-async") + (version "1.5.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/caolan/async") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17ai1ymw6i13zpls4hj267qmf7wwrdlf8zqvkip6q4kvrjmxhhgq")))) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (substitute* "Makefile" + (("uglifyjs") (which "uglify-js"))) + (invoke "make" "clean") + (invoke "make" "build")))))) + (native-inputs + `( + ;("node-benchmark" ,node-benchmark) + ;("node-bluebird" ,node-bluebird) + ;("node-chai" ,node-chai) + ;("node-coveralls" ,node-coveralls) + ;("node-es6-promise" ,node-es6-promise) + ;("node-jscs" ,node-jscs) + ;("node-jshint" ,node-jshint) + ;("node-karma" ,node-karma) + ;("node-karma-browserify" ,node-karma-browserify) + ;("node-karma-firefox-launcher" ,node-karma-firefox-launcher) + ;("node-karma-mocha" ,node-karma-mocha) + ;("node-karma-mocha-reporter" ,node-karma-mocha-reporter) + ;("node-lodash" ,node-lodash) + ;("node-mkdirp" ,node-mkdirp) + ;("node-mocha" ,node-mocha) + ;("node-native-promises-only" ,node-native-promises-only) + ;("node-nodeunit" ,node-nodeunit) + ;("node-nyc" ,node-nyc) + ;("node-rsvp" ,node-rsvp) + ;("node-semver" ,node-semver) + ;("node-xyz" ,node-xyz) + ;("node-yargs" ,node-yargs) + ("uglify-js" ,uglify-js) + )))) + +(define-public node-closure-library + (package + (name "node-closure-library") + (version "20191111.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/closure-library.git") + (commit (string-append "v" (version-major version))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1wiknd263wsn7b8dn3i2lv6m1m9b8wvb8r4x4cm3acpnk9rniy09")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `( + ("node-promise" ,node-promise) + ;("node-protractor" ,node-protractor) + )) + ;(native-inputs + ; `(("node-promises-aplus-test" ,node-promises-aplus-test))) + (home-page "https://developers.google.com/closure/library/") + (synopsis "Google's common JavaScript library") + (description "Closure Library is a powerful, low-level JavaScript library +designed for building complex and scalable web applications. It is used by many +Google web applications, such as Google Search, Gmail, Google Docs, Google+ +Google Maps, and others.") + (license license:asl2.0))) + +(define-public node-color + (package + (name "node-color") + (version "3.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qix-/color") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1r1v7l6nkmdi81qm670vz33qz5h2agxvd990km7afc4syd2qqc9l")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-color-convert" ,node-color-convert) + ("node-color-string" ,node-color-string))) + (native-inputs + `( + ;("node-mocha" ,node-mocha) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/Qix-/color") + (synopsis "Javascript color conversion and manipulation library") + (description "Javascript color conversion and manipulation library.") + (license license:expat))) + +(define-public node-color-convert + (package + (name "node-color-convert") + (version "2.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qix-/color-convert") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0gr892xvcn24ph2wdxbh7g5vpv644hjiyhhxh7d1jwzr2wj5zxkk")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-color-name" ,node-color-name))) + (native-inputs + `( + ;("node-chalk" ,node-chalk) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/Qix-/color-convert") + (synopsis "Plain color conversion functions in JavaScript") + (description "Plain color conversion functions in JavaScript.") + (license license:expat))) + +(define-public node-color-name + (package + (name "node-color-name") + (version "1.1.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/colorjs/color-name") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09rbmj16nfwcwkhrybqxyy66bkrs50vpw6hkdqqb14l3gsyxpr74")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(native-inputs + ; `(("node-assert" ,node-assert))) + (home-page "https://github.com/colorjs/color-name") + (synopsis "A JSON with CSS color names") + (description "A JSON with CSS color names.") + (license license:expat))) + +(define-public node-color-string + (package + (name "node-color-string") + (version "1.5.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qix-/color-string") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nzg0ayvdqvnn7v0v2dnfj7myqca9ylndnqa6bqkj0l6553i1w1r")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-color-name" ,node-color-name) + ("node-simple-swizzle" ,node-simple-swizzle))) + ;(native-inputs + ; `(("node-xo" ,node-xo))) + (home-page "https://github.com/Qix-/color-string") + (synopsis "Parser and generator for CSS color strings") + (description "Parser and generator for CSS color strings.") + (license license:expat))) + +(define-public node-colors + (package + (name "node-colors") + (version "1.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Marak/colors.js") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ih98ycxjprlxn72ygqgkgcp9wkpd20apndjd11270qyyifvkr8y")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-eslint" ,node-eslint) + ;("node-eslint-config-google" ,node-eslint-config-google) + )) + (home-page "https://github.com/Marak/colors.js") + (synopsis "get colors in your node.js console") + (description "get colors in your node.js console.") + (license license:expat))) + +(define-public node-colorspace + (package + (name "node-colorspace") + (version "1.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/colorspace") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rv01da38hkxyx4q8gs31v0sj9xsclfwq5n2h43nyracs23mqi8r")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-color" ,node-color) + ("node-text-hex" ,node-text-hex))) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-mocha" ,node-mocha) + ;("node-pre-commit" ,node-pre-commit) + )) + (home-page "https://github.com/3rd-Eden/colorspace") + (synopsis "Generate HEX colors for a given namespace") + (description "Generate HEX colors for a given namespace.") + (license license:expat))) + +(define-public node-commander + (package + (name "node-commander") + (version "4.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tj/commander.js.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10lwicm3kppbnwkcl4z6v6ix0dp5m1ny88wmli8084f3wxb1j3ds")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-eslint" ,node-eslint) + ;("node-eslint-plugin-jest" ,node-eslint-plugin-jest) + ;("node-jest" ,node-jest) + ;("node-standard" ,node-standard) + ;("node-ts-node" ,node-ts-node) + ;("node-typescript" ,node-typescript) + )) + (home-page "https://github.com/tj/commander.js") + (synopsis "Complete solution for node.js command-line programs") + (description "The complete solution for node.js command-line programs.") + (license license:expat))) + +(define-public node-configurable-http-proxy + (package + (name "node-configurable-http-proxy") + (version "4.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jupyterhub/configurable-http-proxy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1w3kf0g66sq56y6q191w1am99fwhmlfjgc6kmffmphcfl6gkw9ax")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-commander" ,node-commander) + ("node-http-proxy" ,node-http-proxy) + ("node-lynx" ,node-lynx) + ("node-strftime" ,node-strftime) + ("node-winston" ,node-winston))) + (native-inputs + `( + ;("node-jasmine" ,node-jasmine) + ;("node-jshint" ,node-jshint) + ;("node-nyc" ,node-nyc) + ;("node-prettier" ,node-prettier) + ;("node-request" ,node-request) + ;("node-request-promise-native" ,node-request-promise-native) + ;("node-ws" ,node-ws) + )) + (home-page "https://github.com/jupyterhub/configurable-http-proxy") + (synopsis "Configurable-on-the-fly HTTP Proxy") + (description "@dfn{configurable-http-proxy} (CHP) provides you with a way to +update and manage a proxy table using a command line interface or REST API. It +is a simple wrapper around @code{node-http-proxy}. @code{node-http-proxy} is an +HTTP programmable proxying library that supports websockets and is suitable for +implementing components such as reverse proxies and load balancers. By wrapping +@code{node-http-proxy}, @code{configurable-http-proxy} extends this +functionality to JupyterHub deployments.") + (license license:bsd-3))) + +(define-public node-configurable-http-proxy-3 + (package + (inherit node-configurable-http-proxy) + (name "node-configurable-http-proxy") + (version "3.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jupyterhub/configurable-http-proxy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rzyppyzbgmmkxa5v17rpvlh27ygr0wi5cnn01ajdqn9cfc70j4f")))) + (arguments '(#:tests? #f)) + (inputs + `(("node-commander" ,node-commander) + ("node-http-proxy" ,node-http-proxy) + ("node-lynx" ,node-lynx) + ("node-strftime" ,node-strftime) + ("node-winston" ,node-winston-2))) + (native-inputs + `( + ;("node-jasmine" ,node-jasmine) + ;("node-jshint" ,node-jshint) + ;("node-nyc" ,node-nyc) + ;("node-prettier" ,node-prettier) + ;("node-request" ,node-request) + ;("node-request-promise-native" ,node-request-promise-native) + ;("node-ws" ,node-ws) + )))) + +(define-public node-core-util-is + (package + (name "node-core-util-is") + (version "1.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/isaacs/core-util-is") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11avvk8bp9sp8qrn9fms3d562sc7bsyr3caqn1sc140f0zijh6rz")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(native-inputs + ; `(("node-tap" ,node-tap))) + (home-page "https://github.com/isaacs/core-util-is") + (synopsis "The util.is* functions from Node core") + (description "The @code{util.is*} functions introduced in Node v0.12.") + (license license:expat))) + +(define-public node-debug + (package + (name "node-debug") + (version "4.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/visionmedia/debug") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09g4smxkq8n2f9k4wiq5fhav91zmszl3kxr0fmn8wfbvswgrshx5")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; Building requires browserify. + (inputs + `(("node-ms" ,node-ms))) + (native-inputs + `( + ;("node-brfs" ,node-brfs) + ;("node-browserify" ,node-browserify) + ;("node-coveralls" ,node-coveralls) + ;("node-istanbul" ,node-istanbul) + ;("node-karma" ,node-karma) + ;("node-karma-browserify" ,node-karma-browserify) + ;("node-karma-chrome-launcher" ,node-karma-chrome-launcher) + ;("node-karma-mocha" ,node-karma-mocha) + ;("node-mocha" ,node-mocha) + ;("node-mocha-lcov-reporter" ,node-mocha-lcov-reporter) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/visionmedia/debug") + (synopsis "small debugging utility") + (description "A tiny JavaScript debugging utility modelled after Node.js core's debugging technique. Works in Node.js and web browsers.") + (license license:expat))) + +(define-public node-decamelize + (package + (name "node-decamelize") + (version "3.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sindresorhus/decamelize") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "04ia9sqg8s50wwralpdqlmni4bzh0225a6pp159ivfij9zcw47ss")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(inputs + ; `(("node-xregexp" ,node-xregexp))) + (native-inputs + `( + ;("node-ava" ,node-ava) + ;("node-tsd" ,node-tsd) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/sindresorhus/decamelize") + (synopsis "") + (description "Convert a camelized string into a lowercased one with a custom separator: unicornRainbow → unicorn_rainbow.") + (license license:expat))) + +(define-public node-diagnostics + (package + (name "node-diagnostics") + (version "2.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/diagnostics") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fwa5srdg75gvgj13id7ndnj6hvnn5lqqmxj8w4z22p3hvi41qmj")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; Runs tests by default during 'make all'. + (inputs + `(("node-colorspace" ,node-colorspace) + ("node-enabled" ,node-enabled) + ("node-kuler" ,node-kuler) + ("node-storage-engine" ,node-storage-engine))) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-asyncstorageapi" ,node-asyncstorageapi) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + ;("node-objstorage" ,node-objstorage) + ;("node-pre-commit" ,node-pre-commit) + ;("node-react-native" ,node-react-native) + ;("node-require-poisoning" ,node-require-poisoning) + ;("node-webpack" ,node-webpack) + ;("node-webpack-bundle-size-analyzer" ,node-webpack-bundle-size-analyzer) + ;("node-webpack-cli" ,node-webpack-cli) + )) + (home-page "https://github.com/3rd-Eden/diagnostics") + (synopsis "Tools for debugging your node.js modules") + (description "Tools for debugging your node.js modules.") + (license license:expat))) + +(define-public node-enabled + (package + (name "node-enabled") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/enabled") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cxck167l6pv73imvgnz6rdrjdwym5p1sh6w37ayy6l19kpgj3gz")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-pre-commit" ,node-pre-commit) + )) + (home-page "https://github.com/3rd-Eden/enabled") + (synopsis "Check if a certain flag is enabled") + (description "Check if a certain flag is enabled.") + (license license:expat))) + +(define-public node-env-variable + (package + (name "node-env-variable") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bigpipe/env-variable") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nnpxjxfhy4na7fixb7p3ww6ard5xgggfm83b78i333867r4gmsq")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/bigpipe/env-variable") + (synopsis "Cross platform environment variables with process.env, window.name, location.hash and localStorage fallbacks") + (description "Cross platform environment variables with process.env, window.name, location.hash and localStorage fallbacks.") + (license license:expat))) + +(define-public node-eventemitter3 + (package + (name "node-eventemitter3") + (version "4.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/primus/eventemitter3") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0hj37wxbw0ddfwrhkm9qx3qcziksz21ga07m7n608bica997djy9")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-browserify" ,node-browserify) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + ;("node-pre-commit" ,node-pre-commit) + ;("node-sauce-browsers" ,node-sauce-browsers) + ;("node-sauce-test" ,node-sauce-test) + ;("uglify-js" ,uglify-js) + )) + (home-page "https://github.com/primus/eventemitter3") + (synopsis "EventEmitter3 focuses on performance while maintaining a Node.js AND browser compatible interface") + (description "EventEmitter3 is a high performance EventEmitter. It has +been micro-optimized for various of code paths making this, one of, if not the +fastest EventEmitter available for Node.js and browsers. The module is API +compatible with the EventEmitter that ships by default with Node.js but there +are some slight differences: +@itemize +@item Domain support has been removed. +@item We do not throw an error when you emit an error event and nobody is listening. +@item The newListener and removeListener events have been removed as they are useful only in some uncommon use-cases. +@item The setMaxListeners, getMaxListeners, prependListener and prependOnceListener methods are not available. +@item Support for custom context for events so there is no need to use fn.bind. +@item The removeListener method removes all matching listeners, not only the first. +@end itemize") + (license license:expat))) + +(define-public node-far + (package + (name "node-far") + (version "0.0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-far") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "083rv1rszjn0i91zcpaghlid0kwhk0angmpj4hiflrlyhd6cmjzw")))) + (build-system node-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "bin/node-far" "tests/")))))) + (inputs + `(("node-oop" ,node-oop))) + (home-page "https://github.com/felixge/node-far") + (synopsis "Node.js test runner") + (description "A simple test runner that finds and runs multiple node.js files, while providing useful information about output and exit codes.") + (license license:expat))) + +(define-public node-fast-safe-stringify + (package + (name "node-fast-safe-stringify") + (version "2.0.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/davidmarkclements/fast-safe-stringify") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x5bpd55q1xagh4kzviy30skfiwb5qb2n39qbpwyd0sn0jl9fw51")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-benchmark" ,node-benchmark) + ;("node-clone" ,node-clone) + ;("node-json-stringify-safe" ,node-json-stringify-safe) + ;("node-standard" ,node-standard) + ;("node-tap" ,node-tap) + )) + (home-page "https://github.com/davidmarkclements/fast-safe-stringify") + (synopsis "Safely and quickly serialize JavaScript objects") + (description "Safely and quickly serialize JavaScript objects.") + (license license:expat))) + +(define-public node-fecha + (package + (name "node-fecha") + (version "3.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/taylorhakes/fecha") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xsvd2c2p4qkrnfy0ncg630w9967w0aphz2mh5nslg9r5nr3m3b6")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)) ; 'npm run build' requires rollup + )) + (native-inputs + `( + ;("node-eslint" ,node-eslint) + ;("node-nyc" ,node-nyc) + ;("node-painless" ,node-painless) + ;("node-rollup", node-rollup) + ;("node-rollup-plugin-uglify" ,node-rollup-plugin-uglify) + )) + (home-page "https://github.com/taylorhakes/fecha") + (synopsis "Lightweight Javascript Date formatting and parsing") + (description "Lightweight Javascript Date formatting and parsing.") + (license license:expat))) + +(define-public node-fn.name + (package + (name "node-fn.name") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/fn.name") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1r0pgf3ra6wglqy8pvz61kjj5kx3f40ghpni3vbv8dy4jp7bpyyi")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-pre-commit" ,node-pre-commit) + )) + (home-page "https://github.com/3rd-Eden/fn.name") + (synopsis "Extract the name from a function") + (description "Extract the name from a function.") + (license license:expat))) + +(define-public node-follow-redirects + (package + (name "node-follow-redirects") + (version "1.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/follow-redirects/follow-redirects") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1h0fikr6wwrcbc3g1wrv5cn84qn7icby2v0wwybhwd7h0ih6g5nm")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-debug" ,node-debug))) + (native-inputs + `( + ;("node-concat-stream" ,node-concat-stream) + ;("node-eslint" ,node-eslint) + ;("node-express" ,node-express) + ;("node-lolex" ,node-lolex) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + )) + (home-page "https://www.npmjs.com/package/follow-redirects") + (synopsis "Node.js module that automatically follows HTTP(S) redirects") + (description "Drop-in replacement for Node's http and https modules that automatically follows redirects.") + (license license:expat))) + +(define-public node-http-proxy + (package + (name "node-http-proxy") + (version "1.18.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/http-party/node-http-proxy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1mgr7cm4smsrvx2jqlagsldz0h1mqc2by59qdhidcpkgbk7xj8h2")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-eventemitter3" ,node-eventemitter3) + ("node-requires-port" ,node-requires-port) + ("node-follow-redirects" ,node-follow-redirects))) + (native-inputs + `( + ("node-async" ,node-async) + ;("node-auto-changelog" ,node-autochangelog) + ;("node-concat-stream" ,node-concat-stream) + ;("node-expect-js" ,node-expect-js) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + ;("node-semver" ,node-semver) + ;("node-socket-io" ,node-socket-io) + ;("node-socket-io-client" ,node-socket-io-client) + ;("node-sse" ,node-sse) + ;("node-ws" ,node-ws) + )) + (home-page "https://github.com/http-party/node-http-proxy") + (synopsis "Full-featured http proxy for node.js") + (description "@code{node-http-proxy} is an HTTP programmable proxying +library that supports websockets. It is suitable for implementing components +such as reverse proxies and load balancers.") + (license license:expat))) + +(define-public node-inherits + (package + (name "node-inherits") + (version "2.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/isaacs/inherits") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cpsr5yqwkxpbbbbl0rwk4mcby6zbx841k2zb4c3gb1579i5wq9p")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(native-inputs + ; `(("node-tap" ,node-tap))) + (home-page "https://github.com/isaacs/inherits") + (synopsis "Easy simple tiny inheritance in JavaScript") + (description "Easy simple tiny inheritance in JavaScript.") + (license license:isc))) + +(define-public node-is-arrayish + (package + (name "node-is-arrayish") + (version "0.3.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qix-/node-is-arrayish.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0j0w190b52ysizc3xl2pykbm3iln1x5yis3mb9hsyscv0174w047")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-coffee-script" ,node-coffee-script) + ;("node-coveralls" ,node-coveralls) + ;("node-eslint" ,node-eslint) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-should" ,node-should) + )) + (home-page "https://github.com/Qix-/node-is-arrayish") + (synopsis "Check if an object can be used like an Array") + (description "Check if an object can be used like an Array.") + (license license:expat))) + +(define-public node-is-stream + (package + (name "node-is-stream") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sindresorhus/is-stream") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0vpr89p5zx16jbqz9bhj22x8112v7hfn4nx1kz68mbczcild0p0s")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-ava" ,node-ava) + ;("node-tempy" ,node-tempy) + ;("node-tsd" ,node-tsd) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/sindresorhus/is-stream") + (synopsis "Check if something is a Node.js stream") + (description "Check if something is a Node.js stream.") + (license license:expat))) + +(define-public node-isarray + (package + (name "node-isarray") + (version "2.0.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/juliangruber/isarray") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "16693czcxd2pasbk4nad403szl1ns6sq7r0vxmyj5l5d20sajsm4")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; 'make' runs the tests by default. + ;(native-inputs + ; `(("node-tape" ,node-tape))) + (home-page "https://github.com/juliangruber/isarray") + (synopsis "Array#isArray for older browsers") + (description "Array#isArray for older browsers and deprecated Node.js versions.") + (license license:expat))) + +(define-public node-kuler + (package + (name "node-kuler") + (version "2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/kuler") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03513djgh0mp1lfi28gn1a72jx7b17hdb5p3y6pz127vd8afj3az")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-mocha" ,node-mocha) + )) + (home-page "https://github.com/3rd-Eden/kuler") + (synopsis "Color your terminal using CSS/hex color codes") + (description "Color your terminal using CSS/hex color codes.") + (license license:expat))) + +(define-public node-lodash + (package + (name "node-lodash") + (version "4.17.15") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lodash/lodash") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1hp04cg3b59j3dpnvzixd5p6wpv34mj2pnq8wp60csv3p2s0qk4y")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-async" ,node-async) + ;("node-benchmark" ,node-benchmark) + ;("node-chalk" ,node-chalk) + ;("node-cheerio" ,node-cheerio) + ;("node-codecov.io" ,node-codecov.io) + ;("node-coveralls" ,node-coveralls) + ;("node-curl-amd" ,node-curl-amd) + ;("node-docdown" ,node-docdown) + ;("node-dojo" ,node-dojo) + ;("node-ecstatic" ,node-ecstatic) + ;("node-fs-extra" ,node-fs-extra) + ;("node-glob" ,node-glob) + ;("node-istanbul" ,node-istanbul) + ;("node-jquery" ,node-jquery) + ;("node-jscs" ,nodejscd) + ;("node-lodash" ,node-lodash) ; version-x.y.(z-1) + ;("node-lodash-doc-globals" ,node-lodash-doc-globals) + ;("node-markdown-doctest" ,node-markdown-doctest) + ;("node-optional-dev-dependency" ,node-optional-dev-dependency) + ;("node-platform" ,node-platform) + ;("node-qunit-extras" ,node-qunit-extras) + ;("node-qunitjs" ,node-qunitjs) + ;("node-request" ,node-request) + ;("node-requirejs" ,node-requirejs) + ;("node-sauce-tunnel" ,node-sauce-tunnel) + ;("node-uglify-js" ,node-uglify-js) + ;("node-webpack" ,node-webpack) + )) + (home-page "https://lodash.com/") + (synopsis "A modern JavaScript utility library delivering modularity, performance, & extras") + (description "A modern JavaScript utility library delivering modularity, performance, & extras.") + (license license:expat))) + +(define-public node-logform + (package + (name "node-logform") + (version "2.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/winstonjs/logform") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08yljxd888zzw1qn1w4hr3fyj997gvdi9v9dva03azyxp2db466a")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; 'build needs rimraf and babel. + (inputs + `(("node-colors" ,node-colors) + ("node-fast-safe-stringify" ,node-fast-safe-stringify) + ("node-fecha" ,node-fecha) + ("node-ms" ,node-ms) + ("node-triple-beam" ,node-triple-beam))) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-babel" ,node-babel) + ;("node-eslint-config-populist" ,node-eslint-config-populist) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + ;("node-rimraf" ,node-rimraf) + )) + (home-page "https://github.com/winstonjs/logform") + (synopsis "A mutable object format designed for chaining & objectMode streams") + (description "A mutable object format designed for chaining & objectMode streams.") + (license license:expat))) + +(define-public node-long-stack-traces + (package + (name "node-long-stack-traces") + (version "0.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tlrobinson/long-stack-traces") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0famwsyc6xawi30v25zi65d8fhbvlvh976bqydf1dqn5gz200cl3")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/tlrobinson/long-stack-traces") + (synopsis "Long stacktraces for V8 implemented in user-land JavaScript") + (description "Long stacktraces for V8 implemented in user-land JavaScript.") + (license license:expat))) ; in README + +(define-public node-lynx + (package + (name "node-lynx") + (version "0.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "git://github.com/dscape/lynx.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1l7pl8qm7kcafsafh8iyzb4cwh344kwlg6gp9ab0bmwaqby6vhzp")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-mersenne" ,node-mersenne) + ("node-statsd-parser" ,node-statsd-parser))) + ;(native-inputs + ; `(("node-tap" ,node-tap))) + (home-page "https://github.com/dscape/lynx") + (synopsis "node.js client for Etsy'd StatsD server") + (description "Minimalistic StatsD client for Node.js programs.") + (license license:expat))) + +(define-public node-mersenne + (package + (name "node-mersenne") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jwatte/node-mersenne") + (commit "f9fa01694ee49d6ae6ff9d90cfda594bddd3ccef"))) ; release is untagged + (file-name (git-file-name name version)) + (sha256 + (base32 + "034iaiq2pdqn342p2404cpz364g282d2hkp9375hysnh9i968wbb")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "http://www.enchantedage.com/node-mersenne") + (synopsis "node.js module for generating Mersenne Twister random numbers") + (description "Node.js port of the Mersenne Twister random number generator.") + (license license:bsd-3))) + +(define-public node-ms + (package + (name "node-ms") + (version "2.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/zeit/ms") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pjxzbi4j8pinlsc7yxvfrh0b47kb2dc4lfc2rjq4wx5bdwl33fj")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-eslint" ,node-eslint) + ;("node-expect-js" ,node-expect-js) + ;("node-husky" ,node-husky) + ;("node-lint-staged" ,node-lint-staged) + ;("node-mocha" ,node-mocha) + )) + (home-page "https://github.com/zeit/ms") + (synopsis "Tiny milisecond conversion utility") + (description "Tiny millisecond conversion utility.") + (license license:expat))) + +(define-public node-one-time + (package + (name "node-one-time") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/one-time") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0k8b8radmha4cfpv31xa7wf77w6bpsyq3h387yy4vlf9jbg4acpf")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; 'build needs rimraf and babel. + (inputs + `(("node-fn.name" ,node-fn.name))) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + )) + (home-page "https://github.com/3rd-Eden/one-time") + (synopsis "Run the supplied function exactly one time (once)") + (description "Run the supplied function exactly one time (once).") + (license license:expat))) + +(define-public node-oop + (let ((commit "f9d87cda0958886955c14a0a716e57021ed295dc") + (revision "1")) + (package + (name "node-oop") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-oop") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mqrcf0xi2jbwffwkk00cljpqfsri1jk8s6kz8jny45apn7zjds1")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; Tests run during build phase. + (home-page "https://github.com/felixge/node-oop") + (synopsis "Simple & light-weight oop") + (description "This library tries to bring basic oop features to JavaScript while being as light-weight and simple as possible.") + (license license:expat)))) + +(define-public node-process-nextick-args + (package + (name "node-process-nextick-args") + (version "2.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/calvinmetcalf/process-nextick-args") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00g4294ijw12mfq5jjicn9q2f6s4hgxmwb7vng09lzmbhhd8jss2")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(native-inputs + ; `(("node-tap" ,node-tap))) + (home-page "https://github.com/calvinmetcalf/process-nextick-args") + (synopsis "process.nextTick always accepts args, always") + (description "Always be able to pass arguments to process.nextTick, no matter the platform.") + (license license:expat))) + +(define-public node-promise + (package + (name "node-promise") + (version "8.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/then/promise.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1bwfmhvmj9mmkqawpqf09n4b1gnlmbvkjn9gfm2n8i51vsw12ffz")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-asap" ,node-asap))) + (native-inputs + `( + ;("node-acorn" ,node-acorn) + ;("node-better-assert" ,node-better-assert) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-promises-aplus-tests" ,node-promises-aplus-tests) + ;("node-rimraf" ,node-rimraf) + )) + (home-page "https://developers.google.com/closure/library/") + (synopsis "Google's common JavaScript library") + (description "Closure Library is a powerful, low-level JavaScript library +designed for building complex and scalable web applications. It is used by many +Google web applications, such as Google Search, Gmail, Google Docs, Google+ +Google Maps, and others.") + (license license:asl2.0))) + +(define-public node-readable-stream + (package + (name "node-readable-stream") + (version "3.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nodejs/readable-stream") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1n27wwndizcnh7qc209y697lzr1xwv2c4xmi2bgpgk0zxhw215j8")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-inherits" ,node-inherits) + ("node-string_decoder" ,node-string_decoder) + ("node-util-deprecate" ,node-util-deprecate))) + (native-inputs + `( + ;("node-babel" ,node-babel) + ;("node-airtap" ,node-airtap) + ;("node-assert" ,node-assert) + ;("node-bl" ,node-bl) + ;("node-deep-strict-equal" ,node-deep-strict-equal) + ;("node-glob" ,node-glob) + ;("node-gunzip-maybe" ,node-gunzip-maybe) + ;("node-hyperquest" ,node-hyperquest) + ;("node-lolex" ,node-lolex) + ;("node-nyc" ,node-nyc) + ;("node-pump" ,node-pump) + ;("node-rimraf" ,node-rimraf) + ;("node-tap" ,node-tap) + ;("node-tape" ,node-tape) + ;("node-tar-fs" ,node-tar-fs) + ;("node-util-promisify" ,node-util-promisify) + )) + (home-page "https://nodejs.org/api/stream.html") + (synopsis "Node-core streams for userland") + (description "This package is a mirror of the streams implementations in Node.js.") + (license license:expat))) + +(define-public node-requires-port + (package + (name "node-requires-port") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/unshiftio/requires-port") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "051ii93g03np6pnlmjkpqhikq1awqaybqbm85pz1x78wb8synkx0")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-pre-commit" ,node-pre-commit) + )) + (home-page "https://github.com/unshiftio/requires-port") + (synopsis "Check if a protocol requires a certain port number to be added to an URL.") + (description "Check if a protocol requires a certain port number to be added to an URL.") + (license license:expat))) + +(define-public node-safe-buffer + (package + (name "node-safe-buffer") + (version "5.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/feross/safe-buffer") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1972bv22h0wi7ky2ig8a0glz23ddjwcccjn5pvh1laa5n0jcz6zx")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-standard" ,node-standard) + ;("node-tape" ,node-tape) + )) + (home-page "https://github.com/feross/safe-buffer") + (synopsis "Safer Node.js Buffer API") + (description "Safer Node.js Buffer API.") + (license license:expat))) + +(define-public node-simple-swizzle + (package + (name "node-simple-swizzle") + (version "0.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qix-/node-simple-swizzle") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1j6gyqax3w675q1c8gxh2fmk9swkyplhkci96b2qxhkl1aads8qi")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-is-arrayish" ,node-is-arrayish))) + (native-inputs + `( + ;("node-coffee-script" ,node-coffee-script) + ;("node-coveralls" ,node-coveralls) + ;("node-istanbul" ,node-istanbul) + ;("node-mocha" ,node-mocha) + ;("node-should" ,node-should) + ;("node-xo" ,node-xo) + )) + (home-page "https://github.com/Qix-/node-simple-swizzle") + (synopsis "Simply swizzle your arguments") + (description "Simply swizzle your arguments.") + (license license:expat))) + +(define-public node-stack-trace + (package + (name "node-stack-trace") + (version "0.0.10") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-stack-trace") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1vci7qmkmrhgvncz24ihwpi7ivwj6ffw63l0jd216lgmlcv3xscg")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)) ; 'make' runs the test suite. + )) + (native-inputs + `(("node-far" ,node-far) + ("node-long-stack-traces" ,node-long-stack-traces))) + (home-page "https://github.com/felixge/node-stack-trace") + (synopsis "Get v8 stack traces as an array of CallSite objects") + (description "Get v8 stack traces as an array of CallSite objects.") + (license license:expat))) + +(define-public node-statsd-parser + (package + (name "node-statsd-parser") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dscape/statsd-parser") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "049rnczsd6pv6bk282q4w72bhqc5cs562djgr7yncy7lk0wzq5j3")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/dscape/statsd-parser") + (synopsis "Streaming parser for the statsd protocol") + (description "Streaming parser for the statsd protocol used in node-lynx.") + (license license:asl2.0))) + +(define-public node-storage-engine + (package + (name "node-storage-engine") + (version "3.0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/storage-engine") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07axbp05wmadbmpdphxgyd9siq9z5glf2z626gvg4wm1s3qv37lx")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; build wants babel + (inputs + `(("node-enabled" ,node-enabled) + ("node-eventemitter3" ,node-eventemitter3))) + (native-inputs + `( + ;(:node-babel" ,node-babel) + ;("node-assume" ,node-assume) + ;("node-asyncstorageapi" ,node-asyncstorageapi) + ;("node-mocha" ,node-mocha) + ;("node-react-native" ,node-react-native) + ;("node-require-poisoning" ,node-require-poisoning) + ;("node-setup-env" ,node-setup-env) + )) + (home-page "https://github.com/3rd-Eden/storage-engine") + (synopsis "EventEmitter abstraction on top the React-Native AsyncStorage API") + (description "EventEmitter abstraction on top the React-Native AsyncStorage API.") + (license license:expat))) + +(define-public node-strftime + (package + (name "node-strftime") + (version "0.10.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "git://github.com/samsonjs/strftime.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "131nmlivazwxyba25kh9lda99749fq4xsyin6lzfalaaydviby4p")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; wants 'closure' binary to minify strftime.js. + ;(native-inputs + ; `(("node-closure" ,node-closure))) + (home-page "https://github.com/samsonjs/strftime") + (synopsis "Strftime for JavaScript") + (description "@code{strftime} for JavaScript. Works in (at least) node.js +and browsers. Supports localization and timezones. Most standard specifiers +from C are supported as well as some other extensions from Ruby.") + (license license:expat))) + +(define-public node-string_decoder + (package + (name "node-string_decoder") + (version "1.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nodejs/string_decoder") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xxvyya9fl9rlkqwmxzqzbz4rdr3jgw4vf37hff7cgscxkhg266k")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `(("node-safe-buffer" ,node-safe-buffer))) + (native-inputs + `( + ;("node-babel-polyfill" ,node-babel-polyfill) + ;("node-core-util-is" ,node-core-util-is) + ("node-inherits" ,node-inherits) + ;("node-tap" ,node-tap) + )) + (home-page "https://github.com/nodejs/string_decoder") + (synopsis "'string_decoder' module from Node.js core") + (description "'string_decoder' module from Node.js core.") + (license license:expat))) + +(define-public node-text-hex + (package + (name "node-text-hex") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/3rd-Eden/text-hex") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10qk72yq7l8zrs099b88k4nag43bamqp5wilv6hg8601qdgbnh2w")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-mocha" ,node-mocha) + ;("node-pre-commit" ,node-pre-commit) + )) + (home-page "https://github.com/3rd-Eden/text-hex") + (synopsis "Create a hash from a string of text and transforms it to a color") + (description "Create a hash from a string of text and transforms it to a color.") + (license license:expat))) + +(define-public node-triple-beam + (package + (name "node-triple-beam") + (version "1.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/winstonjs/triple-beam") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03dk13shq6780mmsx4c6y22v5zhf4800b4w92pd2j82w905s9vv5")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `( + ;("node-assume" ,node-assume) + ;("node-eslint-config-populist" ,node-eslint-config-populist) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + )) + (home-page "https://github.com/winstonjs/triple-beam") + (synopsis "Definitions of levels for logging purposes & shareable Symbol constants") + (description "Definitions of levels for logging purposes & shareable Symbol constants.") + (license license:expat))) + +(define-public node-util-deprecate + (package + (name "node-util-deprecate") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/TooTallNate/util-deprecate") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0npj4mksv10z6l0q1m84s263xx4afrmgq6f2v7y29gam2phifz6n")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No test suite. + (home-page "https://github.com/TooTallNate/util-deprecate") + (synopsis "The Node.js `util.deprecate()` function with browser support") + (description "The Node.js `util.deprecate()` function with browser support.") + (license license:expat))) + +(define-public node-winston + (package + (name "node-winston") + (version "3.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/winstonjs/winston.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "14v2pxa6xs9j1zkjszw94kc5njcmrb3c1s1hs8rnyfjxaf5hb32c")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; 'build needs rimraf and babel. + (inputs + `(("node-async" ,node-async) + ("node-diagnostics" ,node-diagnostics) + ("node-is-stream" ,node-is-stream) + ("node-logform" ,node-logform) + ("node-one-time" ,node-one-time) + ("node-readable-stream" ,node-readable-stream) + ("node-stack-trace" ,node-stack-trace) + ("node-triple-beam" ,node-triple-beam) + ("node-winston-transport" ,node-winston-transport))) + (native-inputs + `( + ;("node-babel" ,node-babel) + ;("node-rimraf" ,node-rimraf) + )) + (home-page "https://github.com/winstonjs/winston") + (synopsis "logger for just about everything") + (description "A logger for just about everything.") + (license license:expat))) + +(define-public node-winston-2 + (package + (inherit node-winston) + (name "node-winston") + (version "2.4.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/winstonjs/winston.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0wiihp0n1pygjynlky4751wfn2x5d46f18diahgnaq1ryppvxjj1")))) + (arguments '(#:tests? #f)) + (inputs + `(("node-async" ,node-async-1) + ("node-colors" ,node-colors) + ;("node-cycle" ,node-cycle) + ;("node-eyes" ,node-eyes) + ;("node-isstream" ,node-isstream) + ("node-stack-trace" ,node-stack-trace))) + (native-inputs + `( + ;("node-cross-spawn-async" ,node-cross-spawn-async) + ;("node-hock" .node-hock) + ;("node-std-mocks" ,node-mocks) + ;("node-vows" ,node-vows) + )))) + +(define-public node-winston-transport + (package + (name "node-winston-transport") + (version "4.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/winstonjs/winston-transport") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lq50adzzb8xiy7xrbkl6g6z6lv0rhm7zppkmrqjm0km58qg8fbf")))) + (build-system node-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'build)))) ; 'build needs rimraf and babel. + (inputs + `(("node-readable-stream" ,node-readable-stream) + ("node-triple-beam" ,node-triple-beam))) + (native-inputs + `( + ;("node-abstract-winston-transport" ,node-abstract-winston-transport) + ;("node-assume" ,node-assume) + ;("node-babel-cli" ,node-babel-cli) + ;("node-babel-preset-env" ,node-babel-preset-env) + ;("node-eslint-config-populist" ,node-eslint-config-populist) + ("node-logform" ,node-logform) + ;("node-mocha" ,node-mocha) + ;("node-nyc" ,node-nyc) + ;("node-rimraf" ,node-rimraf) + ;("node-winston-compat" ,node-winston-compat) + )) + (home-page "https://github.com/winstonjs/winston-transport") + (synopsis "Base stream implementations for winston@3 and up") + (description "The base TransportStream implementation for winston >= 3. Use these to write ecosystem Transports for winston.") + (license license:expat))) + +(define-public node-xregexp + (package + (name "node-xregexp") + (version "4.2.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/slevithan/xregexp") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pwbr8j6g561kp5980gk4l45azn4q14ab1vhxl2ib8fp44nhyphl")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + ;(inputs + ; `(("node-babel-runtime-corejs2" ,node-babel-runtime-corejs2))) + (native-inputs + `( + ;("node-babel-cli" ,node-babel-cli) + ;("node-babel-core" ,node-babel-core) + ;("node-babel-plugin-transform-runtime" ,node-babel-plugin-transform-runtime) + ;("node-babel-preset-env" ,node-babel-preset-env) + ;("node-babel-plugin-add-module-exports" ,node-babel-plugin-add-module-exports) + ;("node-babel-plugin-array-includes" ,node-babel-plugin-array-includes) + ;("node-babel-plugin-transform-xregexp" ,node-babel-plugin-transform-xregexp) + ;("node-browserify" ,node-browserify) + ;("node-eslint" ,node-eslint) + ;("node-jasmine" ,node-jasmine) + ;("node-jsesc" ,node-jsesc) + ;("node-unicode-11.0.0" ,node-unicode-11.0.0) + ;("node-unicode-property-value-aliases" ,node-unicode-property-value-aliases) + ;("node-zuul" ,node-zuul) + )) + (home-page "http://xregexp.com/") + (synopsis "Extended JavaScript regular expressions") + (description "Extended JavaScript regular expressions/") + (license license:expat))) + +(define-public node-yargs + (package + (name "node-yargs") + (version "15.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/yargs/yargs") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lfgph477cchjm4qrab9ni0wj9i6psbhy4mvpzn2jkrcfcffgvfi")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `( + ;("node-cliui" ,node-cliui) + ("node-decamelize" ,node-decamelize) + ;("node-find-up" ,node-find-up) + ;("node-get-caller-file" ,node-get-caller-file) + ;("node-require-directory" ,node-require-directory) + ;("node-require-main-filename" ,node-require-main-filename) + ;("node-set-blocking" ,node-set-blocking) + ;("node-string-width" ,node-string-width) + ;("node-which-module" ,node-which-module) + ;("node-y18n" ,node-y18n) + ;("node-yargs-parser" ,node-yargs-parser) + )) + (native-inputs + `( + ;("node-c8" ,node-c8) + ;("node-chai" ,node-chai) + ;("node-chalk" ,node-chalk) + ;("node-coveralls" ,node-coveralls) + ;("node-cpr" ,node-cpr) + ;("node-cross-spawn" ,node-cross-spawn) + ;("node-es6-promise" ,node-es6-promise) + ;("node-hashish" ,node-hashish) + ;("node-mocha" ,node-mocha) + ;("node-rimraf" ,node-rimraf) + ;("node-standard" ,node-standard) + ;("node-which" ,node-which) + ;("node-yargs-test-extends" ,node-yargs-test-extends) + )) + (home-page "http://yargs.js.org/") + (synopsis "yargs the modern, pirate-themed successor to optimist") + (description "yargs the modern, pirate-themed successor to optimist.") + (license license:expat))) + +(define-public node-yargs-parser + (package + (name "node-yargs-parser") + (version "16.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/yargs/yargs-parser") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "066wl3609ymg9wmrjlcya3c7sv9ba03dzg8qqmzvqxrkz894s89x")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) + (inputs + `( + ;("node-camelcase" ,node-camelcase) + ("node-decamelize" ,node-decamelize) + )) + (native-inputs + `( + ;("node-c8" ,node-c8) + ;("node-chai" ,node-chai) + ;("node-coveralls" ,node-coveralls) + ;("node-mocha" ,node-mocha) + ;("node-standard" ,node-standard) + ;("node-standard-version" ,node-standard-version) + )) + (home-page "http://yargs.js.org/") + (synopsis "the mighty option parser used by yargs") + (description "the mighty option parser used by yargs.") + (license license:isc))) diff --git a/gn/services/bnw-container.scm b/gn/services/bnw-container.scm index 2e5e521..8463a75 100644 --- a/gn/services/bnw-container.scm +++ b/gn/services/bnw-container.scm @@ -13,7 +13,7 @@ (package bnw-configuration-package ; package (default bnw)) (deploy-directory bnw-deploy-directory ; string - (default "/home/bnw/server")) + (default "/srv/http")) (port bnw-configuration-port ; list of strings (default '("8880")))) @@ -23,11 +23,12 @@ #~(begin (use-modules (guix build utils)) (when (directory-exists? #$deploy-directory) - (delete-file-recusively #$deploy-directory)) + ;; Not 'delete-file-recursively' because the directory might be empty. + (system* "rm" "-r" #$(string-append deploy-directory "/*"))) (mkdir-p #$deploy-directory) (copy-recursively #$package #$deploy-directory) - (system* #$(file-append coreutils "/bin/chmod") "a+w" - (string-append #$deploy-directory "/sourcecodes/data")))))) + (invoke #$(file-append coreutils "/bin/chmod") "a+w" + (string-append #$deploy-directory "/sourcecodes/data")))))) (define bnw-nginx-config (match-lambda @@ -37,7 +38,7 @@ (server-name '("Bayesian Network")) (listen port) ;(root package) - (root "/srv/http") + (root deploy-directory) (locations (list (nginx-php-location) @@ -74,13 +75,14 @@ (bootloader grub-bootloader) (target "does-not-matter"))) (file-systems %base-file-systems) - ;; No firmware for VMs + ;; No firmware for VMs. (firmware '()) + ;; We don't need any packages inside the container. + (packages '()) (services (list (service dhcp-client-service-type) (service bnw-service-type ;; The following is for testing: ;(bnw-configuration - ; (deploy-directory "/home/efraimf/bnw") ; (port '("8888"))) )))) diff --git a/gn/services/bnw.service b/gn/services/bnw.service index ec7b3f8..5ba8f3f 100644 --- a/gn/services/bnw.service +++ b/gn/services/bnw.service @@ -3,7 +3,7 @@ Description=BNW web server Wants=guix-daemon.service [Service] -Environment="BNW_COMMAND=$(/bin/su -l bnw -c '/var/guix/profiles/per-user/bnw/current-guix/bin/guix system container /home/bnw/guix-bioinformatics/gn/services/bnw-container.scm --share=/home/bnw/server=/srv/http --network')" +Environment="BNW_COMMAND=$(/bin/su -l bnw -c '/var/guix/profiles/per-user/bnw/current-guix/bin/guix system container /home/bnw/guix-bioinformatics/gn/services/bnw-container.scm --share=/home/bnw/server=/srv/http --share=/home/bnw/server/var-log=/var/log --network')" ExecStart=/bin/bash -c '${BNW_COMMAND}' [Install] |