From 2775c1d7d5f7ba8cea66a060f6700d49d4c06a8a Mon Sep 17 00:00:00 2001 From: Ed Maste Date: Wed, 19 Jul 2017 18:25:52 +0000 Subject: [PATCH] bsdinstall: improve checksum mismatch error for snapshots The usual case of a mismatched checksum for installer snapshots (e.g., -CURRENT, -ALPHA*) is that a newer snapshot has been built and the old install sets have been replaced. Provide a specific error message for checksum mismatches there that suggests looking for a newer snapshot. Submitted by: Guangyuan Yang Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D11641 --- usr.sbin/bsdinstall/scripts/checksum | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/usr.sbin/bsdinstall/scripts/checksum b/usr.sbin/bsdinstall/scripts/checksum index c95c7d9d48db..ff404d7f587b 100755 --- a/usr.sbin/bsdinstall/scripts/checksum +++ b/usr.sbin/bsdinstall/scripts/checksum @@ -62,8 +62,16 @@ for dist in $DISTRIBUTIONS; do percentage=$(echo $percentage + 100/`echo $DISTRIBUTIONS | wc -w` | bc) else eval "status_$distname=1" - dialog --backtitle "FreeBSD Installer" --title "Error" \ - --msgbox "The checksum for $dist does not match. It may have become corrupted, and should be redownloaded." 0 0 + case $(/bin/freebsd-version -u) in + *-ALPHA*|*-CURRENT|*-STABLE|*-PRERELEASE) + dialog --backtitle "FreeBSD Installer" --title "Error" \ + --msgbox "The checksum for $dist does not match. It may have become corrupted, or it may be from a newer version of FreeBSD. Please check for a newer snapshot." 0 0 + ;; + *) + dialog --backtitle "FreeBSD Installer" --title "Error" \ + --msgbox "The checksum for $dist does not match. It may have become corrupted, and should be redownloaded." 0 0 + ;; + esac exit 1 fi done