aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner2021-04-30 14:35:12 +0300
committerEfraim Flashner2021-04-30 14:49:05 +0300
commit5e8b600b98dc058d3fc1d8bbda943ca9d8ac66f3 (patch)
tree25f70f49229a2a1f46522fc2bf3a09701f2f3962
parent7d8b95546ad7a90ccc9175e7a71a198f05f1b359 (diff)
downloadguix-bioinformatics-5e8b600b98dc058d3fc1d8bbda943ca9d8ac66f3.tar.gz
gn: genome-browser: update package, service
-rw-r--r--gn/packages/bioinformatics.scm16
-rw-r--r--gn/services/genome-browser.scm35
2 files changed, 43 insertions, 8 deletions
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
<Directory " ucsc-genome-browser "/html>
Options +Includes +FollowSymLinks +Indexes
AllowOverride None
@@ -132,6 +159,8 @@ ScriptSock /var/run/cgid.sock
</Directory>
</VirtualHost>")))))))))
-;; 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