1. Installation

The release and development versions of gemBS can be downloaded and installed on a wide range of standard Unix environments. The source code is available from github, and installation instructions are given below. The section on containers should also be read as it describes an alternative method of installing gemBS without having to install additional tools or libraries using Singularity or Docker containers (See 10. Containers).

1.1. Requirements

gemBS requires several external applications and libraries to be installed to allow building and operation of the pipelines.

The first requirement is for a standard Unix environment (Linux / macOS) with the normal command line development tools installed (gcc, make, cmake etc.). Other libraries that should be installed are libz, liblzma, libcurl, libcurses, libexpat, libfreetype2, libfontconfig).

Starting from a fresh Ubuntu installation (14.04, 16.04 or 18.04), the following commands will install everything required to run gemBS:

apt-get update
apt-get install -y build-essential git autoconf wget lbzip2 pkg-config cmake
apt-get install -y zlib1g-dev libbz2-dev libexpat1-dev
apt-get install -y libncurses5-dev liblzma-dev libssl-dev libcurl4-openssl-dev curl
apt-get install -y libfreetype6-dev libfontconfig1-dev

The same commands should also work with a Debian installation.

For yum based distributions (Redhat, CentOS), the following commands should install all the requirements for gemBS.:

yum -y update
yum -y groupinstall development
yum install -y zlib-devel bzip2-devel xz-devel openssl-devel libcurl-devel ncurses-devel wget
yum install -y cmake freetype-devel fontcontfig-devel expat-devel

And for ArchLinux, the following commands are required.:

pacman -Syu --noconfirm
pacman -Sy --noconfirm base-devel
pacman -S --noconfirm cmake wget git curl freetype2 expat fontconfig

1.2. Download and install gemBS

Download the gemBS distribution from the github repository:

git clone --recursive https://github.com/heathsc/gemBS-rs.git

Go into the gemBS-rs directory and edit (if necessary) the file:

gemBS_config.mk.in

This file contains a few compile and install options.

Variable

Function

$GEMBS_INSTALL_ROOT

All files installed by gemBS will go here

$INSTALL_TEXLIVE

Install minimal TeXLive distribution to allow generation of pdf reports

$SLURM_SUPPORT

Include support for SLURM work management system

If the installation completes successfully you should add $GEMBS_INSTALL_ROOT/bin to your shell PATH if it is not already there so that you can run gemBS from the command line. At this point, running the command:

gemBS

should show you a help screen with a list of the possible commands available.

1.3. Upgrading gemBS

If gemBS has been installed from source, then upgrading can be done using git to pull in the changes and then re-run the setup commands above:

git pull --recurse-submodules
make installl

For Docker or Singularity containers, the latest versions will always be available on Docker Hub and Singularity Hub, so to upgrade it is sufficient to pull down a new version of the gemBS container.