3. Installation
Tip
When using DevEnv, the Control UI Toolkit comes preinstalled in it. It is delivered using
RPM packages elt-cut
and elt-cut-devel
.
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
Testing versions are delivered using the Beta repository. Under DevEnv 4.X versions, please enable eso-elt-beta repository:
$ dnf -y --enablerepo=eso-elt-beta upgrade elt-cut-devel
Under DevEnv 3.X versions, please enable ESO-Beta-CentOS-8 repository:
$ dnf -y --enablerepo=ESO-Beta-CentOS-8 upgrade elt-cut-devel
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.
Start the Display Manager executing as root (not required but recommended)
$ systemctl set-default graphical.target
Append the following lines to your
$HOME/modulefiles/private.lua
local homedir = os.getenv("HOME") local introot = pathJoin(homedir .. "/INTROOT") local dataroot = pathJoin(homedir .. "/DATAROOT") setenv("PREFIX", introot) setenv("INTROOT", introot) setenv("DATAROOT", dataroot) prepend_path("MODULEPATH", pathJoin(introot, "/etc/modulefiles")) load("introot") -- We unload the preinstalled cut module, and provide the necessary instructions -- to modify QT_PLUGIN_PATH _after_ unloading. unload("cut") prepend_path("QT_PLUGIN_PATH", "/opt/Qt/5.14.0/gcc_64/plugins") -- DevEnv 3.X prepend_path("QT_PLUGIN_PATH", "/usr/lib64/qt5/plugins/") -- DevEnv 4.X prepend_path("QT_PLUGIN_PATH", introot .. "/lib64") -- We force a DESKTOP ENVIRONMENT to be set, so that Qt knows were to get color schemes -- default values and icons from. if not os.getenv("XDG_CURRENT_DESKTOP") then setenv("XDG_CURRENT_DESKTOP", "XFCE") end if not os.execute("xfconf-query -c xfwm4 -p /general/theme -t string > /dev/null 2>&1") then os.execute("xfconf-query -c xfwm4 -p /general/theme -t string -s Adwaita --create > /dev/null 2>&1 ") end
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.
Execute the following lines in your personal account:
$ getTemplate -d introot $INTROOT
$ git clone git@gitlab.eso.org:ecos/cut.git
$ cd cut
$ waf configure build install
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/boxes/eltdev-4.
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.