Date: Mon, 14 Mar 2011 09:13:30 -0500 From: Nathan Whitehorn <nwhitehorn@freebsd.org> To: freebsd-current Current <freebsd-current@freebsd.org>, freebsd-sysinstall@freebsd.org, FreeBSD Arch <freebsd-arch@freebsd.org> Subject: HEADS UP: sysinstall is no longer the default installer Message-ID: <4D7E228A.4090906@freebsd.org>
next in thread | raw e-mail | index | archive | help
I just committed (r219641) changes that make the release infrastructure (src/release/Makefile) use bsdinstall by default instead of sysinstall on install media. A big thank you is in order to everyone who provided advice, criticism, and testing for this project over the last few months! Along with sysinstall, the original sysinstall build stuff has been preserved (now /usr/src/release/Makefile.sysinstall) and will continue to be for the lifetime of the 9.x release series, although it will not be used by default. This change modifies the process of building releases somewhat, so I'll outline changes that people who run snapshot buildbots will have to make below, and some next steps planned with the installer. Changes to release(7) ----------------------------- Release builds work and look slightly different now, so everyone who snapshot tinderboxes will likely find them breaking shortly. The nearest analog to the old make release (with version-control checkouts and a chroot) is src/release/generate-release.sh, which can be run as generate-release.sh head /path/to/chroot/dir. If you want to include ports and documentation on the release media, CVSUP_HOST must be defined in the environment to point to a cvsup mirror. The output is placed in /R in the chroot directory, as before. If the chroot is unimportant (it ensures a total clean-room build, but may not be necessary in most cases), you can get a release build using the regular makefile, like so: cd /usr/src make buildworld buildkernel cd /usr/src/release make obj release By default, this will include ports and documentation if you have them checked out to /usr/ports and /usr/doc, though this behavior can be modified (see the top of the makefile). In addition, some architectures (i386, amd64, powerpc, powerpc64, and maybe ia64) have release media that can be cross-built, so you can set TARGET/TARGET_ARCH appropriately for those. Output goes to .OBJDIR, which is /usr/obj/usr/src/release in the case of the above commands. The equivalent to disc1 is called release.iso, the memstick image (i386, amd64 only) is called memstick, and a directory of distfiles for FTP mirrors is generated named ftp. Next steps -------------- The new installer is feature-complete at this time (except for a merge with the pc-sysinstall code base and the possible addition of ZFS support in the partition editor), so the next steps mostly involve documentation updates to manpages and the handbook. Generation of a bootonly ISO is another thing that should happen soon. Given time (or external patches), I would also like to update sysinstall to use the new-style distribution files so it can be an option on the 9.0 install CDs. Beyond that, please test this code as much as possible, and report any bugs, suspicious behaviors, or bad interfaces (or patch them -- patches for anything are always very welcome!). We have another several months before 9.0, so let's try to find all the bugs long before then. Thanks again to everyone who helped this project with comments and testing, especially to Bjoern Zeeb who got me irritated enough by sysinstall to start working on this project. -Nathan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D7E228A.4090906>