BSDInstall: merging to HEAD
nwhitehorn at freebsd.org
Fri Jan 14 18:26:44 UTC 2011
As those of you who have been reading freebsd-sysinstall and
freebsd-arch know, I have been working for a few weeks on a lightweight
new installer named 'bsdinstall'. This is designed to replace sysinstall
for the 9.0 release.
After two weeks of testing and bug fixes on the sysinstall list, I
believe this now has all required functionality and is ready to be
merged into the main source tree. I would like to do this on Tuesday, 18
January. Switching this to be the default installer would happen a few
weeks after that, pending discussion on release formats with the release
engineering team. This should provide a sufficient testing period before
9.0 and allow a maximal number of bugs to be discovered and solved
before the release is shipped.
Demo ISO for i386:
SVN repository: svn://svn.freebsd.org/base/user/nwhitehorn/bsdinstall
Wiki page: http://wiki.freebsd.org/BSDInstall
The primary goal of BSDInstall is to provide an easily extensible
installer without the limitations of sysinstall, in order to allow more
modern installations of FreeBSD. This means that it should have
additional features to support modern setups, but simultaneously frees
us to remove complicating features of sysinstall like making sure
everything fits in floppy disk-sized chunks.
- Allows installation onto GPT disks on x86 systems
- Can do installations spanning multiple disks
- Allows installation into jails
- Eases PXE installation
- Virtualization friendly: can install from a live system onto disk
- Works on PowerPC
- Streamlined system installation
- More flexible scripting
- Easily tweakable
- All install CDs are live CDs
BSDInstall is a set of tools that are called in sequence by a master
script. These tools are, for example, the partition editor, the thing
that fetches the distributions from the network, the thing that untars
them, etc. Since these are just called in sequence from a shell script,
a scripted installation can easily replace them with other things, (e.g.
hard-coded gpart commands), leave steps out, add new ones, or interleave
additional system modifications.
This provides functionality most similar to the existing sysinstall
'Express' track. It installs working, bootable systems you can ssh into
immediately after reboot on i386, amd64, sparc64, powerpc, and
powerpc64. There is untested support for pc98. The final architecture on
which we use sysinstall, ia64, is currently unsupported, because I don't
know how to set up booting on those systems -- patches to solve this are
very much welcome.
There are still some missing features that I would like to see in the
release, but these do not significantly impact the functionality of the
installer. Some will be addressed before merging to HEAD, in particular
the lack of a man page for bsdinstall. Others, like configuration of
wireless networking and ZFS installation, can happen between merge and
release. The test ISOs are also lacking a ports tree at the moment,
which is a statement about the slow upload speed of my DSL line and not
about the final layout of releases.
Please send any questions, comments, or patches you may have, and please
be aware when replying that this email has been cross-posted to three
lists. Technical discussion (bug reports, for instance) should be
directed to the freebsd-sysinstall list only. Most other discussion
belongs on -sysinstall and -current.
More information about the freebsd-current