For Top Speed always try to get a valid download link.
This commit is contained in:
@@ -1,7 +1,24 @@
|
||||
#!/usr/bin/env bash
|
||||
# shellcheck disable=SC2154 # set by linux-game-manager.sh
|
||||
check_architecture x86_64
|
||||
download "https://github.com/diamondStar35/top_speed/releases/download/release-build/TopSpeed-linux-x64-Release-v-2026.4.13.1.zip"
|
||||
|
||||
releaseMetadataFile="TopSpeed-release-build.json"
|
||||
releaseMetadataPath="${cache}/${releaseMetadataFile}"
|
||||
releaseMetadataUrl="https://api.github.com/repos/diamondStar35/top_speed/releases/tags/release-build"
|
||||
assetPattern='^TopSpeed-linux-x64-Release-v-.*\.zip$'
|
||||
|
||||
rm -f "${releaseMetadataPath}"
|
||||
download_named "${releaseMetadataFile}" "${releaseMetadataUrl}"
|
||||
|
||||
assetName="$(jq -r --arg assetPattern "${assetPattern}" '.assets[] | select(.name | test($assetPattern)) | .name' "${releaseMetadataPath}" | head -n 1)"
|
||||
assetUrl="$(jq -r --arg assetPattern "${assetPattern}" '.assets[] | select(.name | test($assetPattern)) | .browser_download_url' "${releaseMetadataPath}" | head -n 1)"
|
||||
|
||||
if [[ -z "${assetName}" ]] || [[ -z "${assetUrl}" ]] || [[ "${assetName}" == "null" ]] || [[ "${assetUrl}" == "null" ]]; then
|
||||
ui_msgbox "Linux Game Manager" "Linux Game Manager" "Unable to find the latest Top Speed Linux download in the GitHub release metadata."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
download_named "${assetName}" "${assetUrl}"
|
||||
mkdir -p "${installPath}/TopSpeed"
|
||||
unzip -o -d "${installPath}/TopSpeed" "${cache}/TopSpeed-linux-x64-Release-v-2026.4.13.1.zip"
|
||||
unzip -o -d "${installPath}/TopSpeed" "${cache}/${assetName}"
|
||||
chmod +x "${installPath}/TopSpeed/TopSpeed"
|
||||
|
||||
Reference in New Issue
Block a user