Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 09 Oct 1998 09:51:34 -0400
From:      Brian McGovern <bmcgover@cisco.com>
To:        moorthy@cs.unc.edu
Cc:        hackers@FreeBSD.ORG
Subject:   Re: install disk for CAM and 3C905
Message-ID:  <199810091351.JAA01796@bmcgover-pc.cisco.com>

next in thread | raw e-mail | index | archive | help
The "easiest" way is to roll your own installation. This has some other
benefits, as it allows you to make any other pre-installation changes that
you want.

First thing you'll want is a good solid fast machine that you can do builds 
with, with a couple of GB of free disk space (so you can make multiple tries).
You'll also want to install full source. Lastly, its not a bad idea to use
an OS release at or around the version you're going to build. It helps 
remove some of those "unforseen" incompatibility issues.

Then, install FreeBSD and get it running on a network that can talk to the
outside world (aka the Internet) with a good-speed connection (28.8 will
blow here. You'll need something like a T1 or cable modem, or better, etc).

Next, review the use of CVS. You'll need to use this a bit to get things
right.

Next, use cvsup and /usr/share/examples/cvsup/cvs-supfile to pull down the CVS
archive for the OS source. You'll need this to build a release. You'll need
to make sure the file has src-all, ports-all, and doc-all defined (I believe
that doc-all is missing from the stock one). Run CVS against it, and it should
populate /usr/ncvs with all of the FreeBSD source from the dawn of time
until present.

Next, set the enviornment variable CVSROOT to /usr/ncvs. Then, go to a "working
directory" and do a "cvs co -r RELEASENAME src". Replace RELEASENAME with
whichever "stock" version you want (such as RELENG_2_2_7_RELEASE). If you're
not sure whats available, cd in to /usr/ncvs/src, and more some of the
files. The tags you can use should be up at the top. 

Once you've checked them out, branch the source tree, since you'll be making
your own local changes that you'll want to keep. To do this, issue a 
"cvs tag -b YOURTAG src" from the aforementioned "working directory", so it
will tag all of the src directory. YOURTAG can be replaced by anything you
want, so long as its valid, and hasn't been used.

Then, to change the boot disk, edit src/sys/i386/conf/GENERIC. The release
process will strip out portions of this to minimalize it. Its in 
src/release/floppies/boot/floppy/Makefile (you'll probably want to edit
both the one in /usr/src, and in your currently checked out copy, although the
latter is the one that should be used). Otherwise, add the options you need
to GENERIC.

Once done, go back to your working directory, and "cvs commit src". It should
check in all of your changes (and ask you to provide CVS comments for each).

Once that is done, go to /usr/src/release, and edit the Makefile. Set
BUILDNAME, CHROOTDIR, RELEASETAG and CVSROOT (not in the file) to proper
values. Here are some of my values:

BUILDNAME=2.2.X-CUSTOM			(replace X with a release)
CHROOTDIR=/usr/tmp/whereiwantmybuild	(where the build will take place. Make
					 SURE the directory exists!!!)
RELEASETAG=YOURTAG			(this is the CVS tag to use for 
					 getting the code. Make sure it matches
					 what you "tagged" above)
CVSROOT=/usr/ncvs			(this matches the cvs-supfile you
					 put together).

Then, say "make release". It'll chug for awhile (depending on machine, its gone
from a few hours to days). When its done, in CHROOTDIR, you should have builds
for both a CDROM and a FTP site. If you dig down, and find the "floppies"
section, you should find your new boot.flp. Note that the GENERIC kernel is
also used for building the initial boot kernel. This will help you bring over
CAM support in to the kernel that gets booted after install.

If this is the only change, then you should be able to use the standard CD
with the new boot floppy (although CAM support won't be in the kernel loaded
by the CD), or you can burn your own release CD. Usually what I do when I
build out a custom is to put all of the custom files on it, and then load
the "remaining" files from the first CD (such as X, the packages, xperiment,
etc) on to the new CD, allowing me a pretty "normal" Walnut Creek-type install.


	-Brian

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810091351.JAA01796>