From 5e8b600b98dc058d3fc1d8bbda943ca9d8ac66f3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 30 Apr 2021 14:35:12 +0300 Subject: gn: genome-browser: update package, service --- gn/packages/bioinformatics.scm | 16 +++++++++++----- gn/services/genome-browser.scm | 35 ++++++++++++++++++++++++++++++++--- 2 files changed, 43 insertions(+), 8 deletions(-) (limited to 'gn') diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm index 3785b0f..b41546a 100644 --- a/gn/packages/bioinformatics.scm +++ b/gn/packages/bioinformatics.scm @@ -1649,8 +1649,7 @@ multiple sequence alignment.") #t))) ))) (inputs - `( - ("freetype" ,freetype) + `(("freetype" ,freetype) ("libpng" ,libpng) ("mysql:dev" ,mariadb "dev") ("mysql:lib" ,mariadb "lib") @@ -1685,6 +1684,13 @@ to a particular gene to view its spliced ESTs and possible alternative splicing. The Genome Browser itself does not draw conclusions; rather, it collates all relevant information in one location, leaving the exploration and interpretation to the user.") - (license (license:non-copyleft - "https://www.genome.ucsc.edu/conditions.html" - "Free for academic/non-profit/personal use only.")))) + (license (list + license:bsd-0 ; kent/src/{utils,lib,inc,tabStorm,parasol,hg/ausoSql,hg/autoXml} + license:bsd-3 ; these two for bundled htslib-1.3 + license:expat + (license:non-copyleft + "https://www.genome.ucsc.edu/license/" + "Free for academic/non-profit/personal use only.") + (license:non-copyleft ; Blat, In-Silico PCR + "http://www.kentinformatics.com/index.html" + "Free for universities and non-profit institutions."))))) diff --git a/gn/services/genome-browser.scm b/gn/services/genome-browser.scm index 7f7ffc0..1a5b678 100644 --- a/gn/services/genome-browser.scm +++ b/gn/services/genome-browser.scm @@ -8,6 +8,7 @@ (gn packages bioinformatics)) (use-service-modules databases + networking web) (use-package-modules bash @@ -42,7 +43,10 @@ "backupcentral.domain=\n" "freeType=on\n" "freeTypeDir=" gs-fonts "/share/fonts/type1/ghostscript\n" + ;"hgc.psxyPath=/hive/data/outside/GMT4.3.1/bin/psxy" + ;"hgc.ps2rasterPath=""/bin/ps2raster" "hgc.ghostscriptPath=" ghostscript "/bin/gs\n" ; needed? + "udc.cacheDir=/var/www/html/trash/udcCache\n" ; default is /tmp/udcCache )) (define %startup-script @@ -55,8 +59,14 @@ coreutils-minimal "/bin/chown -R httpd:httpd /var/www\n" )) -;; TODO: create 'daily clean' mcron scripts. -;; /var/www/html/trash needs to be created and owned by httpd:httpd +;; TODO: +;; create 'daily clean' mcron scripts. +;; move /var/www/html/trash to /gbdb/trash? +;; Fix from main page: +;; hgVai +;; hgIntegrator +;; from 'more tools' +;; hgPhyloPlace (define ucsc-genome-browser-port 4321) @@ -78,6 +88,21 @@ (service special-files-service-type `(("/root/create_hgcentral" ,%startup-script) ("/var/lib/genome/hg.conf" ,%hg.conf))) + (service inetd-service-type + (inetd-configuration + (entries + (list + (inetd-entry + (node "127.0.0.1") + (name "blat") ; yes, it's named blat + (socket-type 'stream) + (protocol "tcp") ; probably? + (wait? #f) + (user "httpd:httpd") ; or dedicated user. Needs write access. + (program (file-append ucsc-genome-browser "/bin/gfServer")) + (arguments + '("gfServer" "dynserver" "/gbdb"))))))) + (syslog-service) ; needed by inetd (service httpd-service-type (httpd-configuration (config @@ -105,6 +130,8 @@ ScriptSock /var/run/cgid.sock Alias /bin " ucsc-genome-browser "/bin #Alias /cgi-bin " ucsc-genome-browser "/cgi-bin # causes cgi scripts to fail to render Alias /htdocs " ucsc-genome-browser "/htdocs + #Alias /trash /var/www/html/trash # this is wrong + Alias /var/www/html/trash /var/www/html/trash Options +Includes +FollowSymLinks +Indexes AllowOverride None @@ -132,6 +159,8 @@ ScriptSock /var/run/cgid.sock "))))))))) -;; guix system container -L /path/to/guix-past/modules/ -L /path/to/guix-bioinformatics/ /path/to/guix-bioinformatics/gn/services/genome-browser.scm --network ;--expose=/path/to/gbdb=/gbdb +;; guix system container -L /path/to/guix-past/modules/ -L /path/to/guix-bioinformatics/ /path/to/guix-bioinformatics/gn/services/genome-browser.scm --network --share=/path/to/gbdb=/gbdb ;; ALSO need to share in the external database? +;; Probably not, it falls back to http://hgdownload.soe.ucsc.edu/gbdb/ +;; Can skip the %startup-script dance if /var/lib/mysql is stored outside of the container, but might need /var/www/html/trash too then. ;; xdg-open http://localhost:4321 -- cgit v1.2.3