Offload dockermachines into core (#41756)
This commit is contained in:
parent
c4148eb2c5
commit
2d08708c3b
16 changed files with 684 additions and 2 deletions
61
machine/raspberrypi3-64
Normal file
61
machine/raspberrypi3-64
Normal file
|
@ -0,0 +1,61 @@
|
|||
ARG BUILD_VERSION
|
||||
FROM homeassistant/aarch64-homeassistant:$BUILD_VERSION
|
||||
|
||||
RUN apk --no-cache add \
|
||||
raspberrypi \
|
||||
raspberrypi-libs \
|
||||
usbutils \
|
||||
&& sed -i "s|# RPi.GPIO|RPi.GPIO|g" /usr/src/homeassistant/requirements_all.txt \
|
||||
&& pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
|
||||
RPi.GPIO bluepy pybluez -c /usr/src/homeassistant/requirements_all.txt
|
||||
|
||||
##
|
||||
# Set symlinks for raspberry pi binaries.
|
||||
RUN ln -sv /opt/vc/bin/raspistill /usr/local/bin/raspistill \
|
||||
&& ln -sv /opt/vc/bin/raspivid /usr/local/bin/raspivid \
|
||||
&& ln -sv /opt/vc/bin/raspividyuv /usr/local/bin/raspividyuv \
|
||||
&& ln -sv /opt/vc/bin/raspiyuv /usr/local/bin/raspiyuv
|
||||
|
||||
##
|
||||
# Build libcec with RPi support for HDMI-CEC
|
||||
ARG LIBCEC_VERSION=6.0.2
|
||||
RUN apk add --no-cache \
|
||||
eudev-libs \
|
||||
p8-platform \
|
||||
&& apk add --no-cache --virtual .build-dependencies \
|
||||
build-base \
|
||||
cmake \
|
||||
eudev-dev \
|
||||
swig \
|
||||
raspberrypi-dev \
|
||||
p8-platform-dev \
|
||||
&& git clone --depth 1 -b libcec-${LIBCEC_VERSION} https://github.com/Pulse-Eight/libcec /usr/src/libcec \
|
||||
&& mkdir -p /usr/src/libcec/build \
|
||||
&& cd /usr/src/libcec/build \
|
||||
&& cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local \
|
||||
-DRPI_INCLUDE_DIR=/opt/vc/include \
|
||||
-DRPI_LIB_DIR=/opt/vc/lib \
|
||||
-DPYTHON_LIBRARY="/usr/local/lib/libpython3.8.so" \
|
||||
-DPYTHON_INCLUDE_DIR="/usr/local/include/python3.8" \
|
||||
.. \
|
||||
&& make -j$(nproc) \
|
||||
&& make install \
|
||||
&& echo "cec" > "/usr/local/lib/python3.8/site-packages/cec.pth" \
|
||||
&& apk del .build-dependencies \
|
||||
&& rm -rf /usr/src/libcec
|
||||
ENV LD_LIBRARY_PATH=/opt/vc/lib:${LD_LIBRARY_PATH}
|
||||
|
||||
##
|
||||
# Install DHT
|
||||
RUN apk add --no-cache --virtual .build-dependencies \
|
||||
gcc libc-dev raspberrypi-dev \
|
||||
&& export DHT_VERSION="$(cat /usr/src/homeassistant/requirements_all.txt | sed -n 's|.*Adafruit-DHT==\([0-9\.]*\).*|\1|p')" \
|
||||
&& git clone --depth 1 -b ${DHT_VERSION} https://github.com/adafruit/Adafruit_Python_DHT /usr/src/dht \
|
||||
&& cd /usr/src/dht \
|
||||
&& sed -i 's/^pi_version\ =\ None/pi_version\ =\ 3/' setup.py \
|
||||
&& sed -i 's/^platform\ =\ platform_detect.UNKNOWN/platform\ =\ platform_detect.RASPBERRY_PI/' setup.py \
|
||||
&& sed -i 's/platform\ =\ platform_detect.platform_detect()/pass/' setup.py \
|
||||
&& export MAKEFLAGS="-j$(nproc)" \
|
||||
&& pip3 install . \
|
||||
&& apk del .build-dependencies \
|
||||
&& rm -rf /usr/src/dht
|
Loading…
Add table
Add a link
Reference in a new issue