Date: Sun, 2 Jan 2011 12:04:19 -0800 From: Garrett Cooper <yanegomi@gmail.com> To: Garrett Cooper <yanegomi@gmail.com> Cc: jhixson@gmail.com, freebsd-arch@FreeBSD.org, Nathan Whitehorn <nwhitehorn@freebsd.org>, Bruce Cran <brucec@freebsd.org>, matt@ixsystems.com, freebsd-sysinstall@freebsd.org Subject: Re: BSDInstall: I want the bikeshed painted plaid Message-ID: <29AA82C4-6301-4DCD-BC9D-423AD162998E@gmail.com> In-Reply-To: <A8ADEA5D-DE5D-43EE-A123-364EB6593FEF@gmail.com> References: <4D20C8BF.701@freebsd.org> <A8ADEA5D-DE5D-43EE-A123-364EB6593FEF@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 2, 2011, at 11:51 AM, Garrett Cooper wrote: > On Jan 2, 2011, at 10:49 AM, Nathan Whitehorn wrote: >=20 >> As those of you who obsessively follow the SVN commit mails may have = noticed, I recently began work on a new installer, which I have = tentatively named 'bsdinstall'. You can find the code itself at = svn://svn.freebsd.org/base/user/nwhitehorn/bsdinstall and a wiki page = describing it at http://wiki.freebsd.org/BSDInstall. >>=20 >> Why Plaid? >> ---------- >> This project started because we have never, in three major releases, = shipped an installer on PowerPC capable of installing a booting system = without absurd amounts of handholding and use of external tools. This is = especially galling when we have tools in the base (gpart, newfs, and = tar) fully capable of doing this. As it turns out, by the time you've = written a shell script to combine these things, you're well on your way = to deciding to write a new installer. >>=20 >> The goal of this project then, was to maximally reuse existing tools = and to make the installer a chain of easily modifiable or replaceable = components so that future installer-tinkerers will not run away in = terror as quickly as I and many others have from sysinstall and libdisk. >>=20 >> 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. >>=20 >> Status >> ------ >> This provides almost all of the functionality of the existing = sysinstall 'Express' track, and works Right Now. 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. >>=20 >> Paint Comes in Plaid? >> --------------------- >> With only a little more spit and polish, I think this could easily = replace sysinstall for the 9.0 release. It works right now on almost all = architectures for which we ship install media. There are no dependencies = on strange scripting languages, and only one on tools not currently in = the base system. >>=20 >> bsdinstall depends on the newer dialog and libdialog from Thomas = Dickey (devel/cdialog). This is LGPL2, but that is better than the = current dialog's license, and the software is so much better to develop = with than the current mess that is libdialog it might be good to have = anyway. In addition, I believe he is the sole author, and it's possible = he could be persuaded to relicense it. >>=20 >> I don't entirely know how all of this relates to pc-sysinstall. = pc-sysinstall has some more features (e.g. installation onto geli = disks), and certainly more thought went into it, but requires an immense = amount of work to make it work on non-x86 systems and a text front-end = is not yet complete. When it is ready, a lot of the infrastructural = changes required for bsdinstall (live CDs for installation, a new = libdialog, revised distfile format, etc.) will probably help = pc-sysinstall as well. >=20 > Please see pc-sysinstall if you like to see a different effort = in chartreuse. No guarantees as to how many x86-isms are in the = infrastructure. Should have read down to the bottom of the email... = pc-sysinstall really needs to be made non-x86 centric in order to be a = usable installer backend -- not sure how much effort has been put into = making this happen, but I _do_ have a PowerPC Mac I could test on so we = could work together to resolve any x86-isms and I might be able to hack = something together with mips in my spare time (I have potential access = to systems in my old work group, but I'd need to clear it with them = before I did anything with that). text-sysinstall was a WiP but = abandoned because some folks claimed that they were going to produce a = solution to that with lynx, a webserver, etc on install media. Looks = like that idea hasn't panned out though (it's been 2 months and I = haven't seen a prototype or mumbles on arch@, sysinstall@, etc), so a = libdialog-like solution is needed. Scripting changes should be = relatively cakewalk as long as I have a process for producing = pc-sysinstall based media, but there are other potential areas that need = to be audited for security issues in pc-sysinstall. Once upon a time = pc-sysinstall cached passwords on installed media based on some = discussions I had with Bruce Cran... not secure in the least; other = issues may lurk behind the scenes. Bruce Cran and I are interested parties in whatever will = transpire, so please let us know what you have planned. I think everyone can agree that sysinstall is dying and it's = time to sink some nails into its coffin before we send it on its way. Thanks, -Garrett=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?29AA82C4-6301-4DCD-BC9D-423AD162998E>