Prevent user astonishment by providing the shell option at the end, after

any installer-provided configuration files have been copied. This allows
users to edit their fstab, if desired, and to see what the installer has
placed in rc.conf.

Requested by:	phk
MFC after:	1 day
This commit is contained in:
Nathan Whitehorn 2011-12-02 02:05:26 +00:00
parent 0582474525
commit 6081c922d2

View File

@ -157,7 +157,7 @@ finalconfig() {
exec 3>&1
REVISIT=$(dialog --backtitle "FreeBSD Installer" \
--title "Final Configuration" --no-cancel --menu \
"Setup of your FreeBSD system is nearly complete. You can now modify your configuration choices or apply more complex changes using a shell." 0 0 0 \
"Setup of your FreeBSD system is nearly complete. You can now modify your configuration choices. After this screen, you will have an opportunity to make more complex changes using a shell." 0 0 0 \
"Exit" "Apply configuration and exit installer" \
"Add User" "Add a user to the system" \
"Root Password" "Change root password" \
@ -165,8 +165,7 @@ finalconfig() {
"Network" "Networking configuration" \
"Services" "Set daemons to run on startup" \
"Time Zone" "Set system timezone" \
"Handbook" "Install FreeBSD Handbook (requires network)" \
"Shell" "Open a shell in the new system" 2>&1 1>&3)
"Handbook" "Install FreeBSD Handbook (requires network)" 2>&1 1>&3)
exec 3>&-
case "$REVISIT" in
@ -198,15 +197,6 @@ finalconfig() {
bsdinstall docsinstall
finalconfig
;;
"Shell")
clear
echo This shell is operating in a chroot in the new system. \
When finished making configuration changes, type \"exit\".
chroot "$BSDINSTALL_CHROOT" /bin/sh 2>&1
# Don't hose local rc.conf changes
cp $BSDINSTALL_CHROOT/etc/rc.conf $BSDINSTALL_TMPETC/rc.conf.manual
finalconfig
;;
esac
}
@ -222,5 +212,14 @@ if [ ! -z "$BSDINSTALL_FETCHDEST" ]; then
rm -rf "$BSDINSTALL_FETCHDEST"
fi
dialog --backtitle "FreeBSD Installer" --title "Manual Configuration" \
--yesno "The installation is now finished. Before exiting the installer, would you like to open a shell in the new system to make any final manual modifications?" 0 0
if [ $? -eq 0 ]; then
clear
echo This shell is operating in a chroot in the new system. \
When finished making configuration changes, type \"exit\".
chroot "$BSDINSTALL_CHROOT" /bin/sh 2>&1
fi
echo "Installation Completed at $(date)" >> $BSDINSTALL_LOG