Fix: beta_ver wird jetzt immer per API abgerufen

This commit is contained in:
Tim
2026-07-11 21:20:41 +02:00
parent 958ed3fef7
commit bca72afbe8
+10 -12
View File
@@ -51,12 +51,14 @@ parse_args() {
}
get_local_version() {
local version_line
if ! version_line=$(ollama --version 2>/dev/null); then
local version_output
# stdout und stderr erfassen; einige Ollama-Versionen geben die
# Versionszeile auf stderr aus, das sonst verworfen wuerde.
if ! version_output=$(ollama --version 2>&1); then
return 0
fi
printf '%s\n' "$version_line" | grep -oEm1 '[0-9]+\.[0-9]+\.[0-9]+[^[:space:]]*' || true
printf '%s\n' "$version_output" | grep -oEm1 '[0-9]+\.[0-9]+\.[0-9]+[^[:space:]]*' || true
}
# Helfer: GitHub-API abrufen und sicherstellen, dass die Antwort nicht leer ist.
@@ -182,25 +184,21 @@ main() {
local_ver=$(get_local_version)
# Nur benötigte API-Daten abrufen.
# Immer Stable und Beta (neueste Release inkl. Pre-Releases) abrufen.
stable_ver=$(get_latest_version "$GITHUB_API/releases/latest")
if [[ -z "$stable_ver" ]]; then
die "Ermittlung der aktuellen Stable-Version fehlgeschlagen."
fi
if [[ "$use_beta" == true ]]; then
beta_ver=$(get_latest_version "$GITHUB_API/releases?per_page=1")
if [[ -z "$beta_ver" ]]; then
die "Ermittlung der aktuellen Beta-Version fehlgeschlagen."
fi
else
beta_ver="$stable_ver"
beta_ver=$(get_latest_version "$GITHUB_API/releases?per_page=1")
if [[ -z "$beta_ver" ]]; then
die "Ermittlung der aktuellen Beta-Version fehlgeschlagen."
fi
printf 'Lokal: %s\n' "${local_ver:-(nicht installiert)}"
printf 'Stable: %s\n' "$stable_ver"
if [[ "$use_beta" == true ]] && [[ "$(cmp_versions "$beta_ver" "$stable_ver")" == 1 ]]; then
if [[ "$(cmp_versions "$beta_ver" "$stable_ver")" == 1 ]]; then
printf 'Beta: %s\n' "$beta_ver"
else
printf 'Beta: keine neuere Beta verfuegbar\n'