Home Assistant core händisch installieren

Voraussetzung ist eine Python3.8 Installation. Debian 10 bringt leider nur Python3.7 mit, welche auch installiert sein sollte. Home Assistant ist damit zwar scheinbar noch lauffähig, allerdings spuckt die Installation einige Fehler und Warnmeldungen aus.
Daher installieren wir zusätzlich zur 3.7 erstmal manuell die Version 3.8.

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5

Eine detaillierte Anleitung zur Installation von Python 3.8, verfasst von Pascal Roeleven, der auch die Python 3.8 backports bereitstellt, findet sich unter folgendem link in der Home Assistant Community.
Daher hier nur eine schnelle Kurzzusammenfassung. Falls etwas nicht klappt, im obigen Link nachschauen.

Zuerst den PGP-key für APT bereitstellen

wget https://pascalroeleven.nl/deb-pascalroeleven.gpg
sudo apt-key add deb-pascalroeleven.gpg

Anschliessend die APT-Quellen aktualisieren, d.h. folgenden Eintrag zur /etc/apt/souces.list hinzufügen ..

deb http://deb.pascalroeleven.nl/python3.8 buster-backports main

… und direkt Python3.8 installieren

sudo apt update
sudo apt install python3.8 python3.8-venv python3.8-dev

Jetzt kann’s mit der Installation von Home Assistant losgehen.

Home Assistant wird als neuer Nutzer mit eigenem Homeverzeichnis installiert:

sudo useradd -rm homeassistant

Während die Konfigurationsdateien später im home landen, wird Home Assistant selber in einem virtuellen Python-Environment im Verzeichnis /srv/homeassistant/ installiert.

Dazu ersteinmal das Verzeichnis erstellen und die Rechte dem neuen Nutzer homeassistant zuweisen.

cd /srv
sudo mkdir homeassistant
sudo chown homeassistant:homeassistant homeassistant

Die Installation wird dann in dem virtuellen Python Environment als Nutzer homeassistant durchgeführt. Wir wechseln also den Nutzer, gehen in das Installationsverzeichnis, installieren die virtuelle Python3.8 Umgebung und wechseln dann in diese hinein.

sudo -u homeassistant -H -s
cd /srv/homeassistant
python3.8 -m venv .
source bin/activate

noch schnell ein notwendiges Python-Paket installieren mit

python3 -m pip install wheel

und im Anschluss

pip3 install homeassistant

et voilà! … naja, fast. Prinzipiell kann Home Assistant jetzt direkt über die Kommandozeile mittels Eingabe von hass gestartet werden. Aber wenn wir schonmal dabei sind, dann richtig.
Erstmal wechseln mit exit wieder zurück zu unserem eigenen Account.
Damit Home Assistant mit jedem Neustart des Rechners automatisch aktiviert wird, erstellen wir das System-Startscript /etc/systemd/system/homeassistant.service mit folgendem Inhalt:

[Unit]
Description=Home Assistant
After=network-online.target

[Service]
Type=simple
User=homeassistant
WorkingDirectory=/home/homeassistant/.homeassistant
ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant"
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

Dieses script wird nun noch aktiviert und direkt gestartet:

sudo systemctl --system daemon-reload
sudo systemctl enable homeassistant
sudo systemctl start homeassistant

Home Assistant ist jetzt aktiv und lauscht auf port 8123.
http://mei.ne.ip:8123/
Der erste Start dauert allerdings ein wenig, es kann also sein, dass die Verbindung nicht auf Anhieb klappt.

Um Home Assistant später zu aktualisieren

sudo -u homeassistant -H -s
cd /srv/homeassistant
source bin/activate
pip install --upgrade homeassistant

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert