BSDInstall: merging to HEAD

Garrett Cooper gcooper at
Thu Jan 20 23:45:01 UTC 2011

On Thu, Jan 20, 2011 at 1:37 PM, David Demelier
<demelier.david at> wrote:
> On 14/01/2011 19:26, Nathan Whitehorn wrote:
>> 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://
>> Wiki page:
>> Goals
>> -----
>> 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.
>> New Features:
>> - 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
>> images
>> - Works on PowerPC
>> - Streamlined system installation
>> - More flexible scripting
>> - Easily tweakable
>> - All install CDs are live CDs
>> Architecture
>> ------------
>> 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.
>> Status
>> ------
>> 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.

    GPT makes more sense on modern machines given the limitation of
disk sizes and the MBR partition schemes (and FWIW MBR is less
portable outside of the PC world anyhow), but it would be nice if it
was a knob that defaulted to appropriate values for certain
architectures as well, like PC98 -> MBR?

More information about the freebsd-current mailing list