Move docker installation scripts to virtualization/Docker path. Splits out openalpr to seperate script. (#5676)
This commit is contained in:
committed by
Paulus Schoutsen
parent
89ec752064
commit
8247acb7b9
@@ -1,47 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Sets up and builds libcec to be used with Home Assistant.
|
||||
# Dependencies that need to be installed:
|
||||
# apt-get install cmake libudev-dev libxrandr-dev swig
|
||||
|
||||
# Stop on errors
|
||||
set -e
|
||||
|
||||
# Load required information about the current python environment
|
||||
PYTHON_LIBDIR=$(python -c 'from distutils import sysconfig; print(sysconfig.get_config_var("LIBDIR"))')
|
||||
PYTHON_LDLIBRARY=$(python -c 'from distutils import sysconfig; print(sysconfig.get_config_var("LDLIBRARY"))')
|
||||
PYTHON_LIBRARY="${PYTHON_LIBDIR}/${PYTHON_LDLIBRARY}"
|
||||
PYTHON_INCLUDE_DIR=$(python -c 'from distutils import sysconfig; print(sysconfig.get_python_inc())')
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
mkdir -p build && cd build
|
||||
|
||||
if [ ! -d libcec ]; then
|
||||
git clone --branch release --depth 1 https://github.com/Pulse-Eight/libcec.git
|
||||
fi
|
||||
|
||||
cd libcec
|
||||
git checkout release
|
||||
git pull
|
||||
git submodule update --init src/platform
|
||||
|
||||
# Build libcec platform libs
|
||||
(
|
||||
mkdir -p src/platform/build
|
||||
cd src/platform/build
|
||||
cmake ..
|
||||
make
|
||||
make install
|
||||
)
|
||||
|
||||
# Build libcec
|
||||
(
|
||||
mkdir -p build && cd build
|
||||
|
||||
cmake \
|
||||
-DPYTHON_LIBRARY="${PYTHON_LIBRARY}" \
|
||||
-DPYTHON_INCLUDE_DIR="${PYTHON_INCLUDE_DIR}" \
|
||||
..
|
||||
make
|
||||
make install
|
||||
ldconfig
|
||||
)
|
||||
@@ -1,29 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Sets up and builds python open zwave to be used with Home Assistant.
|
||||
# Dependencies that need to be installed:
|
||||
# apt-get install cython3 libudev-dev python3-sphinx python3-setuptools
|
||||
|
||||
# Stop on errors
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
if [ ! -d build ]; then
|
||||
mkdir build
|
||||
fi
|
||||
|
||||
cd build
|
||||
|
||||
if [ -d python-openzwave ]; then
|
||||
cd python-openzwave
|
||||
git pull --recurse-submodules=yes
|
||||
git submodule update --init --recursive
|
||||
else
|
||||
git clone --branch python3 --recursive --depth 1 https://github.com/OpenZWave/python-openzwave.git
|
||||
cd python-openzwave
|
||||
fi
|
||||
|
||||
git checkout python3
|
||||
pip3 install --upgrade cython==0.24.1
|
||||
PYTHON_EXEC=`which python3` make build
|
||||
PYTHON_EXEC=`which python3` make install
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Sets up phantomjs to be used with Home Assistant.
|
||||
|
||||
# Stop on errors
|
||||
set -e
|
||||
|
||||
PHANTOMJS_VERSION="2.1.1"
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
mkdir -p build && cd build
|
||||
|
||||
curl -LSO https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2
|
||||
tar -xjf phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2
|
||||
mv phantomjs-$PHANTOMJS_VERSION-linux-x86_64/bin/phantomjs /usr/bin/phantomjs
|
||||
/usr/bin/phantomjs -v
|
||||
@@ -1,121 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Install requirements and build dependencies for Home Assinstant in Docker.
|
||||
|
||||
INSTALL_TELLSTICK="${INSTALL_TELLSTICK:-yes}"
|
||||
INSTALL_OPENALPR="${INSTALL_OPENALPR:-yes}"
|
||||
INSTALL_FFMPEG="${INSTALL_FFMPEG:-yes}"
|
||||
INSTALL_PHANTOMJS="${INSTALL_PHANTOMJS:-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
|
||||
# libxrandr-dev is required for openalpr
|
||||
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
|
||||
)
|
||||
|
||||
# Required debian packages for building dependencies
|
||||
PACKAGES_DEV=(
|
||||
cmake git
|
||||
# python-openzwave
|
||||
cython3 libudev-dev
|
||||
# libcec
|
||||
swig
|
||||
)
|
||||
|
||||
install_tellstick () {
|
||||
TELLSTICK_PACKAGES=(
|
||||
# homeassistant.components.tellstick
|
||||
libtelldus-core2
|
||||
)
|
||||
|
||||
# Add Tellstick repository
|
||||
echo "deb http://download.telldus.com/debian/ stable main" >> /etc/apt/sources.list.d/telldus.list
|
||||
wget -qO - http://download.telldus.se/debian/telldus-public.key | apt-key add -
|
||||
|
||||
apt-get update
|
||||
apt-get install -y --no-install-recommends ${TELLSTICK_PACKAGES[@]}
|
||||
}
|
||||
|
||||
install_openalpr () {
|
||||
OPENALPR_PACKAGES=(
|
||||
# homeassistant.components.image_processing.openalpr_local
|
||||
libopencv-dev libtesseract-dev libleptonica-dev liblog4cplus-dev
|
||||
)
|
||||
apt-get install -y --no-install-recommends ${OPENALPR_PACKAGES[@]}
|
||||
# Clone the latest code from GitHub
|
||||
git clone https://github.com/openalpr/openalpr.git /usr/local/src/openalpr
|
||||
# Setup the build directory
|
||||
cd /usr/local/src/openalpr/src
|
||||
mkdir -p build
|
||||
cd build
|
||||
# Setup the compile environment
|
||||
cmake -DWITH_TEST=FALSE -DWITH_BINDING_JAVA=FALSE --DWITH_BINDING_PYTHON=FALSE --DWITH_BINDING_GO=FALSE -DWITH_DAEMON=FALSE -DCMAKE_INSTALL_PREFIX:PATH=/usr/local ..
|
||||
# compile the library
|
||||
make
|
||||
# Install the binaries/libraries to your local system (prefix is /usr/local)
|
||||
make install
|
||||
}
|
||||
|
||||
install_ffmpeg () {
|
||||
apt-get install -y --no-install-recommends -t jessie-backports ffmpeg
|
||||
}
|
||||
|
||||
# Stop on errors
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Add jessie-backports
|
||||
echo "Adding jessie-backports"
|
||||
echo "deb http://deb.debian.org/debian jessie-backports main" >> /etc/apt/sources.list
|
||||
|
||||
# Install packages
|
||||
echo "Updating Apt repositories"
|
||||
apt-get update
|
||||
echo "Installing packages"
|
||||
apt-get install -y --no-install-recommends ${PACKAGES[@]} ${PACKAGES_DEV[@]}
|
||||
|
||||
if [ "$INSTALL_TELLSTICK" == "yes" ]; then
|
||||
echo "Installing tellstick"
|
||||
install_tellstick
|
||||
fi
|
||||
|
||||
if [ "$INSTALL_OPENALPR" == "yes" ]; then
|
||||
echo "Installing openalpr"
|
||||
install_openalpr
|
||||
fi
|
||||
|
||||
if [ "$INSTALL_FFPMEG" == "yes" ]; then
|
||||
echo "Installing ffmpeg"
|
||||
install_ffmpeg
|
||||
fi
|
||||
|
||||
# Build and install openzwave
|
||||
echo "Installing python-openzwave"
|
||||
/usr/src/app/script/build_python_openzwave
|
||||
mkdir -p /usr/local/share/python-openzwave
|
||||
cp -R /usr/src/app/build/python-openzwave/openzwave/config /usr/local/share/python-openzwave/config
|
||||
|
||||
# Build and install libcec
|
||||
echo "Installing libcec"
|
||||
/usr/src/app/script/build_libcec
|
||||
|
||||
if [ "$INSTALL_PHANTOMJS" == "yes" ]; then
|
||||
# Install phantomjs
|
||||
script/install_phantomjs
|
||||
fi
|
||||
|
||||
# Remove packages
|
||||
echo "Removing dev 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/
|
||||
|
||||
Reference in New Issue
Block a user