summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1996-07-16 17:34:39 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1996-07-16 17:34:39 +0000
commit231387f437082b3b9a62189d7077e9d86b22243d (patch)
tree6d19a5415038fe5b32013460bc316d4864464dde
parentd37ec9d43f5e34e52e57d709ef751e4304316b80 (diff)
Notes
-rw-r--r--release/sysinstall/cdrom.c6
-rw-r--r--release/sysinstall/config.c130
-rw-r--r--release/sysinstall/help/readme.hlp16
-rw-r--r--release/sysinstall/help/relnotes.hlp18
-rw-r--r--release/sysinstall/install.c17
-rw-r--r--release/sysinstall/menus.c4
-rw-r--r--release/sysinstall/sysinstall.h7
7 files changed, 112 insertions, 86 deletions
diff --git a/release/sysinstall/cdrom.c b/release/sysinstall/cdrom.c
index d9a19156afd3..aa17fdc87d19 100644
--- a/release/sysinstall/cdrom.c
+++ b/release/sysinstall/cdrom.c
@@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
- * $Id: cdrom.c,v 1.20 1996/07/13 05:48:44 jkh Exp $
+ * $Id: cdrom.c,v 1.7.2.25 1996/07/13 05:52:02 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -51,10 +51,6 @@
#include <sys/mount.h>
#undef CD9660
-#define CD_UNMOUNTED 0
-#define CD_ALREADY_MOUNTED 1
-#define CD_WE_MOUNTED_IT 2
-
/*
* This isn't static, like the others, since it's often useful to know whether
* or not we have a CDROM available in some of the other installation screens.
diff --git a/release/sysinstall/config.c b/release/sysinstall/config.c
index 5c765927ae2d..47a7f82e0abc 100644
--- a/release/sysinstall/config.c
+++ b/release/sysinstall/config.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: config.c,v 1.16.2.57 1996/07/05 08:43:59 jkh Exp $
+ * $Id: config.c,v 1.16.2.58 1996/07/08 09:07:08 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -48,6 +48,8 @@
static Chunk *chunk_list[MAX_CHUNKS];
static int nchunks;
+extern int cdromMounted;
+
/* arg to sort */
static int
chunk_compare(Chunk *c1, Chunk *c2)
@@ -507,62 +509,94 @@ int
configPorts(dialogMenuItem *self)
{
char *cp, *dist = NULL; /* Shut up compiler */
+ int status = DITEM_SUCCESS, tries = 0;
dialog_clear();
if (!variable_get(VAR_PORTS_PATH))
variable_set2(VAR_PORTS_PATH, dist = "/cdrom/ports");
+ dialog_clear();
while (!directory_exists(dist)) {
- dist = variable_get_value(VAR_PORTS_PATH,
- "Unable to locate a ports tree on CDROM. Please specify the\n"
- "location of the master ports directory you wish to create the\n"
- "link tree to.");
- if (!dist)
- break;
+ if (++tries > 2) {
+ msgConfirm("You appear to be having some problems with your CD drive\n"
+ "or perhaps cannot find the second CD. This step will now\n"
+ "therefore be skipped.");
+ status = DITEM_FAILURE;
+ goto fixup;
+ }
+
+ /* Even if we're running multi-user, unmount it for this case */
+ cdromMounted = CD_WE_MOUNTED_IT;
+ mediaDevice->shutdown(mediaDevice);
+
+ msgConfirm("The ports collection is now on the second CDROM due to\n"
+ "space constraints. Please remove the first CD from the\n"
+ "drive at this time and insert the second CDROM. You will\n"
+ "also need to have the second CDROM in your drive any time\n"
+ "you wish to use the ports collection. When you're ready,\n"
+ "please press [ENTER].");
+ if (!mediaDevice->init(mediaDevice)) {
+ msgConfirm("Mount failed - either the CDROM isn't in the drive or\n"
+ "you did not allow sufficient time for the drive to become\n"
+ "ready before pressing [ENTER]. Please try again.");
+ }
}
- if (dist) {
- cp = msgGetInput("/usr/ports",
- "Where would you like to create the link tree?\n"
- "(press [ENTER] for default location). The link tree should\n"
- "reside in a directory with as much free space as possible,\n"
- "as you'll need space to compile any ports.");
- if (!cp || !*cp)
- return DITEM_FAILURE;
- if (Mkdir(cp))
- return DITEM_FAILURE;
+
+ cp = msgGetInput("/usr/ports",
+ "Where would you like to create the link tree?\n"
+ "(press [ENTER] for default location). The link tree should\n"
+ "reside in a directory with as much free space as possible,\n"
+ "as you'll need space to compile any ports.");
+ if (!cp || !*cp) {
+ status = DITEM_FAILURE;
+ goto fixup;
+ }
+ if (Mkdir(cp)) {
+ status = DITEM_FAILURE;
+ goto fixup;
+ }
+ if (strcmp(cp, "/usr/ports")) {
+ unlink("/usr/ports");
+ if (symlink(cp, "/usr/ports") == -1) {
+ msgConfirm("Unable to create a symlink from /usr/ports to %s!\n"
+ "I can't continue, sorry!", cp);
+ status = DITEM_FAILURE;
+ goto fixup;
+ }
else {
- if (strcmp(cp, "/usr/ports")) {
- unlink("/usr/ports");
- if (symlink(cp, "/usr/ports") == -1) {
- msgConfirm("Unable to create a symlink from /usr/ports to %s!\n"
- "I can't continue, sorry!", cp);
- return DITEM_FAILURE;
- }
- else {
- msgConfirm("NOTE: This directory is also now symlinked to /usr/ports\n"
- "which, for a variety of reasons, is the directory the ports\n"
- "framework expects to find its files in. You should refer to\n"
- "/usr/ports instead of %s directly when you're working in the\n"
- "ports collection.", cp);
- }
- }
- msgNotify("Making a link tree from %s to %s.", dist, cp);
- if (DITEM_STATUS(lndir(dist, cp)) != DITEM_SUCCESS) {
- msgConfirm("The lndir function returned an error status and may not have.\n"
- "successfully generated the link tree. You may wish to inspect\n"
- "the /usr/ports directory carefully for any missing link files.");
- }
- else {
- msgConfirm("The /usr/ports directory is now ready to use. When the system comes\n"
- "up fully, you can cd to this directory and type `make' in any sub-\n"
- "directory for which you'd like to compile a port. You can also\n"
- "cd to /usr/ports and type `make print-index' for a complete list of all\n"
- "ports in the hierarchy.");
- }
+ msgConfirm("NOTE: This directory is also now symlinked to /usr/ports\n"
+ "which, for a variety of reasons, is the directory the ports\n"
+ "framework expects to find its files in. You should refer to\n"
+ "/usr/ports instead of %s directly when you're working in the\n"
+ "ports collection.", cp);
}
}
- else
- return DITEM_FAILURE;
- return DITEM_SUCCESS;
+ msgNotify("Making a link tree from %s to %s.", dist, cp);
+ if (DITEM_STATUS(lndir(dist, cp)) != DITEM_SUCCESS) {
+ msgConfirm("The lndir function returned an error status and may not have.\n"
+ "successfully generated the link tree. You may wish to inspect\n"
+ "the /usr/ports directory carefully for any missing link files.");
+ }
+ else {
+ msgConfirm("The /usr/ports directory is now ready to use. When the system comes\n"
+ "up fully, you can cd to this directory and type `make' in any sub-\n"
+ "directory for which you'd like to compile a port. You can also\n"
+ "cd to /usr/ports and type `make print-index' for a complete list of all\n"
+ "ports in the hierarchy.");
+ }
+fixup:
+ tries = 0;
+ while (++tries < 3) {
+ mediaDevice->shutdown(mediaDevice);
+ msgConfirm("Done with the second CD. Please remove it and reinsert the first\n"
+ "CDROM now. It may be required for subsequence installation steps.\n\n"
+ "When you've done so, please press [ENTER].");
+ if (!mediaDevice->init(mediaDevice)) {
+ msgConfirm("Mount failed - either the CDROM isn't in the drive or\n"
+ "you did not allow sufficient time for the drive to become\n"
+ "ready before pressing [ENTER]. Please try again.");
+ }
+ }
+ return status | DITEM_RESTORE;
}
/* Load gated package */
diff --git a/release/sysinstall/help/readme.hlp b/release/sysinstall/help/readme.hlp
index 64837f140e1e..a254e06d2513 100644
--- a/release/sysinstall/help/readme.hlp
+++ b/release/sysinstall/help/readme.hlp
@@ -18,20 +18,20 @@ notes below for more information. | |
______( (_ / \______/
,' ,-----' |
`--{__________)
-
-
+
+
What is FreeBSD? FreeBSD is an operating system based on 4.4 BSD Lite
for Intel, AMD, Cyrix or NexGen "x86" based PC hardware. It works
with a very wide variety of PC peripherals and configurations and can
be used for everything from software development to Internet Service
-Provision.
-
+Provision.
+
This release of FreeBSD contains everything you need to run such a
system, including full source code for everything. With the source
distribution installed you can literally recompile the entire system
from scratch with one command, making it ideal for students,
researchers or folks who simply want to see how it all works.
-
+
A large collection of 3rd party ported software (the "ports
collection") is also provided to make it easier for you to obtain and
install all your favorite traditional UNIX utilities for FreeBSD.
@@ -39,13 +39,13 @@ Over 450 ports, from editors to programming languages to graphical
applications, make FreeBSD a powerful and comprehensive operating
environment that extends far beyond what's provided by many commercial
versions of UNIX.
-
-
+
+
For more documentation on this system it is recommended that you
purchase the 4.4BSD Document Set from O'Reilly Associates and the
USENIX Association, ISBN 1-56592-082-1. We have no connection with
O'Reilly, we're just satisfied customers!
-
+
If you're new to FreeBSD then you should also read EVERYTHING listed
in the Documentation menu on the boot floppy. It may seem like a lot
to read, but you should at least aquaint yourself with the types of
diff --git a/release/sysinstall/help/relnotes.hlp b/release/sysinstall/help/relnotes.hlp
index 514897ac6c59..00f582cecf72 100644
--- a/release/sysinstall/help/relnotes.hlp
+++ b/release/sysinstall/help/relnotes.hlp
@@ -455,28 +455,28 @@ The FreeBSD Development Team, excluding core team members
Stefan Esser <se@FreeBSD.org>
Bill Fenner <fenner@FreeBSD.org>
John Fieber <jfieber@FreeBSD.org>
- Marc G. Fournier <scrappy@FreeBSD.org>
+ Marc G. Fournier <scrappy@FreeBSD.org>
Lars Fredriksen <lars@freeBSD.org>
Thomas Gellekum <tg@FreeBSD.org>
Thomas Graichen <graichen@FreeBSD.org>
Rod Grimes <rgrimes@FreeBSD.org>
- John Hay <jhay@FreeBSD.org>
+ John Hay <jhay@FreeBSD.org>
Eric L. Hernes <erich@FreeBSD.org>
Jeffrey Hsu <hsu@FreeBSD.org>
Gary Jennejohn <gj@FreeBSD.org>
- Andreas Klemm <andreas@FreeBSD.org>
+ Andreas Klemm <andreas@FreeBSD.org>
L Jonas Olsson <ljo@FreeBSD.org>
Scott Mace <smace@FreeBSD.org>
Atsushi Murai <amurai@FreeBSD.org>
Mark Murray <markm@FreeBSD.org>
- Alex Nash <alex@FreeBSD.org>
- Sujal Patel <smpatel@FreeBSD.org>
+ Alex Nash <alex@FreeBSD.org>
+ Sujal Patel <smpatel@FreeBSD.org>
Bill Paul <wpaul@FreeBSD.org>
Joshua Peck Macdonald <jmacd@FreeBSD.org>
John Polstra <jdp@FreeBSD.org>
Mike Pritchard <mpp@FreeBSD.org>
Doug Rabson <dfr@FreeBSD.org>
- James Raynard <jraynard@FreeBSD.org>
+ James Raynard <jraynard@FreeBSD.org>
Geoff Rehmet <csgr@FreeBSD.org>
Martin Renters <martin@FreeBSD.org>
Paul Richards <paul@FreeBSD.org>
@@ -495,8 +495,8 @@ The FreeBSD Development Team, excluding core team members
Additional FreeBSD helpers and beta testers:
Coranth Gryphon Dave Rivers
- Kaleb S. Keithley Michael Smith
- Terry Lambert David Dawes
+ Kaleb S. Keithley Michael Smith
+ Terry Lambert David Dawes
Troy Curtis
@@ -526,5 +526,5 @@ We sincerely hope you enjoy this release of FreeBSD!
The FreeBSD Core Team
-$Id: relnotes.hlp,v 1.1.2.23 1996/07/05 10:35:39 jkh Exp $
+$Id: relnotes.hlp,v 1.1.2.24 1996/07/12 11:41:44 jkh Exp $
LocalWords: Adaptec
diff --git a/release/sysinstall/install.c b/release/sysinstall/install.c
index 3ccb42a0eba7..1d36eb8453fc 100644
--- a/release/sysinstall/install.c
+++ b/release/sysinstall/install.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: install.c,v 1.114 1996/07/13 05:13:25 jkh Exp $
+ * $Id: install.c,v 1.71.2.103 1996/07/13 05:14:52 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -372,18 +372,9 @@ installNovice(dialogMenuItem *self)
}
if (!mediaDevice) {
- dialog_clear();
- /* Try to set ourselves up as a CDROM if we can do that first */
- if (DITEM_STATUS(mediaSetCDROM(NULL)) == DITEM_SUCCESS) {
- /* If we can't initialize it, it's probably not a FreeBSD CDROM so punt on it */
- if (!mediaDevice->init(mediaDevice))
- mediaDevice = NULL;
- }
- if (!mediaDevice) {
- msgConfirm("Finally, you must specify an installation medium.");
- if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice)
- return DITEM_FAILURE | DITEM_RECREATE;
- }
+ msgConfirm("Finally, you must specify an installation medium.");
+ if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice)
+ return DITEM_FAILURE | DITEM_RECREATE;
}
if (DITEM_STATUS((i = installCommit(self))) == DITEM_FAILURE) {
diff --git a/release/sysinstall/menus.c b/release/sysinstall/menus.c
index 4e472196a2d5..44fa4454a1b9 100644
--- a/release/sysinstall/menus.c
+++ b/release/sysinstall/menus.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: menus.c,v 1.42.2.61 1996/07/10 09:43:33 jkh Exp $
+ * $Id: menus.c,v 1.42.2.62 1996/07/11 20:06:57 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -1007,7 +1007,7 @@ software not provided in the base distributions.",
NULL, optionsEditor },
{ "8 Packages", "Install pre-packaged software for FreeBSD",
NULL, configPackages },
- { "9 Ports", "Link to FreeBSD Ports Collection on CD/NFS",
+ { "9 Ports", "Link to FreeBSD Ports Collection on CD",
NULL, configPorts },
{ "A Root Password", "Set the system manager's password",
NULL, dmenuSystemCommand, NULL, "passwd root" },
diff --git a/release/sysinstall/sysinstall.h b/release/sysinstall/sysinstall.h
index 132b16273deb..bb0aac58b00e 100644
--- a/release/sysinstall/sysinstall.h
+++ b/release/sysinstall/sysinstall.h
@@ -4,7 +4,7 @@
* This is probably the last attempt in the `sysinstall' line, the next
* generation being slated to essentially a complete rewrite.
*
- * $Id: sysinstall.h,v 1.74 1996/07/09 14:28:22 jkh Exp $
+ * $Id: sysinstall.h,v 1.42.2.65 1996/07/09 14:37:03 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -191,6 +191,11 @@ typedef enum {
DEVICE_TYPE_ANY,
} DeviceType;
+/* CDROM mount codes */
+#define CD_UNMOUNTED 0
+#define CD_ALREADY_MOUNTED 1
+#define CD_WE_MOUNTED_IT 2
+
/* A "device" from sysinstall's point of view */
typedef struct _device {
char name[DEV_NAME_MAX];