# bsdinstall - testers wanted



## joel@ (Jan 10, 2011)

Nathan Whitehorn (nwhitehorn@) recently announced his work on a possible sysinstall replacement. The goal is to replace sysinstall in 9.0 but he's in need of more testers.

You can download a snapshot iso with the new installer here.

Just download it and try it on real hardware or in vmware/virtualbox/whatever.

You can read his initial announcement here.

Make sure you send your feedback, comments and bug reports to Nathan.

There's also a wiki page here.

*Edit.* Added the new install ISO.


----------



## joel@ (Jan 11, 2011)

Nathan has created a new install ISO. Grab it here.


----------



## mfaridi (Jan 12, 2011)

I test last one, it is good, but I think sysinstall give use more option, for install, but nice thing I see was LiveCD option and it is great, the partitioning I think is so close and do to give more option like sysinstall, it installed FreeBSD 9 current for me. I will check last one.


----------



## fmw (Jan 14, 2011)

Just took a quick look.

It would probably be nice to set the keyboard layout - I do use a QWERTY keyboard once in awhile, but not often enough to remember the layout.

I like the live CD option, but for troubleshooting existing installations, it might be nice to have a few mountpoints more at your disposal.

For relative noobs like myself, it would be good to get a little help with partitioning akin to the auto defaults option in sysinstall.


----------



## troberts (Jan 14, 2011)

mfaridi said:
			
		

> I test last one, it is good, but I think sysinstall give use more option, for install, but nice thing I see was LiveCD option and it is great, the partitioning I think is so close and do to give more option like sysinstall, it installed FreeBSD 9 current for me. I will check last one.


Does it only install FreeBSD 9 current or did you have a choice? I am about to wipe Gentoo and replace it with FreeBSD, but I want to install FreeBSD 8, and since I am going to turn it into 8-STABLE, all I need is a working system that will let me dual-boot with Windows.


----------



## joel@ (Jan 14, 2011)

A new ISO has been released. Get it here.


----------



## troberts (Jan 14, 2011)

joel@ said:
			
		

> A new ISO has been released. Get it here.


Does it install FreeBSD 8 or 9?


----------



## da1 (Jan 15, 2011)

Would be nice to have a list of "what's new" for each snap ...


----------



## joel@ (Jan 15, 2011)

It installs 9-CURRENT. Take a look at user/nwhitehorn/bsdinstall/ in svn to see all changes.


----------



## troberts (Jan 15, 2011)

joel@ said:
			
		

> It installs 9-CURRENT. Take a look at user/nwhitehorn/bsdinstall/ in svn to see all changes.


Thank you. I had planned on using FreeBSD 8-STABLE but I guess I can give FreeBSD 9 a chance. If I have too many problems then I can always wipe it and install FreeBSD 8-STABLE.


----------



## joel@ (Jan 17, 2011)

There's a new snapshot available. Grab it here.


----------



## phoenix (Jan 18, 2011)

bsdinstall front-end to be converted to use pc-sysinstall back-end, to become the default installer for 9.0.

Interesting times ahead.


----------



## joel@ (Jan 20, 2011)

New snapshots seem to appear almost every day, so always download the snapshot from my first message in this thread. It should always point to the latest ISO available.


----------



## roddi (Jan 21, 2011)

Will the new installer eventually support installing ZFS on root?


----------



## SIFE (Jan 22, 2011)

roddi said:
			
		

> Will the new installer eventually support installing ZFS on root?


I tested and as I see it doesn't.
I tested the new bsdinstall-i386-20110118, I create boot slice and the second zfs, now after I get to shell and when I check zpool list I get nothing, why?
If I am wrong, it will be better to give a guide to how install FreeBSD with ZFS file system with the new installer.


----------



## irkkaaja (Jan 31, 2011)

Installed with this, works okay. Thoughts:

It'd be nice to have the new installer configure wireless internet connections. Doing it manually post-install is a giant pain:

```
# ifconfig iwn0 up
# ifconfig wlan0 create wlandev iwn0
# ifconfig wlan0 up
# cat > /etc/wpa_supplicant.conf
{a bunch of nonsensical jibberish}
EOF
# wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf
# dhclient -b wlan0
```
all of which you have to, y'know, memorize, if you only have one computer and can't get on the Internet during the process.

Also, the sound driver doesn't work:


```
# kldload snd_driver
kldload: can't load snd_driver: No such file or directory
```

I did get it to work by using snd_hda, but it really ought to be fixed. I'm guessing one of the portions of the metadriver no longer exists.


----------



## joel@ (Feb 7, 2011)

One of the recently added features to bsdinstall is support for configuring your wireless nic during installation. Yay.


----------



## spam (Feb 12, 2011)

Such an easy install would attract a lot of newbies, but in reality they still need desktop-ready compilations.
I hope it's just example and expect some kind "advanced" option with full sysinstall functionality.

Thanks.


----------



## frijsdijk (Feb 18, 2011)

I can't install on ZFS. It errors out with: 


```
Error mounting partition /mnt:
mont: /dev/ad0p2 : Invalid argument
```
I've chosen freebsd-zfs for /


```
Steps: Partitioning: Guided, Entire Disk.
ad0p1, 64kb, freebsd-boot
ad0p2, 6.9GB, freebsd-zfs /
ad0p3, 372MB, freebsd-swap none
```

The installer accepts the parameters, but after saving it errors out.


----------



## frijsdijk (Feb 18, 2011)

I was using bsdinstall-i386-20110205.iso.bz2 in VirtualBox.


----------



## zennybsd (Apr 4, 2011)

Maybe I am an old-styled sysadmin, but I found sysinstall having more options than bsdinstall. But as a sysadmin, I like to create configurations from ground up editing the /boot/loader.conf and /etc/rc.conf and other files making me aware what is where, and implications of the changes to system further helping me debug the system ;-)

PC-BSD already has a comprehensive installer like bsdinstall which has an option to install freebsd-core only and with zfs option if somebody wants. The only problem with their live CD is booting is a hit and trial or guesswork (works in some machines and freezes in others, I tried in several machines so far).


----------



## Kitche (Apr 4, 2011)

Which FreeBSD also has in -current called pc-sysinstall; I tend to use that myself but haven't used the bsdinstall since it came out.


----------



## kpedersen (Apr 4, 2011)

Cool. I am going to give this a play tonight.

Hopefully it will be similar to OpenBSD's where I can just pretty much hold the enter button and everything gets installed with pretty sane defaults (apart from Canada timezone lol)


----------



## phoenix (Apr 4, 2011)

zennybsd said:
			
		

> MaybeI am old-styled sysadmin, but I found sysinstall having more options than bsdinstall.



The beauty of bsdinstall is that it is *just* an installer.  It doesn't give you options for configuring the system, it doesn't have 40 bajillion screens to flip through, it doesn't have 14 different ways to start the install, it doesn't clutter up the screen with options no one has clicked on in umpteen years, etc.  

You partition your disk.  You install the OS.  You reboot into the OS.  Once the OS is installed and booted, you can configure it to your heart's content, using the tools that come with the OS, and not trying to shoehorn an installer into a system configuration tool.

Plus, the bsdinstall CD is a LiveCD, so anything you can do from a shell in FreeBSD, you can do at a shell via the installer.  So, if you want any kind of complex install setup, you just drop to a shell, run the commands needed, pop back to the installer and carry on.  Works great for setting up gmirror(8), hastd(8), gpart(8) partitioning, zfs(8), etc.

bsdinstall gets out of your way, lets you do things how you want, and just gives you a bootable OS.

Compared to sysinstall, it's like a glass of ice cold beer after a long day at the beach.  



> But as a sysadmin, I like to create configurations from ground up editing the /boot/loader.conf and /etc/rc.conf and other files making me aware what is where, and implications of the changes to system further helping me debug the system ;-)



IOW, you like bsdinstall more than sysinstall.  



> PC-BSD already has a comprehensive installer like bsdinstall which has an option to install freebsd-core only and with zfs option if somebody wants. The only problem with their live CD is booting is a hit and trial or guesswork (works in some machines and freezes in others, I tried in several machines so far).



PC-BSD installer GUI is nice, but limiting in what you can do with it.  I could not get a gmirror-based install to work, nor a 24-drive ZFS pool to work, nor even a 2-disk ZFS pool.  If you go with the defaults, the PC-BSD installer is nice.  But it's not a LiveCD, it doesn't provide you with a shell (that I could find).  For setting up a desktop, it works nicely.  Not so much for multi-disk server installs.

Fortunately, bsdinstall and pc-sysinstall are merging in the future, so we should get the power and simplicity of both.


----------



## zennybsd (Apr 4, 2011)

@phoenix: You are right and I do agree that bsdinstall is simpler than sysinstall, but if you want to do something at atomic level (except ZFS), sysinstall is what I found better, though some of the configurations options are in duplicates.

The best among all installers that I found among operating systems is that of slackware and variants like zenwalk or salixos. It is fast to install (maybe they adopted xz compression) and atomic, too.

I think bsdinstall would be wonderful if they just get inspiration from slackware installer and add just add the gpart, hastd, gmirror and zfs part as an addition as you suggested, imho (even does not worth 2 cents ;-)

And about PC-BSD, it is not production ready due to its random responsiveness.


----------



## phoenix (Apr 4, 2011)

zennybsd said:
			
		

> @phoenix: You are right and I do agree that bsdinstall is simpler than sysinstall, but if you want to do something at atomic level (except ZFS), sysinstall is what I found better, though some of the configurations options are in duplicates.



I have no idea what you mean by the above.  Personally, I think there should be 0 configuration done in the installer beyond partitioning the disk, network configuration, and creating an initial user.  Everything else should be done *after the OS is installed, and you have booted into it*.

What are you trying to do in bsdinstall that you can't do in sysinstal?  *And*, that you can't do from within the installed OS after booting?



> The best among all installers that I found among operating systems is that of slackware and variants like zenwalk or salixos. It is fast to install (maybe they adopted xz compression) and atomic, too.



What do you mean by "atomic"?



> I think bsdinstall would be wonderful if they just get inspiration from slackware installer and add just add the gpart, hastd, gmirror and zfs part as an addition as you suggested, imho (even does not worth 2 cents ;-)



Maybe we're talking about different bsdinstallers, then, because the current bsdinstall (available in 9-CURRENT) is about as simple as you can get:  choose keyboard, partition disk, install, create user, set time, reboot.  If you need more than that, you drop to a shell at various points.


----------



## sossego (Apr 4, 2011)

I've used the installer for SPARC64. It works.


----------



## zennybsd (Apr 7, 2011)

phoenix said:
			
		

> I have no idea what you mean by the above.  Personally, I think there should be 0 configuration done in the installer beyond partitioning the disk, network configuration, and creating an initial user.  Everything else should be done *after the OS is installed, and you have booted into it*.
> 
> What are you trying to do in bsdinstall that you can't do in sysinstal?  *And*, that you can't do from within the installed OS after booting?
> 
> ...




Yes, I agree that dropping to the shell prompt at various point is a nice feature of bsdinstaller. Thank you for the info which I skipped.

About the installer I tested, I tried bsdinstall-amd64-20110222.iso from http://people.freebsd.org/~nwhitehorn/

And atomic means that can go into the depth to very sub-levels of configurations. I want the bsdinstaller developers to have a look at the installers at slackware or slack-based distros like zenwalk or salixos to clarify what I meant.

I am not saying the bsdinstaller does not work, it works fine, but it lacks some features, maybe I am biased with slackware installer ;-)


----------



## nestux (Apr 8, 2011)

I was using bsdinstall-i386-20110116.iso in VirtualBox and works just fine.


----------



## irkkaaja (Apr 10, 2011)

zennybsd said:
			
		

> Maybe I am an old-styled sysadmin, but I found sysinstall having more options than bsdinstall. But as a sysadmin, I like to create configurations from ground up editing the /boot/loader.conf and /etc/rc.conf and other files making me aware what is where, and implications of the changes to system further helping me debug the system ;-)



Last I checked, bsdinstall is scriptable; everything is implemented as a bunch of shell commands. It should therefore be not too difficult to modify bsdinstall to install with whatever parameters you like!

The one thing that would be cool is automatic configuration of link-aggregation for networking. This is very useful for laptops and any other sort of mobile computing device where you're going to have multiple network connection interface (e.g. tablets!). If the installer can configure my laptop to have a smooth failover from ethernet to wireless, that would be awesome. For the unfamiliar, the process is described here:

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-aggregation.html

but doing it manually is kind of error-prone and requires some device probing and similar jumping through hoops.


----------



## gkontos (Apr 20, 2011)

When a software is replaced there are a few questions that need to be asked in order for the replacement to succeed.

1) What is wrong with the current 
2) What features do we need to have in the new one

Unfortunately as I see, those questions haven't been asked.


----------



## hedwards (Apr 21, 2011)

I just tried it earlier today, and the installer would not accept a password. It just sat there and didn't seem to recognize that I was typing anything. Up until that point I wasn't having any trouble with the keyboard.

I was using the most recent release on AMD64 if that helps, and the keyboard was just a cheapo PS2 that came with a Dell from a few years back.


			
				gkontos said:
			
		

> When a software is replaced there are a few questions that need to be asked in order for the replacement to succeed.
> 
> 1) What is wrong with the current
> 2) What features do we need to have in the new one
> ...


This is just a stop gap installer, while they work on the back end. The old installer worked just fine for most things, it's just that it couldn't handle ZFS and some of the newer things, the installer itself was better functioning in general than the ones that I've seen on Linux or Windows.


----------



## roddi (Apr 21, 2011)

gkontos said:
			
		

> When a software is replaced there are a few questions that need to be asked in order for the replacement to succeed.
> 
> 1) What is wrong with the current
> 2) What features do we need to have in the new one
> ...



Hi gkontos!

This is my opinion:

<frustration-venting-mode>
The current installer is a total mess of confusing menus. It does everything and the kitchen sink but it is totally useless and doesn't actually install the OS *if you want to boot from ZFS*. For my part it could be entirely left out and boot me right into a working shell with the the kernel extensions needed for ZFS already loaded.
</frustration-venting-mode>

Ok, to put it more mildly: I think it is hard to use the current installer correctly if you haven't already installed a dozen systems and exactly know what you are doing. 

This is due to the fact (IMHO), that it tries to do too much, namely installation of the base system, package management and configuration in one program. This wouldn't be so much of a problem, if the creators had put more thoughts into these three usage scenarios and structured the program along those lines. But combining these three aspects is still very ugly and plainly bad design.

What are the responsibilities of these three aspects?

Installation of the base system
All you do here is prepare your disk(s), put boot code onto it (/them) and install the base system. These steps are so dependent onto one another, that it doesn't make much sense do them out of order. Makes a pretty simple installer if you ask me.

Package management
Here you choose where to go from your base system. What to install on top; Where to install it from; Using which method. And maybe what to deinstall. All this can be done from the installation boot medium or from the booted system. From a user perspective the debian-based package managers do that quite well (well, if you don't nit-pick). Again a total mess. The FreeBSD handbook describes five or six methods to get it done, several of them are already pretty defunct by now. I stuck with portmaster for now but it is more a tamagotchi than a master demanding attention all the time asking silly questions.

Configuration
This is a very dark area in every OS I have ever encountered. On one side those more or less futile attempts to concentrate all configuration aspects into one place (Mac OS X Preferences, Windows System Configuration, SuSE Yast, ... and, yes, sysinstall!). On the other side you have a plethora of services splattering /etc, /usr/etc, ~/ and what-not (\SYSTEM, /Library, ... gahh!) with their text-based config files with always a new (better?) syntax just around the corner. To be honest I don't know a good solution here, but whatever the solution is, at least it should be separate from the other two aspects.

So having said all that, to answer your question:

1) Should be obvious
2) Less! YES, we need less features in one place! (Ok, and a way to install ZFS as boot, but that's beside my point here)

And to answer a question you didn't ask:

3) We need ONE package management system that works well instead of half dozen who all have their short-comings! (see homebrew on the Mac to see what I mean)

Best Regards
   Roddi


----------



## gkontos (Apr 21, 2011)

roddi said:
			
		

> Hi gkontos!
> 
> This is my opinion:
> 
> ...


It does have a descent working shell unlike the old fix it environment 


			
				roddi said:
			
		

> Ok, to put it more mildly: I think it is hard to use the current installer correctly if you haven't already installed a dozen systems and exactly know what you are doing.


True, imagine someone new to FreeBSD trying to use the installer.


			
				roddi said:
			
		

> This is due to the fact (IMHO), that it tries to do too much, namely installation of the base system, package management and configuration in one program. This wouldn't be so much of a problem, if the creators had put more thoughts into these three usage scenarios and structured the program along those lines. But combining these three aspects is still very ugly and plainly bad design.


Much like a Caesar salad 


			
				roddi said:
			
		

> What are the responsibilities of these three aspects?
> 
> Installation of the base system
> All you do here is prepare your disk(s), put boot code onto it (/them) and install the base system. These steps are so dependent onto one another, that it doesn't make much sense do them out of order. Makes a pretty simple installer if you ask me.
> ...


IMHO the steps I expect from an installer are:

a) Pre installation
b) Installation / Upgrade
c) Post installation


			
				roddi said:
			
		

> So having said all that, to answer your question:
> 
> 1) Should be obvious
> 2) Less! YES, we need less features in one place! (Ok, and a way to install ZFS as boot, but that's beside my point here)
> ...


Maybe we need to decide a few things before we can answer those questions.

ZFS is considered to be stable for production since 8.0-Release

Pre installation thoughts:
Shouldn't we give the option for a ZFS on root installation ? 
Do we want a default GPT partitioning scheme ?
Should the installer label the partitions and the OS reference them by labels? 

Installation thoughts:
Package management-install or even upgrade

Post installation thoughts:
Network, users & services with 3 clicks.

Regards,
George


----------



## Beastie (Apr 21, 2011)

gkontos said:
			
		

> ZFS is considered to be stable for production since 8.0-Release
> 
> Pre installation thoughts:
> Shouldn't we give the option for a ZFS on root installation ?


As you said in your review, "we are months away from a 9 release". The wiki page says a "ZFS installation" is a "[m]issing feature" so I guess they intend to include it sometime.



			
				gkontos said:
			
		

> Do we want a default GPT partitioning scheme ?


The best would be to first check for any existing scheme and only then fallback to a fixed default. If the disk doesn't already have an MBR and you're not dual-booting with older Windows, then GPT will do just fine as fallback default.


----------



## gkontos (Apr 21, 2011)

Beastie said:
			
		

> As you said in your review, "we are months away from a 9 release". The wiki page says a "ZFS installation" is a "[m]issing feature" so I guess they intend to include it sometime.


The real problem with ZFS boot support appears when we consider mirroring because there are currently 3 ways of doing that.

1) Create a full ZFS partition for everything + swap. It works well with no problems but you can't dump a kernel core there.

2) Create a separate partition for swap and if you need mirror then include both of them in etc/fstab. In other words split your swap. Not a bad idea but it sound kind of... 

3) Use gmirror for swap. Not bad either but I am being forced to load another module and I depend on gmirror for my swap. 

So, until a standard and "best" method is decided, ZFS is hard to implement.

A more radical approach would be to use a default ZFS swap for everything leaving core dumps to a dedicated USB device. 


			
				Beastie said:
			
		

> The best would be to first check for any existing scheme and only then fallback to a fixed default. If the disk doesn't already have an MBR and you're not dual-booting with older Windows, then GPT will do just fine as fallback default.


I am with you here but I wouldn't mind a more radical approach saying that GPT is the only available option.


----------



## phoenix (Apr 21, 2011)

gkontos said:
			
		

> It does have a descent working shell unlike the old fix it environment



This is one of the nicest things about the bsdinstall setup.  If there's something you want to do that's not presented in the installer TUI, then you drop to a shell and do it manually.  Sure, maybe it's not the best setup for a newbie to a Unix system, but it's absolute heaven for an advanced user.



> IMHO the steps I expect from an installer are:
> 
> a) Pre installation
> b) Installation / Upgrade
> c) Post installation



Nope.  All an installer should do is install the OS.  IOW, provide you with a way to partition the disk(s), spam the OS onto the disks, and then reboot into the new OS install.  That's it!  Of course, opinions vary.  



> Installation thoughts:
> Package management-install or even upgrade



Nope, the installer should not offer anything other than to install the OS.  3rd party app installs should not an option.  This is where sysinstall fails.



> Post installation thoughts:
> Network, users & services with 3 clicks.



Again, nope.  The installer should install the OS, nothing more.

If the user chooses a network installation option, then it should configure the network.

However, all other OS configuration should be done using the normal OS tools, from within the OS itself.

The biggest problem with sysinstall is that it tries to be everything:  disk partitioner, OS installer, OS configuration tool, package manager, etc, etc, etc, with three different ways to do everything, including standard, advanced, and expert options for everything.  There's even a whole help manual section thingy in there.  The main sysinstall screen has something like 15 different options ... before the installation routing even begins!

Maybe bsdinstall isn't perfect, but it's improving, and the devs are open to input.  And it's so much nicer, easier to use already.  And it's *just an installer* not an OS configuration tool, not a package manager, not a hand-holder, not a nanny, etc.


----------



## gkontos (Apr 21, 2011)

phoenix said:
			
		

> This is one of the nicest things about the bsdinstall setup.  If there's something you want to do that's not presented in the installer TUI, then you drop to a shell and do it manually.  Sure, maybe it's not the best setup for a newbie to a Unix system, but it's absolute heaven for an advanced user.


I am glad we agree on something 




			
				phoenix said:
			
		

> gkontos said:
> 
> 
> 
> ...


What you just described can be divided into:

1) Pre Installation _"provide you with a way to partition the disk(s)"_
2) Installation _"spam the OS onto the disks"_

I also like to configure network, services and user accounts on a third step.



			
				phoenix said:
			
		

> gkontos said:
> 
> 
> 
> ...


So, you don't expect to install any packages from the installer. That's ok I don't either because I never actually do. I usually install just the sources and take it from there with ports.
However, we are at year 2011 and a lot of potential FreeBSD users would like to be able to install a few packages.  



			
				phoenix said:
			
		

> gkontos said:
> 
> 
> 
> ...


This is the part where I mention about the 3rd step. Post installation. Of course opinions vary but we all have to realize that you can't install an OS without configuring network and initial services at least.


			
				phoenix said:
			
		

> The biggest problem with sysinstall is that it tries to be everything:  disk partitioner, OS installer, OS configuration tool, package manager, etc, etc, etc, with three different ways to do everything, including standard, advanced, and expert options for everything.  There's even a whole help manual section thingy in there.  The main sysinstall screen has something like 15 different options ... before the installation routing even begins!


What's wrong with that ?


			
				phoenix said:
			
		

> Maybe bsdinstall isn't perfect, but it's improving, and the devs are open to input.  And it's so much nicer, easier to use already.  And it's *just an installer* not an OS configuration tool, not a package manager, not a hand-holder, not a nanny, etc.


So, is it safe to guess that you are happy with it ?


----------

