First of all install the software collection repository as root and scl utils. For example, on CentOS:
$ sudo yum install centos-release-scl $ sudo yum-config-manager --enable centos-sclo-rh-testing $ sudo yum install -y scl-utils
Install some dependencies you’ll need later.
$ sudo yum install gcc gcc-c++ systemd-devel
Then install the Python 3.6 package. If you are using CentOS 7 then you may have to install the packages for Python 3.6 using RHEL Methods listed here: https://www.softwarecollections.org/en/scls/rhscl/rh-python36/) for this to work as mentioned above.
$ sudo yum install rh-python36
This is part of the slight change when trying to install Python 3.6 and running the command
python36 --version which will after install give you the correct version, but won’t allow you to set the software collection using the
scl command. This command downloads the RH collection of Python to allow you to run
scl command to enable the environment in
bash and then run the automate command using the template.
$ yum install rh-python36
$ scl enable rh-python36 bash
Once installed, switch to your
homeassistant user (if you’ve set one up), enable the software collection and check that it has set up the new version of Python:
$ python --version Python 3.6.3
You will be in a command shell set up with Python 3.6 as your default version. The
pip commands will be correct for this version, so you can now create a virtual environment and install Home Assistant following the main instructions.
You will need to enable the software collection each time you log on before you activate your virtual environment.
To autostart Home Assistant using systemd follow the main instructions and adjust the template as follows:
[Unit] Description=Home Assistant After=network.target [Service] Type=simple User=homeassistant # Make sure the virtualenv Python binary is used Environment=VIRTUAL_ENV="/srv/homeassistant" Environment=PATH="$VIRTUAL_ENV/bin:$PATH" # ExecStart using software collection: ExecStart=/usr/bin/scl enable rh-python36 -- /srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant" [Install] WantedBy=multi-user.target