Skip to main content

Mini guide to installing/upgrading ESO Gasgano and pipelines via install scripts - Knowledgebase / Data processing and analysis software resources - ESO Operations Helpdesk

Mini guide to installing/upgrading ESO Gasgano and pipelines via install scripts

Authors list

Mini guide to installing and/or upgrading ESO Gasgano and pipelines via install scripts

Gasgano is no longer actively supported. You are advised against using Gasgano. But if for whatever reason you feel you must use Gasgano, please follow the instructions below to install it.

Before starting...

Each ESO pipeline Source kit file contains all the software required to build that pipeline (except 'standard' software like compilers that need to be installed as per Software Prerequisites).

The ESO pipeline install script methods allow to install pipelines for multiple instruments together making use of a common installation of common components (such as CPL, esorex, cfitsio, etc). The drawback though is that install script installations can not be easily managed, i.e. adding, removing or upgrading pipelines is not supported. Once an install script installation is completed, the only way to add, remove or upgrade a pipeline (or any of the common components) is to redo the complete installation.

Package manager installations on the other hand allow easy adding, removing and upgrading of the pipelines and all components. However Gasgano is NOT supported by for package manager installation. So if you are using Linux under one of our supported distributions or any version of macOS then we strongly recommend that you use esoreflex and install via our package manager installation method (MacPorts or RPM). 

After following the instructions on those pages, the pipelines should "just work out of the box" via esoreflex or esorex.

If you are not using macOS or Linux under one of our supported distributions, or do not have administrative privileges on your computer and can not get someone with administrative privileges to install the software for you, then the next best solution is indeed the install_esoreflex script method.

Before starting an install script installation, please insure that you have all pre-requisities installed.

Installing Gasgano

In case you still feel you need Gasgano, we recommend installing via the following method:

Double check you have installed the software pre-requisities, in particular a Java 1.8 JDK (e.g. java-1.8.0-opnjdk-devel RPM systems, openjdk-8-jdk on Ubuntu systems, openjdk8-temurin/openjdk8-zulu from MacPorts on macOS x86_64/aarm64).

Download

bash
INSTALL_DIR=${HOME}/pipelines/gasgano/$(date +%Y-%m-%d)
mkdir -pv "${INSTALL_DIR}/src"
cd ${INSTALL_DIR}/src
curl -O https://www.eso.org/sci/software/pipelines/install_pipelinekit 

You will then need to download the "Source kit" files (third column of the table under the 'Instrument Pipeline Packages' section here) for each pipeline you wish to install into the above directory.

Build

Once you have done so then install as follows, depending on your OS:

RPM based...

env -i PATH=$(getconf PATH) JAVA_HOME=/etc/alternatives/java_sdk_1.8.0_openjdk bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

APT based...

env -i PATH=$(getconf PATH) JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

MacPorts
macOS x86_64...

env -i PATH=/opt/local/bin:$(getconf PATH) JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-temurin/Contents/Home FC=gfortran-mp-12 bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

macOS aarm64 (a.k.a. M1 a.k.a. Apple Silicon)...

env -i PATH=/opt/local/bin:$(getconf PATH) JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-zulu/Contents/Home FC=gfortran-mp-12 bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

HomeBrew
macOS x86_64...

env -i PATH=/opt/homebrew/bin:$(getconf PATH) JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-temurin/Contents/Home bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

macOS aarm64 (a.k.a. M1 a.k.a. Apple Silicon)...

env -i PATH=/opt/homebrew/bin:$(getconf PATH) JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-zulu/Contents/Home bash ./install_pipelinekit ${INSTALL_DIR} *-kit-*.tar.gz

This will install the software in a self-contained isolated way (making it easy to remove (rm -fr ${INSTALL_DIR}) or re-install) and also avoid issues with with other installed software (e.g. *conda).

To not install Gasgano...

If you just want the esorex interface and do NOT want to install Gasgano, then you can omit the "JAVA_HOME=..." argument in the above commands and add "-ignore_gasgano" as the first argument after "./install_pipelinekit".

Modify installed gasgano script

Before running gasgano, the gasgano script needs to be modified:

Linux

sed -i -e 's/^unset JAVA_HOME/#&/' ${HOME}/gasgano/bin/gasgano 

macOS

sed -i '' -e 's/^unset JAVA_HOME/#&/' ${HOME}/gasgano/bin/gasgano 

Run

Appropriate environment variables (JAVA_HOME & CPL_DIR) then need to be set for run time:

RPM based...

JAVA_HOME=/etc/alternatives/java_sdk_1.8.0_openjdk CPLDIR=${INSTALL_DIR} ${HOME}/gasgano/bin/gasgano 

APT based...

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 CPLDIR=${INSTALL_DIR} ${HOME}/gasgano/bin/gasgano 

macOS x86_64...

JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-temurin/Contents/Home CPLDIR=${INSTALL_DIR} ${HOME}/gasgano/bin/gasgano 

macOS aarm64 (a.k.a. M1 a.k.a. Apple Silicon)...

JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8-zulu/Contents/Home CPLDIR=${INSTALL_DIR} ${HOME}/gasgano/bin/gasgano 

JAVA_HOME and CPL_DIR could be set in your login scripts, or you could create an alias for the above command.

Clean up

Once you are happy Gasgano is running OK, you can remove the source and build files:

rm -fr "${INSTALL_DIR}/src"