summaryrefslogtreecommitdiffstats
path: root/release
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1995-11-06 08:28:12 +0000
committerjkh <jkh@FreeBSD.org>1995-11-06 08:28:12 +0000
commit61575af4166f2e6c66b119158c7d228e781ba133 (patch)
tree4065cd0981e85f32aff9731b5b155e8704ac965b /release
parentfc86291f9705c923285abbcd125ac37b4477fc72 (diff)
downloadFreeBSD-src-61575af4166f2e6c66b119158c7d228e781ba133.zip
FreeBSD-src-61575af4166f2e6c66b119158c7d228e781ba133.tar.gz
Correct some *serious* brain-o's in the upgrade procedure. Thanks for
your patience, Julian!
Diffstat (limited to 'release')
-rw-r--r--release/sysinstall/installUpgrade.c23
1 files changed, 21 insertions, 2 deletions
diff --git a/release/sysinstall/installUpgrade.c b/release/sysinstall/installUpgrade.c
index 4d742cf..ffb1920 100644
--- a/release/sysinstall/installUpgrade.c
+++ b/release/sysinstall/installUpgrade.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: installUpgrade.c,v 1.14 1995/11/04 08:47:30 jkh Exp $
+ * $Id: installUpgrade.c,v 1.15 1995/11/04 11:09:03 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -66,7 +66,10 @@ doByHand(HitList *h)
dialog_clear();
msgConfirm("/etc/%s is one of those files that this upgrade procedure just isn't\n"
"smart enough to deal with right now. You'll need to merge the old and\n"
- "new versions by hand when the option to do so is later presented.", h->name);
+ "new versions by hand when the option to do so manually is later\n"
+ "presented (in the meantime, you might want to write the name of\n"
+ "this file down! - the holographic shell on VTY4 is a good place for\n"
+ "this).", h->name);
}
/* These are the only meaningful files I know about */
@@ -249,6 +252,13 @@ installUpgrade(char *str)
return RET_FAIL;
}
+ if (!copySelf()) {
+ dialog_clear();
+ msgConfirm("Couldn't clone the boot floppy onto the root file system.\n"
+ "Aborting.");
+ return RET_FAIL;
+ }
+
if (chroot("/mnt") == RET_FAIL) {
dialog_clear();
msgConfirm("Unable to chroot to /mnt - something is wrong with the\n"
@@ -256,8 +266,17 @@ installUpgrade(char *str)
variable_unset(DISK_PARTITIONED);
return RET_FAIL;
}
+
chdir("/");
systemCreateHoloshell();
+
+ if (!rootExtract()) {
+ dialog_clear();
+ msgConfirm("Failed to load the ROOT distribution. Please correct\n"
+ "this problem and try again (the system will now reboot).");
+ reboot(0);
+ }
+
if (extractingBin) {
while (!saved_etc) {
saved_etc = msgGetInput("/usr/tmp/etc", "Under which directory do you wish to save your current /etc?");
OpenPOWER on IntegriCloud