#!/usr/bin/with-contenv bashio # ============================================================================== # Community Hass.io Add-ons: ESPHome # Runs the ESPHome dashboard # ============================================================================== export ESPHOME_IS_HA_ADDON=true if bashio::config.true 'leave_front_door_open'; then export DISABLE_HA_AUTHENTICATION=true fi if bashio::config.true 'streamer_mode'; then export ESPHOME_STREAMER_MODE=true fi if bashio::config.true 'status_use_ping'; then export ESPHOME_DASHBOARD_USE_PING=true fi if bashio::config.has_value 'relative_url'; then export ESPHOME_DASHBOARD_RELATIVE_URL=$(bashio::config 'relative_url') fi if bashio::config.has_value 'default_compile_process_limit'; then export ESPHOME_DEFAULT_COMPILE_PROCESS_LIMIT=$(bashio::config 'default_compile_process_limit') else if grep -q 'Raspberry Pi 3' /proc/cpuinfo; then export ESPHOME_DEFAULT_COMPILE_PROCESS_LIMIT=1; fi fi pio_cache_base=/data/cache/platformio # we can't set core_dir, because the settings file is stored in `core_dir/appstate.json` # setting `core_dir` would therefore prevent pio from accessing export PLATFORMIO_PLATFORMS_DIR="${pio_cache_base}/platforms" export PLATFORMIO_PACKAGES_DIR="${pio_cache_base}/packages" export PLATFORMIO_CACHE_DIR="${pio_cache_base}/cache" export PLATFORMIO_GLOBALLIB_DIR=/piolibs bashio::log.info "Starting ESPHome dashboard..." exec esphome dashboard /config/esphome --socket /var/run/esphome.sock --ha-addon