From f4c3abf2b8625e73c8aa945c5be1ee3f4b6715be Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 16 Jun 2020 10:01:40 +0300 Subject: containerize rn6-assembly app --- gn/packages/bioinformatics.scm | 11 ++++++++--- gn/services/rn6-assembly-container.scm | 24 ++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 gn/services/rn6-assembly-container.scm (limited to 'gn') diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm index 6ae76ae..fca21a9 100644 --- a/gn/packages/bioinformatics.scm +++ b/gn/packages/bioinformatics.scm @@ -15,6 +15,7 @@ #:use-module (guix build-system waf) #:use-module (gnu packages) #:use-module (gn packages python) + #:use-module (gnu packages base) #:use-module (gnu packages bioconductor) #:use-module (gnu packages bioinformatics) #:use-module (gnu packages boost) @@ -672,13 +673,16 @@ different datasets. "/bin/Rscript")) (convert (string-append (assoc-ref %build-inputs "imagemagick") "/bin/convert")) + (cp (string-append (assoc-ref %build-inputs "coreutils") + "/bin/cp")) (source (assoc-ref %build-inputs "source"))) (copy-recursively source targetdir) (substitute* (string-append targetdir "/server.r") ;; This version is ideal for deploying with the included PNGs. - ;; But we want all of them, so we use a local copy in gn-rshiny's $HOME. + ;; But we want all of them, so we use a local copy in shepherd's $HOME. ;;(("./pngs") (string-append targetdir "/pngs")) - (("./pngs") "/home/gn-rshiny/hchen/rn6app/pngs") + (("./pngs") "/home/shepherd/rn6app/pngs") + (("cp") cp) (("convert") convert)) (mkdir-p (string-append out "/bin")) (call-with-output-file app @@ -693,7 +697,8 @@ runApp(launch.browser=0, port=4202)~%\n" #t)))) (native-inputs `(("source" ,source))) (inputs - `(("imagemagick" ,imagemagick) + `(("coreutils" ,coreutils-minimal) + ("imagemagick" ,imagemagick) ("r-min" ,r-minimal))) (propagated-inputs `(("freetype" ,freetype) diff --git a/gn/services/rn6-assembly-container.scm b/gn/services/rn6-assembly-container.scm new file mode 100644 index 0000000..44056c3 --- /dev/null +++ b/gn/services/rn6-assembly-container.scm @@ -0,0 +1,24 @@ +(define-module (gn services rn6-assembly-container)) + +(use-modules (gnu) + (gn packages bioinformatics) + (gn services rshiny)) + +(operating-system + (host-name "rn6-assembly") + (timezone "Etc/UTC") + (locale "en_US.utf8") + + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (target "does-not-matter"))) + (file-systems %base-file-systems) + ;; No firmware for VMs. + (firmware '()) + ;; We only need a few packages inside the container. + (packages '()) + + (services (list (service rshiny-service-type + (rshiny-configuration + (package rn6-assembly-error-app) + (binary "rn6-assembly-error-app")))))) -- cgit v1.2.3