Installation

Pre-built binaries

The recommended and fastest way of running remage is through pre-built software containers. Stable releases are regularly made available on Docker Hub. To obtain and run the latest just do:

$ docker run legendexp/remage:latest --help # just prints a help message

If you prefer Apptainer, you can easily generate an image locally:

$ apptainer build remage_latest.sif docker://legendexp/remage:latest
$ apptainer run remage_latest.sif --help

If containers do not work for you, see the next section to learn how to build and install from source.

Building from source

In preparation for the actual build, users are required to obtain some dependencies.

Required dependencies

Optional dependencies

  • Geant4 support for:

    • HDF5 object persistency

    • Multithreading

    • GDML geometry description

  • ROOT 6.06 or higher

  • BxDecay0 1.0.10 or higher

  • HDF5 C++ support for LH5 object persistency

Note

Pre-built Docker container images with all necessary dependencies are available on Docker Hub.

Note

Apptainer images can be easily generated with, e.g.:

 $ apptainer build remage-base_latest.sif docker://gipert/remage-base:latest

For more details, have a look at the documentation.

Building

The build system is based on CMake.

Important

It is important that you use a unique install prefix for remage. Do not use a location that is controlled by your linux package manager (i.e. /usr). The default value of /usr/local is also dangerous if you install other software into that prefix. Failing to do so might create conflicts with other python packages or might even render your system unusable.

$ git clone https://github.com/legend-exp/remage
$ cd remage
$ mkdir build && cd build
$ cmake -DCMAKE_INSTALL_PREFIX=<unique prefix> ..
$ make install