Upgrade Home Assistant Python Version 3.13.0
Check current python version
python3 --versionDownload Python 3.13.0
wget https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tgzUnpack it.
sudo tar --no-same-owner -xzf Python-3.13.0.tgzSqlLite3 Requirement
sudo systemctl stop home-assistant@homeassistant.service wget https://sqlite.org/2021/sqlite-autoconf-3360000.tar.gz tar -xvf sqlite-autoconf-3360000.tar.gz ./configure make sudo make install sudo cp /usr/local/lib/*sql* /usr/lib/x86_64-linux-gnu/Make and install Python 3.13
cd Python-3.13.0/ sudo apt update sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev curl libbz2-dev sudo ./configure --enable-optimization sudo make -j$(nproc) sudo make altinstall sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.13 1 sudo update-alternatives --config python3 0validate build
python3 --versionHouse Keeping
sudo apt --fix-broken install sudo apt install python3-minimal grub2-common sudo python3 -m ensurepip --upgrade sudo python3 -m pip install --upgrade pip sudo apt update && sudo apt upgrade sudo apt autoremove --purge sudo apt cleanFreeze current home assistant python packages
cd /home/homeassistant/.homeassistant sudo su homeassistant source /srv/homeassistant/bin/activate pip3 freeze –local > requirements-2024.12.txt exitStop the HASS instance
sudo systemctl stop home-assistant@homeassistantbackup homeassistant config
cd /srv sudo mv homeassistant homeassistantold-20241226make new home assistant folder
sudo mkdir /srv/homeassistant sudo chown -R homeassistant:homeassistant homeassistantCreate new virtual environment
sudo -u homeassistant -H -s cd /srv/homeassistant python3.13 -m venv .Activate the Python venv
source /srv/homeassistant/bin/activateUpgrade Requirements
sudo -u homeassistant -H -s cd /home/homeassistant/.homeassistant pip3 install --upgrade wheel pip install --upgrade pipUpgrade HASS on the new Python version
cd /srv/homeassistant/lib sudo -u homeassistant -H -s source /srv/homeassistant/bin/activate pip3 install --upgrade hass-nabucasa pip3 install pyOpenSSL --upgrade pip install --use-deprecated=legacy-resolver cryptography==42.0.0 pip3 install --upgrade homeassistant pip install mysqlclient pip install mysql-connector-pythonUpdate the Home Assistant runtime in the Systemd service
sudo nvim /etc/systemd/system/home-assistant\@homeassistant.serviceChange the execution line runtime to python3.13:
ExecStart=/srv/homeassistant/bin/python3.13 -m homeassistant --config /home/homeassistant/.homeassistantReload the service
sudo systemctl daemon-reloadRestart the service
sudo systemctl start home-assistant@homeassistant.service
Last modified: 09 February 2025