Home Assistant – Обновление Python
Для правильной работы Home Assistant требуется Обновление Python. В статье рассказывается про сборку из исходников и установку новой версии Python на одноплатный компьютер Orange Pi PC Plus с установленной системой Armbian 22.02 Bullseye и Home Assistant установленном в виртуальное окружение Python.
Если нет прямого доступа к консоли, то подключаемся через терминал по SSH.
Итак если у вас запущен Home Assistant – остановим его:
sudo systemctl stop home-assistant@homeassistant.service
Устанавливаем необходимые компоненты и зависимости.
sudo apt-get install build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libxslt-dev libxml2-dev libjpeg-dev zlib1g-dev
Проверяем какая версия установлена. Набираем в терминале команду
python3 --version

Система дала ответ – Python 3.9.2
Заходим на сайт python.org и смотрим последнюю актуальную версию.

Как видно, последняя версия Python 3.9.9
Присвоим переменной version значение 3.9.9
version=3.9.9
Скачаем и распакуем архив с Python
wget https://www.python.org/ftp/python/$version/Python-$version.tgz
tar xzvf Python-$version.tgz
cd Python-$version
Соберем его из исходников и запустим установку:
./configure --enable-optimizations
make -j 4
sudo make install
После завершения установки перезагружаемся
sudo reboot
Подключаемся напрямую или через терминал по SSH и проверяем версию Python:
python3 --version
pip3 --version
Видим ответ от системы

Так как для Home Assistant требуется обновление Python до версии 3.9 – видим что Python обновился до версии 3.9.9
Менеджер пакетов pip имеет версию 20.3.4.
Останавливаем Home Assistant::
sudo systemctl stop home-assistant@homeassistant.service
Теперь обновим менеджер пакетов pip:
sudo /srv/homeassistant/bin/python3.9 -m pip install --upgrade pip
sudo python3.9 -m pip install --upgrade pip
Перезагружаем систему:
sudo reboot
Проверяем версию менеджера пакетов pip:
pip3 --version
Получаем ответ от системы:

Менеджер пакетов pip обновился до версии 22.0.4
В случае если после обновления Python при запуске Home Assistant появится ошибка с доступностью библиотеки libffi.so.7 можно создать симлинк с libffi.so.6 на нее:
sudo ln -s /usr/lib/arm-linux-gnueabihf/libffi.so.6 /usr/lib/arm-linux-gnueabihf/libffi.so.7
Если симлинк не создается, то значит в вашей системе libffi.so.6 находится по другому пути. Корректный путь к файлу можно узнать набрав команду :
find /usr/lib -name "libffi.so*"
Остальные статьи по теме умного дома Home Assistant можно посмотреть здесь..