about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBonfaceKilz2020-06-04 15:48:13 +0300
committerBonfaceKilz2020-06-04 15:48:13 +0300
commit697fdd4b85f4b6d2e709667ea2fc47b39b16969b (patch)
tree20dcbda52a8f051f1ce4ffa832db8b076444762c
parent89f8fa2776fcd01ed30baf2f1edf1deec1d2da62 (diff)
parentce0dd5075df243985259be06cca1bd302a3da275 (diff)
downloadguix-bioinformatics-697fdd4b85f4b6d2e709667ea2fc47b39b16969b.tar.gz
Merge branch 'master' of http://git.genenetwork.org/guix-bioinformatics/guix-bioinformatics
-rw-r--r--gn/packages/genenetwork.scm19
-rw-r--r--gn/packages/python24.scm1
-rw-r--r--gn/packages/web.scm84
-rw-r--r--gn/services/genenetwork.scm6
4 files changed, 99 insertions, 11 deletions
diff --git a/gn/packages/genenetwork.scm b/gn/packages/genenetwork.scm
index c174ce2..9f36779 100644
--- a/gn/packages/genenetwork.scm
+++ b/gn/packages/genenetwork.scm
@@ -29,8 +29,8 @@
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages vim)
   #:use-module (gnu packages web)
-  #:use-module (gnu packages xml)
   #:use-module (gnu packages wget)
+  #:use-module (gnu packages xml)
   #:use-module (gn packages bioinformatics)
   #:use-module (gn packages crates-io)
   #:use-module (gn packages elixir)
@@ -40,7 +40,8 @@
   #:use-module (gn packages phewas)
   #:use-module (gn packages python)
   #:use-module (gn packages python24)
-  #:use-module (gn packages statistics))
+  #:use-module (gn packages statistics)
+  #:use-module (gn packages web))
 
 
 
@@ -687,6 +688,14 @@ written in C")
          (base32
           "1s735dj8kf98gf5w58p10zzyc5766gn27j4j5yh07ksadg7h1kdi"))))
       (build-system gnu-build-system)
+      (propagated-inputs
+       `(("ghostscript" ,ghostscript)
+         ("graphviz" ,graphviz-2.26)
+         ("httpd" ,httpd)
+         ("python24" ,python-2.4)
+         ("mod-python-24" ,mod-python-24)
+         ("python-piddle" ,python24-piddle)
+         ("wget" ,wget)))
       (arguments
        `(#:tests? #f ; no tests
          #:phases
@@ -729,12 +738,6 @@ written in C")
              (lambda* (#:key outputs #:allow-other-keys)
                (copy-recursively "." (assoc-ref outputs "out"))
                #t)))))
-      (inputs
-       `(("ghostscript" ,ghostscript)
-         ("graphviz" ,graphviz-2.26)
-         ("python24" ,python-2.4)
-         ("python-piddle" ,python24-piddle)
-         ("wget" ,wget)))
       (home-page "http://www.genenetwork.org/webqtl/main.py")
       (synopsis
        "Combined database and data analysis software resource for systems genetics")
diff --git a/gn/packages/python24.scm b/gn/packages/python24.scm
index d9b5694..b24190d 100644
--- a/gn/packages/python24.scm
+++ b/gn/packages/python24.scm
@@ -14,6 +14,7 @@
   #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages readline)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages tls)
   #:use-module (srfi srfi-1))
diff --git a/gn/packages/web.scm b/gn/packages/web.scm
index 03fac11..c683f5d 100644
--- a/gn/packages/web.scm
+++ b/gn/packages/web.scm
@@ -1,9 +1,13 @@
 (define-module (gn packages web)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages fonts)
+  #:use-module (gn packages python24)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages readline)
+  #:use-module (gnu packages tcl)
   #:use-module (gnu packages web)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -200,6 +204,7 @@ extensive prebuilt components, and powerful plugins built on jQuery.")
                #t)))))
       (inputs
        `(("httpd" ,httpd)
+         ("readline" ,readline)
          ("python" ,python-2))) ; does not seem to build with python3.7+
       (native-inputs `(("flex" ,(@ (gnu packages flex) flex))))
       (home-page "http://modpython.org/")
@@ -211,6 +216,85 @@ will have access to advanced features such as ability to retain database
 connections and other data between hits and access to Apache internals.")
       (license license:asl2.0))))
 
+(define-public mod-python-24
+  (package
+    (inherit mod-python)
+    (name "mod-python-24")
+    (version "3.3.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://archive.apache.org/dist/httpd/"
+                            "modpython/mod_python-" version ".tgz"))
+        (sha256
+         (base32
+          "0sss2xi6l1a2z8y6ji0cp8vgyvnhq8zrg0ilkvpj1mygbzyk28xd"))
+        (patches
+          (list
+            (origin
+              (method url-fetch)
+              (uri "https://sources.debian.org/data/main/liba/libapache2-mod-python/3.3.1-11/debian/patches/04_autoconf_python_multiarch.patch")
+              (file-name "mod-python-24-python-discovery.patch")
+              (sha256
+               (base32
+                "0n3zp8j6q0mp0scry7d2hi0baqkim42bqq2c81p4l6mizsy8ry4h")))
+            (origin
+              (method url-fetch)
+              (uri "https://sources.debian.org/data/main/liba/libapache2-mod-python/3.3.1-11/debian/patches/10_bts521965.patch")
+              (file-name "mod-python-24-apr13-compat.patch")
+              (sha256
+               (base32
+                "1k2cd2r13938fbm473sn0ivicaylkcqigyqn2wjir9ppch98kybg")))
+            (origin
+              (method url-fetch)
+              (uri "https://sources.debian.org/data/main/liba/libapache2-mod-python/3.3.1-11/debian/patches/20_apache24.patch")
+              (file-name "mod-python-24-apache24-compat.patch")
+              (sha256
+               (base32
+                "1bmcx7ki7y486x6490yppssr7dh3a0qyki6gjf2lj83gyh68c0r0")))))))
+    (arguments
+     `(#:tests? #f
+       #:imported-modules ((guix build python-build-system)
+                           ,@%gnu-build-system-modules)
+       #:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  ((guix build python-build-system) #:prefix python:))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'bootstrap
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((python (assoc-ref inputs "python"))
+                    (tcl (assoc-ref inputs "tcl"))
+                    (py-version (python:python-version python))
+                    (tcl-version ,(version-major+minor (package-version tcl))))
+               (substitute* "configure.in"
+                 (("PY_LIBS=.*")
+                  (string-append "PY_LIBS=-L" python "/lib/python" py-version "\n"))
+                 (("PY_LDFLAGS=.*")
+                  (string-append "PY_LDFLAGS=\"-lpython" py-version
+                                 " -lreadline -lssl -lcrypto"
+                                 " -ltk" tcl-version " -ltcl" tcl-version
+                                 " -lgdbm -ltirpc -lnsl -lz\"\n"))
+                 (("PY_INCLUDES=.*")
+                  (string-append "PY_INCLUDES=-I" python "/include/python" py-version "\n")))
+               (invoke "autoreconf" "-vfi"))))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (install-file "src/mod_python.so" (string-append out "/modules"))
+               (with-directory-excursion "dist"
+                 (invoke "python" "setup.py" "install" "--root=/"
+                         (string-append "--prefix=" out)))
+               #t))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("flex" ,(@ (gnu packages flex) flex))))
+    (inputs
+     `(("httpd" ,httpd)
+       ("python" ,python-2.4)
+       ,@(package-inputs python-2.4)))))
+
 (define-public web-font-awesome
   (package
     (inherit font-awesome)
diff --git a/gn/services/genenetwork.scm b/gn/services/genenetwork.scm
index 4693152..28e51e9 100644
--- a/gn/services/genenetwork.scm
+++ b/gn/services/genenetwork.scm
@@ -8,7 +8,7 @@
 (use-package-modules python)
 
 (define %mod-python-path
-  (file-append mod-python "/lib/python2.4/site-packages"))
+  (file-append mod-python-24 "/lib/python2.4/site-packages"))
 
 (operating-system
   (host-name "genenetwork")
@@ -23,7 +23,7 @@
   (firmware '())
 
   (packages (cons* python-2.4
-                   mod-python
+                   mod-python-24
                    python24-qtlreaper
                    ;python24-htmlgen-gn
                    python24-json-GN1
@@ -43,7 +43,7 @@
                                  (modules (cons*
                                             (httpd-module
                                               (name "python_module")
-                                              (file (file-append mod-python "/modules/mod_python.so")))
+                                              (file (file-append mod-python-24 "/modules/mod_python.so")))
                                             %default-httpd-modules))
                                  (extra-config (list "\
 PythonPath \"sys.path+['" %mod-python-path "', '" (file-append genenetwork1 "/web/webqtl") "']\"