✨ nextcloud: script style and retrying
This commit is contained in:
parent
ec2bccea4b
commit
bce99f4684
1 changed files with 24 additions and 17 deletions
|
|
@ -13,33 +13,40 @@ THISDIR="$(dirname "$(readlink -f "${0}")")"
|
|||
needs_commands "curl" "notify-send"
|
||||
|
||||
version_available="$( \
|
||||
curl -sSv 'https://github.com/nextcloud-releases/desktop/releases/latest' 2>&1 \
|
||||
curl --silent --verbose --retry-all-errors --retry-delay 3 --retry 5 \
|
||||
'https://github.com/nextcloud-releases/desktop/releases/latest' 2>&1 \
|
||||
| grep '^< location: ' \
|
||||
| grep -Eo '[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+' \
|
||||
| head -n1 \
|
||||
)"
|
||||
|
||||
if [ -z "${version_available}" ]; then
|
||||
echo "failed checking for nextcloud update" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
version_installed="$( \
|
||||
readlink "${INSTALL_DIR}/current" \
|
||||
| grep -Eo '[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+' \
|
||||
)"
|
||||
|
||||
if [ -n "${version_available}" ] && [ "${version_available}" != "${version_installed}" ]; then
|
||||
echo "new nextcloud version available: ${version_available}"
|
||||
notify-send \
|
||||
--app-name "Nextcloud" \
|
||||
--icon "${THISDIR}/.icon/nextcloud.svg" \
|
||||
"nextcloud-appimage-launch" \
|
||||
"new nextcloud version available: ${version_available}"
|
||||
|
||||
curl -sSfL \
|
||||
"https://github.com/nextcloud-releases/desktop/releases/download/v${version_available}/Nextcloud-${version_available}-x86_64.AppImage" \
|
||||
--output "${INSTALL_DIR}/Nextcloud-${version_available}-x86_64.AppImage"
|
||||
|
||||
chmod +x "${INSTALL_DIR}/Nextcloud-${version_available}-x86_64.AppImage"
|
||||
ln -sf "./Nextcloud-${version_available}-x86_64.AppImage" "${INSTALL_DIR}/current"
|
||||
else
|
||||
echo "nextcloud is up to date!"
|
||||
if [ "${version_available}" == "${version_installed}" ]; then
|
||||
echo "nextcloud is up to date!" >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "new nextcloud version available: ${version_available}" >&2
|
||||
notify-send \
|
||||
--app-name "Nextcloud" \
|
||||
--icon "${THISDIR}/.icon/nextcloud.svg" \
|
||||
"nextcloud-appimage-launch" \
|
||||
"new nextcloud version available: ${version_available}"
|
||||
|
||||
curl --silent --show-error --fail --location \
|
||||
"https://github.com/nextcloud-releases/desktop/releases/download/v${version_available}/Nextcloud-${version_available}-x86_64.AppImage" \
|
||||
--output "${INSTALL_DIR}/Nextcloud-${version_available}-x86_64.AppImage"
|
||||
|
||||
chmod +x "${INSTALL_DIR}/Nextcloud-${version_available}-x86_64.AppImage"
|
||||
ln -sf "./Nextcloud-${version_available}-x86_64.AppImage" "${INSTALL_DIR}/current"
|
||||
|
||||
exec "${INSTALL_DIR}/current" --background "${@}"
|
||||
|
|
|
|||
Loading…
Reference in a new issue