#!/bin/bash # Install requirements and build dependencies for Home Assistant in Docker. # Stop on errors set -e INSTALL_TELLSTICK="${INSTALL_TELLSTICK:-yes}" INSTALL_OPENALPR="${INSTALL_OPENALPR:-yes}" INSTALL_FFMPEG="${INSTALL_FFMPEG:-yes}" INSTALL_LIBCEC="${INSTALL_LIBCEC:-yes}" INSTALL_PHANTOMJS="${INSTALL_PHANTOMJS:-yes}" INSTALL_COAP_CLIENT="${INSTALL_COAP_CLIENT:-yes}" # Required debian packages for running hass or components PACKAGES=( # build-essential is required for python pillow module on non-x86_64 arch build-essential # homeassistant.components.image_processing.openalpr_local libxrandr-dev # homeassistant.components.device_tracker.nmap_tracker nmap net-tools libcurl3-dev # homeassistant.components.device_tracker.bluetooth_tracker bluetooth libglib2.0-dev libbluetooth-dev # homeassistant.components.device_tracker.owntracks libsodium13 # homeassistant.components.zwave libudev-dev ) # Required debian packages for building dependencies PACKAGES_DEV=( cmake git # libcec swig ) # Install packages apt-get update apt-get install -y --no-install-recommends ${PACKAGES[@]} ${PACKAGES_DEV[@]} if [ "$INSTALL_TELLSTICK" == "yes" ]; then virtualization/Docker/scripts/tellstick fi if [ "$INSTALL_OPENALPR" == "yes" ]; then virtualization/Docker/scripts/openalpr fi if [ "$INSTALL_FFMPEG" == "yes" ]; then virtualization/Docker/scripts/ffmpeg fi if [ "$INSTALL_LIBCEC" == "yes" ]; then virtualization/Docker/scripts/libcec fi if [ "$INSTALL_PHANTOMJS" == "yes" ]; then virtualization/Docker/scripts/phantomjs fi if [ "$INSTALL_COAP_CLIENT" == "yes" ]; then virtualization/Docker/scripts/coap_client fi # Remove packages apt-get remove -y --purge ${PACKAGES_DEV[@]} apt-get -y --purge autoremove # Cleanup apt-get clean rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* build/