EVA ICS on Ubuntu: copy/paste install

This article describes, how to install EVA ICS on Ubuntu or Debian. Actually it duplicates the information from EVA ICS installation docs, however is focused on Ubuntu with local mosquitto MQTT server, has minimal description and contains all required commands which could be just copy/pasted in console shell.

So let’s consider you have fresh Ubuntu install (I’ve used 18.04 LTS). What should be done, before we can launch EVA ICS easy-setup:

  • Install required OS packages
  • Configure local mosquitto MQTT server
  • Configure EVA ICS venv to skip building “heavy” numpy/pandas modules (we’ll use them from OS repository)

Let’s go.

# install required OS packages
sudo -s
apt update
apt install -y bash curl gcc logrotate python3 python3-dev python3-virtualenv python3-distutils python3-pandas jq libow-dev libjpeg-dev libjpeg8-dev
# install and configure mosquitto MQTT
apt install -y mosquitto
/etc/init.d/mosquitto stop
echo "bind_address" >> /etc/mosquitto/mosquitto.conf
/etc/init.d/mosquitto start
ps auxw|grep mosquitto
# download and extract EVA ICS
cd /opt
wget https://get.eva-ics.com/3.2.1/stable/eva-3.2.1-2019041801.tgz
tar xzvf eva-3.2.1-2019041801.tgz
mv eva-3.2.1 eva
cd eva
# configure venv to skip numpy/pandas
echo SYSTEM_SITE_PACKAGES=1 > ./etc/venv
echo 'SKIP="pandas"' >> ./etc/venv
# everything is completed! start easy-setup
# use "localhost" for MQTT server, leave username/password, empty, SSL: N
# setup log rotation (optional)
cp ./etc/logrotate.d/eva-* /etc/logrotate.d/
# setup auto start on boot (optional)
cp ./etc/systemd/eva-ics.service /etc/systemd/system/
systemctl enable eva-ics
# copy bash completion files (optional)
cp ./etc/bash_completion.d/* /etc/bash_completion.d/
# start EVA shell

In case of problems:

  • check that you haven’t missed installing all required OS packages
  • in case of problems with venv (or if options SYSTEM_SITE_PACKAGES/USE_SYSTEM_PIP were modified in config): completely remove venv python3 folder:
rm -rf ./python3