Установка Home Assistant Core в виртуальное окружение python

Примечание

Использование данного метода возможно только на операционной системе Armbian Linux от JetHome.

См.также

Предупреждение

При использовании данного метода установки работы с аддонами невозможна.

Установка зависимостей

Примечание

Начиная с Home Assistant Core версии 2022.* нужно использовать python версии не ниже 3.9

Проверьте версию python3, установленную в вашей системе:

python3 --version

Если используется версия python 3.8 или ниже, то предварительно необходимо python версии 3.9 или выше.

sudo apt install python3-dev python3-pip python3-venv python3-sqlalchemy libffi-dev build-essential cargo

Установите дополнительные пакеты:

sudo apt update
sudo apt install python3-dev python3-pip python3-venv python3-sqlalchemy libffi-dev build-essential cargo

Установка Home Assistant

Примечание

Ниже приводится пример установки Home Assistant Core в домашнюю директорию текущего пользователя.

Рабочая директория Home Assistant, в которой хранится файл конфигурации и лог-файлы, в данном случае будет ~/.homeassistant.

Для установки необходимо выполнить следующие команды:

Примечание

Если версия python3 меньше 3.9, то виртуальное окружение необходимо создавать с помощью дополнительно установленного python3.9:

python3.9 -m venv homeassistant
cd ~
python3 -m venv homeassistant
cd homeassistant
source bin/activate
python3 -m pip install wheel
pip3 install homeassistant

Ручной запуск

Для запуска Home Assistant необходимо выполнить команду (не выходя из виртуального окружения):

hass

Примечание

Установка и первый запуск Home Assistant занимает продолжительное время.

Через некоторое время к системе можно будет подключиться через браузер по адресу: http://localhost:8123.

Автоматический запуск

1. Для автоматического запуска Home Assistant при загрузке системы необходимо создать файл /etc/systemd/system/home-assistant@$USER.service (где $USER- логин, под которым был установлен Home Assistant):

sudo nano /etc/systemd/system/home-assistant@$USER.service

Содержимое файла:

[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=%i
WorkingDirectory=/home/%i/.homeassistant
ExecStart=/home/%i/homeassistant/bin/hass -c "/home/%i/.homeassistant"

[Install]
WantedBy=multi-user.target
  1. Далее нужно активировать сервис:

sudo systemctl enable home-assistant@$USER.service
  1. Запустить сервис:

sudo systemctl start home-assistant@$USER.service

Обновление

  1. Остановить системную службу Home Assistant:

sudo systemctl stop home-assistant@$USER.service
  1. Перейти в виртуальное окружение python, в котором была произведена установка Home Assistant Core:

cd ~/homeassistant
source bin/activate
  1. Загрузить обновления:

pip3 install --upgrade homeassistant
  1. Выйти из виртуального окружения python и запустить системную службу Home Assistant:

deactivate
sudo systemctl start home-assistant@$USER.service