User Tools

Site Tools


public:home_assistant-docker-build-wheels

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
public:home_assistant-docker-build-wheels [2026/11/02 14:44] – created lukaspublic:home_assistant-docker-build-wheels [2026/11/11 13:04] (current) – lukas
Line 1: Line 1:
 +
 +====== Running HA ======
 +Build virt enviroment(not need its already done):
 +<code>
 +python3.14 -m venv ~/ha-venv
 +</code>
 +Open enviroment
 +<code>
 +source ~/ha-venv/bin/activate
 +</code>
 +Install HA(done):
 +<code>
 +python -m pip install --no-index --find-links=/home/lukas/HA_core/armv7_wheels homeassistant==2026.11.0
 +</code>
 +Install HA(done, maybe this is needed instead of the previous start of line):
 +<code>
 +~/ha-venv/bin/python -m pip install 
 +</code>
 +Run the HA:
 +<code>
 +~/ha-venv/bin/hass -c /usr/share/hassio/homeassistant
 +</code>
 +
 +====== Running container prepared in previous steps ======
 +
 +<code>
 +docker start -ai gifted_elion
 +</code>
 +Run the building of wheels:
 +<code>
 +TMPDIR="/usr/tmp" uv run --with pip python -m pip wheel -r requirements_all.txt --wheel-dir=/work/armv7_wheels
 +</code>
 +
 ====== Krok 1: Příprava x64 stroje (Hostitel) ====== ====== Krok 1: Příprava x64 stroje (Hostitel) ======
  
Line 5: Line 38:
 sudo apt-get update sudo apt-get update
 sudo apt-get install -y qemu-user-static binfmt-support sudo apt-get install -y qemu-user-static binfmt-support
- +  
-# Ověření, že systém umí emulovat ARM (mělo by vypsat registraci pro arm) +# Inicializace ARM emulace přes Docker 
-update-binfmts --display | grep arm+sudo docker run --privileged --rm tonistiigi/binfmt --install all
 </code> </code>
  
 ====== Krok 2: Spuštění armv7 prostředí a kompilace ====== ====== Krok 2: Spuštění armv7 prostředí a kompilace ======
 <code> <code>
-# 1. Spuštění armv7 kontejneru s namontovaným kódem Home Assistanta +# 1. Vstup do emulovaného ARMv7 prostředí s Pythonem 3.14 
-# Použijeme image s Python 3.14 na bázi Debianu (bookworm/slim) +sudo docker run -it \ 
-docker run --rm -it \+  --platform linux/arm/v7 \
   -v "$(pwd)":/work \   -v "$(pwd)":/work \
   -w /work \   -w /work \
Line 22: Line 55:
 Nyní se nacházíte uvnitř emulovaného armv7 prostředí. Všechny další příkazy spouštějte v tomto terminálu: Nyní se nacházíte uvnitř emulovaného armv7 prostředí. Všechny další příkazy spouštějte v tomto terminálu:
 <code> <code>
-# 2. Instalace systémových závislostí nutných pro kompilaci C/Rust knihoven+# 2. Aktualizace balíčků a instalace kompilátorů (včetně Rustu pro moderní balíčky)
 apt-get update && apt-get install -y \ apt-get update && apt-get install -y \
   autoconf build-essential libssl-dev libxml2-dev libxslt1-dev \   autoconf build-essential libssl-dev libxml2-dev libxslt1-dev \
Line 28: Line 61:
   libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev \   libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev \
   libswscale-dev libswresample-dev libavfilter-dev ffmpeg \   libswscale-dev libswresample-dev libavfilter-dev ffmpeg \
-  libgammu-dev curl git cargo rustc+  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
  
-# 3. Instalace a aktivace nástroje uv +  source "$HOME/.cargo/env" 
-curl -LsSf https://astral.sh | sh+  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 source $HOME/.local/bin/env
  
-# 4. Spuštění kompilace všech závislostí do samostatné složky +# 4. Spuštění samotné kompilace do složky armv7_wheels
-# Uv automaticky rozpozná Python 3.14 a začne stahovat/kompilovat armv7 wheely+
 uv pip wheel -r requirements_all.txt --wheel-dir=/work/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
 </code> </code>
  
public/home_assistant-docker-build-wheels.1793630662.txt.gz · Last modified: by lukas