Reflex Software Prerequisites and Installation Instructions

Release of Reflex based workflows for VLT pipelines

A number of VLT pipelines deliver workflows compatible with Reflex 2.8. You can browse the available pipelines here.

For the Fedora 20/21/22/23/24/25 64 bits platforms, we strongly recommend using our RPM repositories to install the pipeline software including workflows and Reflex. Instructions are given here.

For the Apple OS X 10.9 platform or newer, there is now also an option to install the pipeline software including workflows and Reflex using MacPorts. Instructions for this installation method are given here.

The rest of the instructions on this page are for installing from source code packages instead. Please note that the name of the command to lauch Reflex from the terminal is now esoreflex. This used to be reflex in older Reflex distributions.

Software prerequisites installation

The VLT workflows and Reflex depend on a number of packages that must be installed, namely gcc, gzip, make, Java 7, python, python-astropy (pyfits on old platforms), wxPython, matplotlib, numpy and fv. Additionally the Gravity pipeline needs yorick. Below, we list three ways to install these dependencies.

  • Distribution package managers. This usually requires software installation rights.
    • Fedora 22 or later official repositories. It is very easy to install most of the dependencies using the official yum repositories. Using root access execute the following commands in a terminal:     dnf upgrade     dnf install python2-matplotlib python2-matplotlib-wx wxPython python-astropy numpy java-openjdk python2 gcc-c++ zlib-devel make gzip tar yorick yorick-optimpack yorick-yet If you also want to install Gasgano (not the default), then install the following additional package:     dnf install java-1.8.0-openjdk-devel

      You will still have to install the fv binary manually. Follow the instructions here. If possible, install fv so that it is accessible through /usr/bin.

    • CentOS 6.x official repositories. It is very easy to install most of the dependencies using the official yum repositories. Using root access execute the following commands in a terminal:     yum upgrade     yum install python-matplotlib python-matplotlib-wx wxPython pyfits numpy java-1.7.0-openjdk python gcc-c++ zlib-devel make gzip tar If the operating system is 64 bits: update-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java If it is 32 bits: update-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk/bin/java

      You will still have to install the fv binary manually. Follow the instructions here. If possible, install fv so that it is accessible through /usr/bin.

    • Ubuntu official repositories (version 15.10 or later) and Debian 8. It is very easy to install most of the dependencies using the official apt repositories. Just execute in a terminal the following commands (you might be prompted for your password):     sudo apt-get update     sudo apt-get upgrade     sudo apt-get install python-matplotlib python-wxgtk3.0 python-astropy python-numpy default-jre pkg-config g++ zlib1g-dev make gzip tar yorick yorick-yeti yorick-optimpack If you also want to install Gasgano (not the default), then install the following additional package:     apt-get install default-jdk

      You will still have to install the fv binary manually. Follow the instructions here. If possible, install fv so that it is accessible through /usr/bin.

    • Ubuntu 12.04, Ubuntu 14.04 or Debian 7 official repositories. It is very easy to install most of the dependencies using the official apt repositories. Just execute in a terminal the following commands (you might be prompted for your password):     sudo apt-get update     sudo apt-get upgrade     sudo apt-get install python-matplotlib python-wxgtk2.8 python-astropy python-numpy openjdk-7-jre pkg-config g++ zlib1g-dev make gzip tar yorick yorick-yeti yorick-optimpack update-java-alternatives --jre --set java-1.7.0-openjdk-amd64

      You will still have to install the fv binary manually. Follow the instructions here. If possible, install fv so that it is accessible through /usr/bin.

    • Mac OS X MacPorts. If you have MacPorts installed, issue the following commands to install the python modules and software needed to compile the pipelines:     sudo port selfupdate     sudo port upgrade outdated     sudo port install py27-matplotlib py27-wxpython-2.8 py27-numpy py27-astropy pkgconfig autoconf automake libtool yorick yorick-yeti yorick-optimpack     sudo port select --set python python27 Please make sure that the version of python used is the one from MacPorts by adding /opt/local/bin first in your path. This depends on your shell. For bash:     export PATH=/opt/local/bin:$PATH In some shells you might have to do a rehash:     rehash

      You would have to install a compiler (Xcode) with gcc preferable for certain pipelines such as UVES and a Java 8 virtual machine separately as well.

      If you are building with Gasgano support (not the default), you have to install the Java development kit and make it known to the installation procedure with this extra command:     export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/ for OS X 10.7 Lion and OS X 10.8 Mountain Lion.

      You will still have to install the fv binary manually. Follow the instructions here and install in the default location (Applications folder). Remember you will need to modify the esoreflex.rc configuration file once Reflex is installed to add the additional path /Applications/fv.app/Contents/MacOS to the esoreflex.path configuration parameter.

  • Scisoft 7.7 or greater.

    Scisoft is a collection of software that includes all the prerequisites. It is officially supported only for Fedora 11/20/24. Consult the webpage for installation instructions.

    For Mac users there used to be an unofficial port of Scisoft, but it is no longer available. Please install the prerequisites with MacPorts or individually.

  • Individual package installation.

    If you still need to install the dependencies manually because your operating system distribution does not contain them, this is the list of packages to install:

    • GNU C++ and C compiler (version 4.4 or later)
    • gzip data compression program
    • GNU make utility
    • Java Runtime Environment (JRE) 1.8
    • Python (version 2.6.0 or later, but less than 3.x)
    • astropy (version 1.0 or later) (Note: pyfits has been deprecated)
    • wxPython (version 2.8.10.1 or later, but less than 3.x)
    • matplotlib (version 0.99.1.2 or later)
    • numpy (version 1.5.0 or later)
    • fv (version 5.3 or later)
    • (Only if you install Gravity pipeline) Yorick together with Yeti and Optimpack plugins.
    • (Only if you install Gravity pipeline) ERFA (version 1.2.0 or later)

    Note that you should make sure all the prerequisite binaries are available under one of the paths indicated by the following command:

    getconf PATH

    If this is not the case, then you will need to add the appropriate paths to the esoreflex.path parameter in the installed esoreflex.rc configuration file, after Reflex is installed.

Installation procedure

The recommended installation procedure is to use the MacPorts repository for the Apple OS X 10.9 platform or newer (see instructions here). For Fedora platforms it is recommended to use the yum/dnf repository (see instructions here). In all other cases the install_esoreflex script is the recommented way.

Important: As of June 2017 there is a new version of the script. Please make sure you us that one.

by following these instructions:

  1. Check that you have all the software prerequisites
  2. Download install_esoreflex
  3. Make it executable:     chmod u+x install_esoreflex
  4. Execute the installation script. This will install Reflex, the supported pipelines and demo data. The script will ask for an installation directory (install_dir) as well as the download and data directories.     ./install_esoreflex If the software prerequisites are not met the script will fail, or in the case of optional packages (python modules) it will prompt whether you want to continue. If this happens, go to Software prerequisites and follow those instructions.
  5. If any of the prerequisite binaries (indicated in software prerequisites) do not exist in one of the paths indicated by the command,     getconf PATH then you need to update the Reflex configuration. Open the installed install_dir/etc/esoreflex.rc file (where install_dir is the previously selected installation directory) and add the appropriate paths as a colon separated list to the esoreflex.path parameter.
  6. Execute Reflex:     install_dir/bin/esoreflex
This script will allow to install the pipelines with available workflows as well as Reflex itself. It requires an Internet connection, since it retrieves all the packages directly from the net. Please read section Software prerequisites to make sure that you have the needed software before running the script. The script will detect if there is any missing software, but it won't attempt to install it.

The script also has limited support for reinstallation of software if new versions of the pipelines or Reflex are available.

Manual Installation of all the software

This installation procedure installs the pipeline and the workflow first, and then Reflex is used on top of an existing pipeline installation. It is a more advanced setup and therefore it is recommended only for advanced users.
  1. Download and make a regular installation of the pipeline. Note that if you already have an installed version which includes the workflow, it is also possible to use it.
  2. Make sure that esorex can access the uves recipes using the following command:     esorex --recipes
  3. Download and install Reflex
  4. Start Reflex and open the workflow located in the installation directory of the pipeline:     installation_dir/share/reflex/workflows/pipeline-x.x.x
  5. Demo data can be found in this table under column "Demo Data Sets".
  6. If you have run Reflex in the same machine and account where another Reflex installation was previously made, you might have to remove directories ~/KeplerData and ~/.kepler to clean the cache.

Running Reflex

We recommend to read the tutorials prepared to sucessfully execute the workflows in a matter of minutes. It can be downloaded from this table under column "Documentation". For more detailed information, you can read the pipeline user manual which can also be downloaded from the same table.

Bug Reports

If you experience an unexpected behavior of any component of Reflex or the pipeline recipes package, please, first refer to the list of known problems and limitations in the workflow tutorial, the pipeline manual, or the Reflex user manual, in this order.

For any other issues or requests, please, send a report to the ESO User Support Department, describing:        

  • the Reflex and pipeline version, and the version of other components (e.g., Gasgano, EsoRex, ...) you are using
  • the version of your OS and C compiler
  • the version of python and required python modules
  • the exact sequence of actions that were performed before the problem occurred
  • what were precisely the symptoms and the possible error message(s)
  • whether the problem is repeatable