nextcloud: script style and retrying

This commit is contained in:
Jörn-Michael Miehe 2025-10-31 17:17:40 +01:00
parent ec2bccea4b
commit bce99f4684

View file

@ -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 \
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 -sSfL \
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"
else
echo "nextcloud is up to date!"
fi
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 "${@}"