about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gn/packages/javascript.scm38
-rw-r--r--gn/packages/ruby.scm104
-rw-r--r--gn/packages/yaj.scm32
3 files changed, 174 insertions, 0 deletions
diff --git a/gn/packages/javascript.scm b/gn/packages/javascript.scm
index a964405..40246dd 100644
--- a/gn/packages/javascript.scm
+++ b/gn/packages/javascript.scm
@@ -163,3 +163,41 @@
     (synopsis "Cytoscape.js")
     (description "Cytoscape.")
     (license license:expat)))
+
+;; https://github.com/DataTables/DataTables/archive/1.10.12.tar.gz
+(define-public javascript-datatables
+  (package
+   (name "javascript-datatables")
+   (version "1.10.12") ; ancient version
+   (source
+    (origin
+     (method url-fetch)
+     (uri (string-append "https://github.com/DataTables/DataTables/archive/" version ".tar.gz"))
+     (file-name (string-append name "-" version ".tar.gz"))
+     (sha256
+      (base32 "0blzsd2zqmvnqi6pl1xq0dr457kjrdaaa86d2cmdakls0j2mj92s"))))
+   (inputs `(("javascript-cytoscape" ,javascript-cytoscape)))
+   (build-system trivial-build-system)
+   (native-inputs `(("gzip" ,gzip)
+                    ("tar" ,tar)
+                    ("source" ,source)))
+   (arguments
+    `(#:modules ((guix build utils))
+      #:builder
+      (begin
+        (use-modules (guix build utils))
+        (let* ((out (assoc-ref %outputs "out"))
+               (tarcmd (string-append (assoc-ref %build-inputs "tar") "/bin/tar"))
+               (targetdir (string-append out "/share/genenetwork2/javascript/DataTables"))
+               (source (assoc-ref %build-inputs "source")))
+          (setenv "PATH" (string-append
+                          (assoc-ref %build-inputs "tar") "/bin" ":"
+                          (assoc-ref %build-inputs "gzip") "/bin"))
+          (invoke "tar" "xvf" (assoc-ref %build-inputs "source") "--strip-components=1")
+          (mkdir-p targetdir)
+           (copy-recursively "media" targetdir)
+          ))))
+    (home-page "https://github.com/DataTables/")
+    (synopsis "Datatables")
+    (description "Datatables.")
+    (license license:expat)))
diff --git a/gn/packages/ruby.scm b/gn/packages/ruby.scm
index 091d0a9..3838d55 100644
--- a/gn/packages/ruby.scm
+++ b/gn/packages/ruby.scm
@@ -340,3 +340,107 @@ a history.")
   (home-page
     "http://github.com/pjotrp/bioruby-vcf")
   (license license:expat)))
+
+(define-public ruby-faraday
+(package
+  (name "ruby-faraday")
+  (version "0.14.0")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (rubygems-uri "faraday" version))
+      (sha256
+        (base32
+          "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr"))))
+  (build-system ruby-build-system)
+  (propagated-inputs
+    `(("ruby-multipart-post" ,ruby-multipart-post)))
+  (arguments
+   `(#:tests? #f)) ;; no bundler/cucumber
+  (synopsis "HTTP/REST API client library.")
+  (description "HTTP/REST API client library.")
+  (home-page
+    "https://github.com/lostisland/faraday")
+  (license license:expat)))
+
+(define-public ruby-elasticsearch-transport
+(package
+  (name "ruby-elasticsearch-transport")
+  (version "6.0.2")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (rubygems-uri "elasticsearch-transport" version))
+      (sha256
+        (base32
+          "0gpwbw70qisx681j1bw8xq6shg5kdxmcdzg6425af0b5881jg7iy"))))
+  (build-system ruby-build-system)
+  (propagated-inputs
+    `(("ruby-faraday" ,ruby-faraday)
+      ("ruby-multi-json" ,ruby-multi-json)))
+  (arguments
+   `(#:tests? #f)) ;; no bundler/cucumber
+  (synopsis
+    "Ruby client for Elasticsearch. See the `elasticsearch` gem for full integration.
+")
+  (description
+    "Ruby client for Elasticsearch.  See the `elasticsearch` gem for full integration.
+")
+  (home-page
+    "https://github.com/elasticsearch/elasticsearch-ruby/tree/master/elasticsearch-transport")
+  (license #f)))
+
+(define-public ruby-elasticsearch-api
+(package
+  (name "ruby-elasticsearch-api")
+  (version "6.0.2")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (rubygems-uri "elasticsearch-api" version))
+      (sha256
+        (base32
+          "1vkahknqn85vvwr1gzh8jf3pvdial0c0d524icg8x06vibqgzd5h"))))
+  (build-system ruby-build-system)
+  (propagated-inputs
+    `(("ruby-multi-json" ,ruby-multi-json)))
+  (arguments
+   `(#:tests? #f)) ;; no bundler/cucumber
+  (synopsis
+    "Ruby API for Elasticsearch. See the `elasticsearch` gem for full integration.
+")
+  (description
+    "Ruby API for Elasticsearch.  See the `elasticsearch` gem for full integration.
+")
+  (home-page
+    "https://github.com/elasticsearch/elasticsearch-ruby/tree/master/elasticsearch-api")
+  (license #f)))
+
+(define-public ruby-elasticsearch
+  (package
+   (name "ruby-elasticsearch")
+   (version "6.0.2")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (rubygems-uri "elasticsearch" version))
+     (sha256
+      (base32
+       "0a08ynvxz5clfm2ndqpgjrv4aiga9m2y1ab34s3qkihdfdzdzhj8"))))
+   (build-system ruby-build-system)
+   (propagated-inputs
+    `(("ruby-elasticsearch-api"
+       ,ruby-elasticsearch-api)
+      ("ruby-elasticsearch-transport"
+       ,ruby-elasticsearch-transport)))
+  (arguments
+   `(#:tests? #f)) ;; no bundler/cucumber
+   (synopsis
+    "Ruby integrations for Elasticsearch (client, API, etc.)
+")
+   (description
+    "Ruby integrations for Elasticsearch (client, API, etc.)
+")
+   (home-page
+    "http://github.com/elasticsearch/elasticsearch-ruby")
+   (license #f)))
diff --git a/gn/packages/yaj.scm b/gn/packages/yaj.scm
index c5fe7fb..0e5e146 100644
--- a/gn/packages/yaj.scm
+++ b/gn/packages/yaj.scm
@@ -52,6 +52,38 @@
   #:use-module (gn packages web)
   #:use-module (srfi srfi-1))
 
+(define-public python-elasticsearch
+  (package
+    (name "python-elasticsearch")
+    (version "6.3.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "elasticsearch" version))
+        (sha256
+         (base32
+          "1gpgb2vxl1q7hqrxxdlmfp9dxcl5wg3k78vxk2lka1cjaqd7mzw0"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-mock" ,python-mock)
+       ("python-nosexcover" ,python-nosexcover)
+       ("python-pyaml" ,python-pyaml)
+       ("python-requests" ,python-requests)))
+    (propagated-inputs
+     `(("urllib3" ,python-urllib3)))
+    (arguments
+     ;; tests require the test_elasticsearch module but it is not distributed.
+     `(#:tests? #f))
+    (home-page "https://github.com/elastic/elasticsearch-py")
+    (synopsis "Low-level client for Elasticsearch")
+    (description "Official low-level client for Elasticsearch.  Its goal is to
+provide common ground for all Elasticsearch-related code in Python; because of
+this it tries to be opinion-free and very extendable.")
+    (license license:expat)))
+
+(define-public python2-elasticsearch
+  (package-with-python2 python-elasticsearch))
+
 (define-public yaj
   (let ((md5 "93e745e9c"))
     (package