123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- #!/bin/bash
- cd "$(dirname "$0")"
- function download_compat {
- if [[ "$AZ_CACHE" != "" ]]
- then
- download_id=$(echo "$2" | md5sum | sed 's/ .*//g')
- if [[ -e "$AZ_CACHE/$3/$download_id" ]]
- then
- echo "Cache hit: $AZ_CACHE/$3/$download_id"
- cp "$AZ_CACHE/$3/$download_id" "$1"
- return
- elif [[ "$3" != "" ]]
- then
- rm -r "$AZ_CACHE/$3" 2> /dev/null
- fi
- fi
- if [[ "$(which wget 2>/dev/null)" != "" ]]
- then
- wget -qO "$1" "$2"
- else [[ "$(which curl)" != "" ]]
- curl -sL "$2" > "$1"
- fi
- if [[ "$AZ_CACHE" != "" ]]
- then
- echo "Saving to: $AZ_CACHE/$3/$download_id"
- mkdir -p "$AZ_CACHE/$3/"
- cp "$1" "$AZ_CACHE/$3/$download_id"
- fi
- }
- function get_webclient_version {
- curl https://repo.jellyfin.org/releases/server/portable/versions/stable/web/ \
- | grep '[0-9]\+\.[0-9]\+\.[0-9]\+' \
- | sed 's/.*>\([0-9]\+\.[0-9]\+\.[0-9]\+\)\/.*/\1/g' \
- | sort -h | tail -n 1
- }
- if [[ "$1" == "--gen-fingerprint" ]]
- then
- (
- get_webclient_version
- ) | tee az-cache-fingerprint.list
- exit 0
- fi
- # Download web client
- update_web_client="no"
- mkdir -p build
- if [[ ! -e "build/dist" ]]
- then
- update_web_client="yes"
- elif [[ -e ".last_wc_version" ]]
- then
- if [[ "$(get_webclient_version)" != "$(cat .last_wc_version)" ]]
- then
- update_web_client="yes"
- fi
- fi
- if [[ "$update_web_client" == "yes" ]]
- then
- echo "Downloading web client..."
- wc_version=$(get_webclient_version)
- download_compat dist.tar.gz "https://repo.jellyfin.org/releases/server/portable/versions/stable/web/${wc_version}/jellyfin-web_${wc_version}_portable.tar.gz" "wc"
- if [[ "$DOWNLOAD_ONLY" != "1" ]]
- then
- rm -r build/dist 2> /dev/null
- rm -r dist 2> /dev/null
- tar -xvf dist.tar.gz > /dev/null && rm dist.tar.gz
- mv "jellyfin-web_${wc_version}" build/dist
- fi
- echo "$wc_version" > .last_wc_version
- fi
|