2023-10-24 18:17:27 -04:00

89 lines
3.2 KiB
Bash

#!/bin/sh
name="daapd"
servicename="$(basename $0)"
. /etc/profile
if [ -f /storage/.cache/timezone ]; then
. /storage/.cache/timezone
else
TIMEZONE="America/New_York"
fi
oe_setup_addon "$servicename"
# set docker image
DOCKERIMAGE="linuxserver/daapd"
DOCKERTAG="latest"
ARCH=$(grep LIBREELEC_ARCH /etc/os-release | sed -E 's|.*\.(.*)"|\1|')
if [ "${ARCH}" = "arm" ]; then
if [ $(uname -m) = "aarch64" ]; then
echo '
**************************************************************
**************************************************************
**** You are using 32 bit userspace ****
**** Linuxserver has deprecated 32 bit images ****
**** https://info.linuxserver.io/issues/2023-07-01-armhf/ ****
**** This addon will attempt to run the aarch64 version ****
**************************************************************
**************************************************************'
DOCKERTAG="arm64v8-latest"
else
echo '
**************************************************************
**************************************************************
**** You are using a 32 bit device ****
**** Linuxserver has deprecated 32 bit images ****
**** https://info.linuxserver.io/issues/2023-07-01-armhf/ ****
**** This addon will not run on your system ****
**************************************************************
**************************************************************'
sleep infinity
fi
fi
# add image to cron updater list
if [ ! -f /storage/.kodi/userdata/addon_data/docker.linuxserver.updater/update.sh ]; then
echo "Waiting for Docker Updater Addon to initialize"
until [ -f /storage/.kodi/userdata/addon_data/docker.linuxserver.updater/update.sh ]; do
sleep 1
done
echo "Docker Updater Addon is now initialized"
fi
if ! grep -q "$DOCKERIMAGE" /storage/.kodi/userdata/addon_data/docker.linuxserver.updater/update.sh; then
echo "/storage/.kodi/addons/service.system.docker/bin/docker pull ${DOCKERIMAGE}:${DOCKERTAG}" >> /storage/.kodi/userdata/addon_data/docker.linuxserver.updater/update.sh
fi
if [ ! -S /run/docker.sock ]; then
echo "Waiting for docker socket. . ."
until [ -S /run/docker.sock ]; do
sleep 1
done
echo "Docker socket is now up"
fi
docker rm "$name" 2>/dev/null
docker rmi $(docker images | grep "$DOCKERIMAGE" | grep '<none>' | sed 's/\s\+/\t/g' | cut -f3) 2> /dev/null
if [ ! "$(ls -ld $V_music | awk '{print $3}')" = "nobody" ]; then
echo "attempting chown nobody:users on $V_music"
chown -R nobody:users "$V_music" 2>&1 >/dev/null
echo "chown attempt completed, moving on"
else
echo "skipping chown, make sure the folder $V_music is accessible by the user nobody:users (65534:100)"
fi
docker run --name="$name" \
--rm \
--network=host \
-e WARNING_MSG="DO NOT CONTROL THIS IN PORTAINER!" \
-e PUID="65534" \
-e PGID="100" \
-e TZ="$TIMEZONE" \
-v "$V_config":/config \
-v "$V_music":/music \
-p "$P_port":3689 \
${E_extraparam} \
"$DOCKERIMAGE":"$DOCKERTAG"