3. Installation

Tip

When using a DevEnv-based machine, the Control UI Toolkit elt-cut and elt-cut-devel RPM packages are provided in the respective platform repository. Developers and users should manually install it, as it is no longer part of the DevEnv set of RPM packages.

3.1. Using RPM Packages

In case it is not installed, the user may install it executing as root:

$ dnf -y install elt-cut-devel

Beta Versions are no longer available for DevEnv 5+.

3.2. Manual Compilation

If the user wants to compile and test a development version of the Control UI Toolkit all dependencies are satisfied by the DevEnv. Use the following procedure to produce a compiled version of CUT.

  1. Start the Display Manager executing as root (not required but recommended)

    $ systemctl set-default graphical.target
    
  2. Append the following lines to your $HOME/modulefiles/private.lua

    local homedir = os.getenv("HOME")
    local introot = pathJoin(homedir .. "/volume/INTROOT")
    local dataroot = pathJoin(homedir .. "/volume/DATAROOT")
    setenv("PREFIX", introot)
    setenv("INTROOT", introot)
    setenv("DATAROOT", dataroot)
    setenv("CII_LOGS", "/var/log/elt")
    prepend_path("MODULEPATH", pathJoin(introot, "/etc/modulefiles"))
    prepend_path("PKG_CONFIG_PATH", pathJoin(introot, "/lib64/pkgconfig"))
    prepend_path("CFGPATH", dataroot .. "/config/persistent_repo")
    prepend_path("WDEPPATH", pathJoin(introot, "/share/wdep"))
    prepend_path("QT_PLUGIN_PATH", "/usr/lib64/qt6/plugins/")
    prepend_path("QT_PLUGIN_PATH", pathJoin(introot, "/lib64"))
    load("introot")
    try_load("ciisrv")
    try_load("ecsif")
    try_load("mal")
    
    -- This FIXES the problem when expanding on bash with TAB
    execute{cmd="shopt -s direxpand", modeA={"load"}}
    

3. Logout of the session, and log back in. If you are currently in a graphical terminal, you need to logout of the graphical session as well.

  1. Execute the following lines in your personal account:

$ getTemplate -d introot $INTROOT
$ git clone git@gitlab.eso.org:ecos/cut.git
$ cd cut
$ git lfs install
$ git lfs fetch
$ git lfs checkout
$ waf configure build install
$ mkdir -p $HOME/.config/taurus
$ cp taurus.ini $HOME/.config/taurus

As a result, CUT will be installed at the $INTROOT location.

3.3. Vagrant Virtual Machine

ELT DevEnv is delivered also as a Vagrant box https://app.vagrantup.com/eltdev.

For GUI development it is recommended to use a local VM to get the lowest latency.

Tip

In case you need a local VM, we suggest to use vagrant. CUT has a vagrant module that is able to provide a local VM.

This Vagrantfile and provisioning script allows to update to the latest DevEnv version or to adopt the Beta release. Please refer to the Vagrantfile to instructions on how to use it.