FreeBSD 6.0 install woes

So I decided to take FreeBSD 6.0 for a spin. I’ve basically skipped the entire 5.x series (I still have boxes running 4.X with uptimes of several years) but it looks like the fruits of the labour that went into the 5.X branch while it was -CURRENT are starting to pay off. Since I use a Mac as my primary machine at home there’s something nicely familiar about running FreeBSD on remote servers. Less surprises moving code from my dev environment to production, for example.

First odd thing is that the installer couldn’t guess my disk geometry correctly. Never seen that before. Just a 80GB Seagate PATA drive off an Intel ICH4 ATA controller. So I looked up the ficticious geometry and plugged it in. Man. Same exact installer I used *10* years ago. At least it was intimately familiar, so I blasted through “in and out” menus and watched the network card be brought up at the last second so that even Fast Spanning Tree couldn’t get the port forwarding quick enough for the first DNS request to ftp4.freebsd.org to suceed. Wait a while and on the second attempt off she goes! Yay! I love FreeBSD network installs. Except then I got a Fatal error: Invalid realloc size of 0!. Hmrf. So I started over and paid more attention to the installer menus this time thinking I must have goofed something. Got to the exact same spot of the install (54MB installed) and blam, there’s the error. Tried a different FTP mirror. No go. Turned off hyperthreading “just in case”, but no luck. Starting to get annoyed. Spent a rediculous amount of time futzing with my IDE settings thinking the disk geometry problem must be related. After close to an afternoon of screwing around I still couldn’t get the damned thing past the 54MB mark. Ugh! I hate it when I can’t get stuff to work!

So I walked away from it last week. Last night I did some googling (I know, should have started there) and although there’s practically no recent mention of the error, it certainly seems like it’s a bug in the installer itself. According to some mailing list posts from early in the 5.x lifecycle if I do an ISO install instead of a network install I shouldn’t hit the bug. So I’ll try that later today.

I don’t know if this bug is hitting many people, but I always feel bad for the developers when bugs like this are in a big point-O release like 6.0. All these wonderful improvements in the project but I’m hung up getting the thing installed. Hopefully I’m a rare case (although I don’t know what would be special about my box - it’s “average” in every sense of the word). It doesn’t bode well for FreeBSD gaining market share when the installer is as non-intuitive and unchanged as it was a decade ago and still has show-stopper bugs. Which is too bad, because with the growing popularity of OS X and its upcoming move to x86 I think there’s a great opportunity for FreeBSD to grow within the new OS X user population. It’s a natural fit for anyone who’s learned on a Mac and wants to get into running servers without paying Apple for the much slower OS X Server.

I think it’s also a reminder of some of the tougher challenges open source communities face. Installers must be painful, difficult, and annoying to write or FreeBSD would have a better one by now. The fact that FreeBSD doesn’t, and the commercially sponsored Linux (and even Solaris!) distros out there have excellent installers tells me something. Sometimes you just need to pay someone to write this kind of unrewarding code, cause volunteers just might not be able to get motivated enough pull it off. Apple: For crying out loud please lend on a hand on this one!

The last thing I wanted to see was whether or not there’s a better way to keep the base userland up to date with security fixes and such these days without resorting to a ‘make world’. That’s always been my biggest beef with FreeBSD: I hate the split personality of base and ports. I’m hoping things have improved on that front in the last few years since I’ve been away from the OS. The competition has certainly improved dramatically. My fingers are crossed that I’ll get an install done today and can start playing!


About this entry