-opkg update 2>&1 | tee /tmp/upgrade.log | zenity --progress --auto-close --pulsate --title "Updating feedlist..."
-opkg upgrade 2>&1 | tee -a /tmp/upgrade.log | zenity --text-info --title "Updating packages..." --width=600
-zenity --info --title="Upgrade complete" --text "All operations have been finished.\n\nYou can find a logfile in /tmp/upgrade.log"
\ No newline at end of file
+
+terminal -x bash -c \
+ 'echo "Updating package lists..." && \
+ opkg update 2>&1 | tee /tmp/upgrade.log && test ${PIPESTATUS[0]} -eq 0 && \
+ echo "Checking for updated packages..." && \
+ opkg upgrade 2>&1 | tee -a /tmp/upgrade.log && test ${PIPESTATUS[0]} -eq 0 && \
+ touch /tmp/upgrade_ok || sleep 3'
+
+if test -e /tmp/upgrade_ok; then
+ zenity --info --title="Upgrade complete" \
+ --text "All operations have been finished.\n\nYou can find a logfile at /tmp/upgrade.log"
+else
+ zenity --error --title="Errors detected" \
+ --text "Errors detected during update.\n\nYou can find a logfile at /tmp/upgrade.log"
+fi
+rm -f /tmp/upgrade_ok