aboutsummaryrefslogtreecommitdiff
path: root/gn/packages/genenetwork.scm
diff options
context:
space:
mode:
authorMuriithi Frederick Muriuki2018-03-21 12:15:08 +0300
committerMuriithi Frederick Muriuki2018-03-21 12:15:08 +0300
commit1a9a3e4964c7fa88e79bdf10b294350339ed8974 (patch)
treec6a79a9736b8b46016ac64d4c68027e8f97fbf70 /gn/packages/genenetwork.scm
parent84dd8cebae9eefdb7d7f9ca43e53b3ddfc295eb1 (diff)
downloadguix-bioinformatics-1a9a3e4964c7fa88e79bdf10b294350339ed8974.tar.gz
gn: genenetwork3: Add new package
* gn/packages/genenetwork.scm (genenetwork3): Add a new package
Diffstat (limited to 'gn/packages/genenetwork.scm')
-rw-r--r--gn/packages/genenetwork.scm131
1 files changed, 131 insertions, 0 deletions
diff --git a/gn/packages/genenetwork.scm b/gn/packages/genenetwork.scm
index 14b7945..5217f65 100644
--- a/gn/packages/genenetwork.scm
+++ b/gn/packages/genenetwork.scm
@@ -353,3 +353,134 @@ location of a putative QTL.")
(synopsis "Small database to run on genenetwork")
(description "Genenetwork installation + database.")
(license license:agpl3+))))
+
+
+(define-public genenetwork3
+ (let ((commit "1538ffd33af19e6ac922b4ee85fe701408968dfd"))
+ (package
+ (name "genenetwork3")
+ (version (string-append "2.10rc5-" (string-take commit 7) ))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://pjotrp@gitlab.com/genenetwork/gn2_diet.git")
+ ;; (url "https://github.com/genenetwork/genenetwork2_diet.git")
+ (commit commit)))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "0ji929xgzypyhchcfy9xa1sz04w322ibs2khc8s3qiddxjqdglrz"))))
+ (propagated-inputs ;; propagated for development purposes
+ `( ;; Agnostic to Python
+ ("r" ,r)
+ ("git" ,git)
+ ("vim" ,vim)
+ ("grep" ,grep)
+ ("which" ,which)
+ ("r-ctl" ,r-ctl)
+ ("r-qtl" ,r-qtl)
+ ("redis" ,redis)
+ ("mysql" ,mysql)
+ ("nginx" ,nginx)
+ ("r-wgcna" ,r-wgcna)
+ ("r-phewas" ,r-phewas)
+ ("coreutils" ,coreutils)
+ ("gemma" ,gemma-gn2-git)
+ ("plink-ng-gn" ,plink-ng-gn)
+ ("python-lxml" ,python-lxml) ;; used for the tests
+ ("gemma-wrapper" ,gemma-wrapper)
+ ("python-unittest" ,python-unittest2) ;; used for the tests
+ ("python-parameterized" ,python-parameterized) ;; used for the tests
+ ("genenetwork2-files-small" ,genenetwork2-files-small)
+ ("javascript-twitter-post-fetcher" ,javascript-twitter-post-fetcher)
+
+
+ ;; With Python3 support
+ ("gunicorn" ,gunicorn)
+ ("python-rpy2" ,python-rpy2)
+ ("python-flask" ,python-flask)
+ ("python-scipy" ,python-scipy)
+ ("python-numpy" ,python-numpy)
+ ("python-redis" ,python-redis)
+ ("python-scipy" ,python-scipy)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-jinja2" ,python-jinja2)
+ ("python-pandas" ,python-pandas)
+ ("python-passlib" ,python-passlib)
+ ("python-requests" ,python-requests)
+ ("python-sqlalchemy" ,python-sqlalchemy)
+ ("python-setuptools" ,python-setuptools)
+ ("python-simplejson" ,python-simplejson)
+ ("python-xlsxwriter" ,python-xlsxwriter)
+ ("python-mysqlclient" ,python-mysqlclient)
+ ("python-elasticsearch" ,python-elasticsearch)
+ ("python-flask-sqlalchemy" ,python-flask-sqlalchemy)
+
+
+ ;; Without Python3 support
+ ("qtlreaper" ,qtlreaper) ;; Run as an external program
+ ("pylmm-gn2" ,pylmm-gn2) ;; To be run as an external python2 program
+ ("python2-pil1" ,python2-pil1) ; should move to pillow some day. Run as external python2 program
+ ("python2-numarray" ,python2-numarray) ;; Update gn2 code and drop this (IMPORTANT)
+ ("python2-piddle-gn" ,python2-piddle-gn) ;; Run as external python2 program
+ ("python2-htmlgen-gn" ,python2-htmlgen-gn) ;; pjotrp and zsloan to give directions
+
+
+ ;; Removed packages
+ ;; ("python2-mechanize" ,python2-mechanize)
+ ;; ("python2-parallel" ,python2-parallel)
+ ))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases
+ %standard-phases
+ (delete 'reset-gzip-timestamps)
+ (add-after
+ 'unpack 'fix-paths-scripts
+ (lambda* _
+ (substitute* "bin/genenetwork2"
+ (("/usr/bin/env") (which "env"))
+ (("python ") (string-append (which "python") " "))
+ (("readlink") (which "readlink"))
+ (("dirname") (which "dirname"))
+ (("basename") (which "basename"))
+ (("cat") (which "cat"))
+ (("echo") (which "echo"))
+ (("redis-server") (which "redis-server"))
+ (("git") (which "git"))
+ (("grep") (which "grep"))
+ (("rm") (which "rm"))
+ (("which") (which "which")))
+ #t))
+ (add-before
+ 'install 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let* ((datafiles
+ (string-append
+ (assoc-ref inputs "genenetwork2-files-small")
+ "/share/genenetwork2" ))
+ (pylmmcmd
+ (string-append
+ (assoc-ref inputs "pylmm-gn2") "/bin/pylmm_redis"))
+ (plink2cmd
+ (string-append
+ (assoc-ref inputs "plink-ng-gn") "/bin/plink2"))
+ (gemmacmd
+ (string-append (assoc-ref inputs "gemma") "/bin/gemma")))
+
+ (substitute*
+ '("etc/default_settings.py")
+ (("^GENENETWORK_FILES +=.*")
+ (string-append "GENENETWORK_FILES = \"" datafiles "\"\n" ))
+ (("^PYLMM_COMMAND =.*")
+ (string-append "PYLMM_COMMAND = \"" pylmmcmd "\"\n" ))
+ (("^PLINK_COMMAND =.*")
+ (string-append "PLINK_COMMAND = \"" plink2cmd "\"\n" ))
+ (("^GEMMA_COMMAND =.*")
+ (string-append "GEMMA_COMMAND = \"" gemmacmd "\"\n" )))))))
+ #:tests? #f)) ; no 'setup.py test'
+ (home-page "http://genenetwork.org/")
+ (synopsis "Full genenetwork services")
+ (description "Genenetwork installation sumo.")
+ (license license:agpl3+))))