Table of Contents

Running HA

Build virt enviroment(not need its already done):

python3.14 -m venv ~/ha-venv

Open enviroment

source ~/ha-venv/bin/activate

Install HA(done):

python -m pip install --no-index --find-links=/home/lukas/HA_core/armv7_wheels homeassistant==2026.11.0

Install HA(done, maybe this is needed instead of the previous start of line):

~/ha-venv/bin/python -m pip install 

Run the HA:

~/ha-venv/bin/hass -c /usr/share/hassio/homeassistant

Running container prepared in previous steps

docker start -ai gifted_elion

Run the building of wheels:

TMPDIR="/usr/tmp" uv run --with pip python -m pip wheel -r requirements_all.txt --wheel-dir=/work/armv7_wheels

Krok 1: Příprava x64 stroje (Hostitel)

# Instalace emulátoru QEMU a registrace binfmt
sudo apt-get update
sudo apt-get install -y qemu-user-static binfmt-support
 
# Inicializace ARM emulace přes Docker
sudo docker run --privileged --rm tonistiigi/binfmt --install all

Krok 2: Spuštění armv7 prostředí a kompilace

# 1. Vstup do emulovaného ARMv7 prostředí s Pythonem 3.14
sudo docker run -it \
  --platform linux/arm/v7 \
  -v "$(pwd)":/work \
  -w /work \
  arm32v7/python:3.14-slim bash

Nyní se nacházíte uvnitř emulovaného armv7 prostředí. Všechny další příkazy spouštějte v tomto terminálu:

# 2. Aktualizace balíčků a instalace kompilátorů (včetně Rustu pro moderní balíčky)
apt-get update && apt-get install -y \
  autoconf build-essential libssl-dev libxml2-dev libxslt1-dev \
  libjpeg-dev libffi-dev libudev-dev zlib1g-dev pkg-config \
  libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev \
  libswscale-dev libswresample-dev libavfilter-dev ffmpeg \
  libgammu-dev curl git cmake gfortran libopenblas-dev \
   liblapack-dev
  
  sudo mount -o remount,size=10G /tmp
  df -h /tmp
  
  
  curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs -o rustup-init.sh
  sh rustup-init.sh

  source "$HOME/.cargo/env"
  rustup update stable
  rustc --version


# 3. Instalace ultra rychlého správce balíčků 'uv'
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env

# 4. Spuštění samotné kompilace do složky armv7_wheels
uv pip wheel -r requirements_all.txt --wheel-dir=/work/armv7_wheels
uv run --with pip python -m pip wheel -r requirements_all.txt --wheel-dir=/work/armv7_wheels

Krok 3: Instalace na Armbian desce

# Aktivujte svůj virtuální Python 3.14 environment na Armbianu
source .venv/bin/activate

# Instalace s upřednostněním lokálně zkompilovaných wheelů
uv pip install --find-links ./armv7_wheels -r requirements_all.txt