Edit this page | Blame

Apps

GeneNetwork.org retains a number of apps. Currently they are managed by shepherd as `guix shell` services, but we should really move them to system containers.

Tags

Tasks

List of apps

Current apps managed by shepherd/systemd on tux02/balg01 are

To fix them we need to validate the sheepdog monitor and make sure they are working in either shepherd (+), or as a system container (X).

Sheepdog monitor is at

Info

BNW

The app is already a Guix system container! To make it part of the startup I had to move it away from shepherd (which runs in userland) and:

/home/shepherd/guix-profiles/bnw/bin/guix system container /home/shepherd/guix-bioinformatics/gn/services/bnw-container.scm --share=/home/shepherd/logs/bnw-server=/var/log --network
ln -s /gnu/store/0hnfb9ynnxsig3yyprwxmg5h6c9g8mry-run-container /usr/local/bin/bnw-app-container

systemd service:

root@tux02:/etc/systemd/system# cat bnw-app-container.service
[Unit]
Description = Run genenetwork BNW app container
[Service]
ExecStart = /usr/local/bin/bnw-app-container
[Install]
WantedBy = multi-user.target

We need to make sure the garbace collector does not destroy the container, add the --root switch

/home/shepherd/guix-profiles/bnw/bin/guix system container /home/shepherd/guix-bioinformatics/gn/services/bnw-container.scm --share=/home/shepherd/logs/bnw-server=/var/log --network --root=/usr/local/bin/bnw-app-container

Check with

root@tux02:/home/shepherd# /home/shepherd/guix-profiles/bnw/bin/guix gc --list-roots |grep bnw
  /usr/local/bin/bnw-app-container

R/shiny apps

The R/shiny apps were showing a tarball mismatch:

building /gnu/store/rjnw7k56z955v4bl07flm9pjwxx5vs0r-r-minimal-4.0.2.drv...
downloading from http://cran.r-project.org/src/contrib/Archive/KernSmooth/KernSmooth_2.23-17.tar.gz ...
- 'configure' phasesha256 hash mismatch for /gnu/store/n05zjfhxl0iqx1jbw8i6vv1174zkj7ja-KernSmooth_2.23-17.tar.gz:
  expected hash: 11g6b0q67vasxag6v9m4px33qqxpmnx47c73yv1dninv2pz76g9b
  actual hash:   1ciaycyp79l5aj78gpmwsyx164zi5jc60mh84vxxzq4j7vlcdb5p
hash mismatch for store item '/gnu/store/n05zjfhxl0iqx1jbw8i6vv1174zkj7ja-KernSmooth_2.23-17.tar.gz'

Guix checks and it is not great CRAN allows for changing tarballs with the same version number!! Luckily building with a more recent version of Guix just worked (TM). Now we create a root too:

/home/wrk/opt/guix-pull/bin/guix pull -p ~/guix-profiles/guix-for-r-shiny

Note I did not have to pull in guix-bioinformatics channel

Singlecell

Singlecell is an R/shiny app. It starts with an error after above upgrade:

no slot of name "counts" for this object of class

and the code needs to be updated:

The 4 year old code lives at

and it looks like lines like these need to be updated:

Let me ask the author Siamak Yousefi.

jumpshiny

balg01:~/gn-machines$ guix system container --network -L . -L ../guix-bioinformatics/ -L ../guix-past/modules/ --substitute-urls='https:
//ci.guix.gnu.org https://bordeaux.guix.gnu.org https://cuirass.genenetwork.org' test-r-container.scm -L ../guix-forge/guix/
/gnu/store/xyks73sf6pk78rvrwf45ik181v0zw8rx-run-container
(made with skribilo)