Update menu.sh

This commit is contained in:
MacRimi 2025-01-12 16:41:34 +01:00 committed by GitHub
parent 04dd8af46a
commit c9d5ac193e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

51
menu.sh
View File

@ -100,38 +100,47 @@ select_language() {
check_updates() { check_updates() {
msg_info "$UPDATE_CHECKING" msg_info "$UPDATE_CHECKING"
# Forzar la descarga de la versión remota sin usar caché # Eliminar el archivo remote_version.txt si existe
REMOTE_VERSION=$(wget -qO- --no-cache "$REPO_URL/version.txt?$(date +%s)" | tr -d '\r' | tr -d '\n') rm -f "$REMOTE_VERSION_FILE"
if [ -z "$REMOTE_VERSION" ]; then # Forzar la descarga de la versión remota sin usar caché
msg_error "$UPDATE_CHECK_ERROR" if wget -qO "$REMOTE_VERSION_FILE" --no-cache "$REPO_URL/version.txt?$(date +%s)"; then
return 1 REMOTE_VERSION=$(cat "$REMOTE_VERSION_FILE" | tr -d '\r' | tr -d '\n')
fi
if [ -z "$REMOTE_VERSION" ]; then
msg_error "$UPDATE_CHECK_ERROR"
return 1
fi
if [ ! -f "$LOCAL_VERSION_FILE" ]; then if [ ! -f "$LOCAL_VERSION_FILE" ]; then
echo "$REMOTE_VERSION" > "$LOCAL_VERSION_FILE" echo "$REMOTE_VERSION" > "$LOCAL_VERSION_FILE"
msg_info "$FIRST_INSTALL $REMOTE_VERSION" msg_info "$(printf "$FIRST_INSTALL" "$REMOTE_VERSION")"
else else
LOCAL_VERSION=$(cat "$LOCAL_VERSION_FILE" | tr -d '\r' | tr -d '\n') LOCAL_VERSION=$(cat "$LOCAL_VERSION_FILE" | tr -d '\r' | tr -d '\n')
if [ "$LOCAL_VERSION" != "$REMOTE_VERSION" ]; then if [ "$LOCAL_VERSION" != "$REMOTE_VERSION" ]; then
if version_gt "$REMOTE_VERSION" "$LOCAL_VERSION"; then if version_gt "$REMOTE_VERSION" "$LOCAL_VERSION"; then
msg_info "$(printf "$NEW_VERSION_AVAILABLE" "$REMOTE_VERSION" "$LOCAL_VERSION")" msg_info "$(printf "$NEW_VERSION_AVAILABLE" "$REMOTE_VERSION" "$LOCAL_VERSION")"
if whiptail --title "$UPDATE_TITLE" --yesno "$UPDATE_PROMPT" 10 60; then if whiptail --title "$UPDATE_TITLE" --yesno "$UPDATE_PROMPT" 10 60; then
perform_update perform_update
else
msg_info "$UPDATE_POSTPONED"
fi
else else
msg_info "$UPDATE_POSTPONED" msg_info "$UPDATE_CURRENT"
fi fi
else else
msg_info "$UPDATE_CURRENT" msg_info "$(printf "$CURRENT_VERSION_INFO" "$LOCAL_VERSION")"
fi fi
else
msg_info "$(printf "$CURRENT_VERSION_INFO" "$LOCAL_VERSION")"
fi fi
else
msg_error "$UPDATE_CHECK_ERROR"
fi fi
# Eliminar el archivo remote_version.txt después de la comprobación
rm -f "$REMOTE_VERSION_FILE"
} }
# Función para realizar la actualización # Función para realizar la actualización
perform_update() { perform_update() {
# Limpiar la caché antes de la actualización # Limpiar la caché antes de la actualización