You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
docker-plex/init/30_update_plex.sh

54 lines
1.8 KiB

#!/bin/bash
# opt out for autoupdates
[ "$ADVANCED_DISABLEUPDATES" ] && exit 0
export DEBIAN_FRONTEND=noninteractive
while ! ping -c1 tools.linuxserver.io &>/dev/null; do :; done
#The following error is not an error.
INSTALLED=$(dpkg-query -W -f='${Version}' plexmediaserver)
#Get stuff from things.
PLEX_TOKEN=$(cat "/config/Library/Application Support/Plex Media Server/Preferences.xml" | sed -n 's/.*PlexOnlineToken="//p' | sed "s/\".*//")
9 years ago
[ -z $PLEX_TOKEN ] && echo "Plex token not avalible, please login " && exit 0
PLEX_LATEST=$(curl -s "https://plex.tv/downloads/latest/1?channel=8&build=linux-ubuntu-x86_64&distro=ubuntu&X-Plex-Token=$PLEX_TOKEN"| cut -d "/" -f 5 )
9 years ago
[ "$PLEXPASS" ] && echo "PLEXPASS is deprecated, please use VERSION"
if [[ -z $VERSION && "$PLEXPASS" == "1" || $VERSION = "plexpass" ]]; then echo "VERSION=plexpass is depricated please use version latest"; fi
#Start update rutine
if [[ "$VERSION" = latest || "$VERSION" = plexpass ]]; then
VERSION=$PLEX_LATEST
echo "Target version: $VERSION set by: latest\plexpass"
elif [[ -z "$VERSION" ]]; then
echo "Target version: Version not set, Defaulting to supplied version"
else
echo "Target version: $VERSION set by: manually"
fi
last=130
if [[ "$VERSION" == "" ]]; then
echo "ERROR: No version found, running installed version $INSTALLED"
elif [[ "$VERSION" != "$INSTALLED" ]]; then
echo "Upgrading from version: $INSTALLED to version: $VERSION"
9 years ago
while [[ $last -ne "0" ]]; do
rm -f /tmp/plexmediaserver_*.deb
wget -P /tmp "https://downloads.plex.tv/plex-media-server/$VERSION/plexmediaserver_${VERSION}_amd64.deb"
9 years ago
last=$?
done
9 years ago
apt-get remove --purge -y plexmediaserver
dpkg -i /tmp/plexmediaserver_"${VERSION}"_amd64.deb
else
9 years ago
echo "No need to update!"
fi
cp -v /defaults/plexmediaserver /etc/default/plexmediaserver