setup install script to use docker

similar to the home assistant install script
pull/2149/head
Tanner Davis 2 years ago
parent 86a0130b33
commit 6a6ded5a38
  1. 89
      install/rhasspy-install.sh

@ -14,61 +14,59 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get -y install \ $STD apt-get install -y curl
libportaudio2 \ $STD apt-get install -y sudo
libatlas3-base \ $STD apt-get install -y mc
libgfortran4 \
ca-certificates \
supervisor \
mosquitto \
perl \
curl \
sox \
alsa-utils \
libasound2-plugins \
jq \
espeak \
flite \
gstreamer1.0-tools \
gstreamer1.0-plugins-good \
libsndfile1 \
libgomp1 \
libatlas3-base \
libgfortran4 \
libopenblas-base \
libjbig0 \
liblcms2-2 \
libopenjp2-7 \
libtiff5 \
libwebp6 \
libwebpdemux2 \
libwebpmux3 \
libatomic1 \
libspeex1 \
libspeex-dev \
libspeexdsp1 \
libspeexdsp-dev
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Updating Python" msg_info "Updating Python"
$STD apt-get install -y \ $STD apt-get install -y \
python3 \ python3 \
libpython3.7 \ python3-dev \
python3-setuptools \
python3-pip \ python3-pip \
python3-distutils \ python3-venv
msg_ok "Updated Python" msg_ok "Updated Python"
LATEST=$(curl -sL https://api.github.com/repos/rhasspy/rhasspy/releases/latest | grep '"tag_name":' | cut -d'"' -f4) get_latest_release() {
curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4
}
DOCKER_LATEST_VERSION=$(get_latest_release "moby/moby")
RHASSPY_LATEST_VERSION=$(get_latest_release "rhasspy/rhasspy")
msg_info "Installing Docker $DOCKER_LATEST_VERSION"
DOCKER_CONFIG_PATH='/etc/docker/daemon.json'
mkdir -p $(dirname $DOCKER_CONFIG_PATH)
if [ "$ST" == "yes" ]; then
VER=$(curl -s https://api.github.com/repos/containers/fuse-overlayfs/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
cd /usr/local/bin
curl -sSL -o fuse-overlayfs https://github.com/containers/fuse-overlayfs/releases/download/$VER/fuse-overlayfs-x86_64
chmod 755 /usr/local/bin/fuse-overlayfs
cd ~
echo -e '{\n "storage-driver": "fuse-overlayfs",\n "log-driver": "journald"\n}' >/etc/docker/daemon.json
else
echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json
fi
$STD sh <(curl -sSL https://get.docker.com)
msg_ok "Installed Docker $DOCKER_LATEST_VERSION"
msg_info "Pulling Rhasspy $CORE_LATEST_VERSION Image"
$STD docker rhasspy/rhasspy:latest
msg_ok "Pulled Rhasspy $CORE_LATEST_VERSION Image"
msg_info "Installing Rhasspy" msg_info "Installing Rhasspy"
wget -q https://github.com/rhasspy/rhasspy/releases/download/${LATEST}/rhasspy_amd64.deb $STD docker volume create rhasspy_profiles
# Switch out libgfortran5 for libgfortran4 dependency $STD docker run -d \
dpkg-deb --extract rhasspy_amd64.deb tmp -p 12101:12101 \
dpkg-deb --control rhasspy_amd64.deb tmp/DEBIAN --name=rhasspy \
sed -i 's/libgfortran4/libgfortran5/' ./tmp/DEBIAN/control --restart=always \
$STD dpkg --build tmp rhasspy_amd64.deb -v "rhasspy_profiles:/profiles" \
$STD dpkg -i ./rhasspy_amd64.deb -v "/etc/localtime:/etc/localtime:ro" \
--device /dev/snd:/dev/snd \
rhasspy/rhasspy:latest \
--user-profiles /profiles \
--profile en
mkdir /root/rhasspy_profiles
msg_ok "Installed Rhasspy" msg_ok "Installed Rhasspy"
motd_ssh motd_ssh
@ -77,5 +75,4 @@ customize
msg_info "Cleaning up" msg_info "Cleaning up"
$STD apt-get autoremove $STD apt-get autoremove
$STD apt-get autoclean $STD apt-get autoclean
rm rhasspy_amd64.deb
msg_ok "Cleaned" msg_ok "Cleaned"
Loading…
Cancel
Save