“Absence makes the heart grown fonder.”

Back with Gentoo now, and ready to “settle down” again and dig in for another round. Renew my vows, if you will :)

Read on for my impressions of FreeBSD and why I am sticking with Gentoo, warts and all.

I learned a lot during my travels. As they say, the trip is half the fun. I still have some reservations, or concerns for the future of Gentoo and a distribution. I believe there are some unhealthy things going on (or not going on). But a few of my original assumptions (from my first post) have changed. Specifially:

The “core team” development model of FreeBSD provides a more stable OS than Linux’s “bazaar” style.

  • Not necessarily true, as I found out. What is does provide is a more focused OS. FreeBSD’s stable release is STABLE, and for the tasks which I believe the core team design for, specifically uptime, reliability, and stability, it surely deserves its reputation.
  • FreeBSD is not the only open source project with a “core team” style approach. In Linux, some release-based distributions such as Debian have a large and dedicated “QA team” which holds a huge amount of sway over what gets released and when. They may not necessarily develop all the things by themselves, but then again, neither does the FreeBSD core team. FreeBSD surely gets a lot of help in the form of patches from individual and corporate contributors. Their goal then is to make sure the code all works together. Linux QA teams essentially do the same thing on a slightly bigger scale, taking completed packages from other development groups (with their own QA teams) and making sure they work together. We don’t need to think of it like throwing together unrelated parts into a goulash and praying. No, certainly Linux’s core components are designed with the intention of working with the other core components. Linux (the kernel) developers build their kernel with the same GNU toolchain that I do. And many GNU toolchain hackers run on a Linux kernel. They design specifically for a basic “core system” in the same way that FreeBSD develops for a specific “core system”.
  • If we think of FreeBSD and Linux like a puzzle, then FreeBSD might look like a standard puzzle, while Linux might look a little more radical, like one of those octagonal puzzles. With Linux, there are many more ways to put it together and have the overall picture work. There are also plenty more opportunities to put it together in a way it doesn’t work. This can be exemplified by FreeBSD vs. Linux’s version of STABLE vs. UNSTABLE. In FreeBSD, stable snaps together like a standard puzzle. It is solid and it just works. In linux, the standard configurations are many, and they also fit together solidly. Though certainly some distributions version of STABLE is not as stable as FreeBSD’s, some are. The big difference comes when we want to move onto UNSTABLE or testing branch of software. For FreeBSD, recutting the tight-fitting puzzle is a painful process. I was very surprised to find that the legendarily stable FreeBSD was a mine-field of circular dependencies and unclear errors in the -CURRENT branch. In contrast, a Linux version of UNSTABLE is usually very reasonable. I more abstract puzzle allows us to pull pieces out and replace them with relative ease. This is a huge plus for Linux. Desktop users tend to require or demand more cutting edge versions of software. Linux gives them that ability, without the blood. Stability is a clearly relative to what you intend to use your system for.
  • That brings me lastly to one of the more interesting problems facing Gentoo and Gentoo’s public image. Unlike FreeBSD, or Debian, or Ubuntu or OpenSuse, Gentoo has what’s called a rolling-release cycle. What that means is if you’re updating regularly, then you are always using the newest “version” of Gentoo. There will be nothing different between a version installed in 2006 and one installed yesterday if you incrementally kept things up-to-date. In almost all respects, this is a plus. There is only one downside to this, and I think this recent review of the latest release of Gentoo (2008.0) on Phoronix is a good example:

In recent times the Gentoo Linux and its foundation has been plagued with a multitude of problems and times have certainly been challenging for this once popular distribution. It’s already July and we are now finally seeing Gentoo’s first official release of the year. In this article we are taking a brief look at Gentoo Linux 2008.0 and its changes.

Some of the packages that are updated with Gentoo Linux 2008.0 are the Linux 2.6.24 kernel, X Server 1.3.0, GCC 4.1.2, glibc 2.6.1, Xfce 4.4.2, and Portage 2.1.4.4. Gentoo Linux 2007.0 had shipped with the Linux 2.6.19 kernel, and of course, in that year and a half since its release there are many new drivers and an arsenal of other improvements to the kernel since that time. Gentoo profiles have been completely reworked in Gentoo 2008.0 to allow for significant cleanups of redundancies, reducing developer maintenance, and avoiding unnecessary confusion.

When it comes to the GNOME LiveCD, they have switched from using GNOME to Xfce. Switching to this lightweight desktop environment was done to conserve space on the LiveCD image. Once using the LiveCD installer to install to a disk, you will be left with Xfce 4.4.2, but KDE or GNOME can be built from the Portage source. With Gentoo 2008.0 there is no x86 or AMD64 LiveDVD this time around (at least not for now) due to a decision by the release engineering team to avoid delaying the 2008.0 release any further.

The Gentoo Linux installer now supports network-less installations using the packages and ebuild tree on the LiveCD. In addition, the Gentoo 2008.0 installer has numerous fixes for extended and logical partitions.

If you are interested in downloading Gentoo 2008.0, you can do so from the Gentoo Mirrors.

Sounds boring! After more than a year, that’s all that changed? Hardly the headline grabber that Ubuntu or OpenSuse is (from Distrowatch):

The long-awaited openSUSE 11.0 has arrived: “The openSUSE Project is proud to announce the release of openSUSE 11.0 – everything you need to get started with Linux on the desktop and on the server. [...] The 11.0 release of openSUSE includes more than 200 new features specific to openSUSE, a redesigned installer that makes openSUSE even easier to install, faster package management thanks to major updates in the ZYpp stack, and KDE 4, GNOME 2.22, Compiz Fusion, and much more.

Now, that makes me want to download it! What most people don’t know is is that Gentoo had KDE4, Gnome 2.22, Compiz-Fusion, etc, in the tree for weeks or months before this release of OpenSuse. It’s a common situation. Gentoo’s users and developers truly are a pioneering bunch, and it’s rare to see a new project come out that doesn’t have an ebuild somewhere. If it’s not in the stable tree, I look in the unstable tree. If it’s not there, I check developers’ overlays. If it’s not there, I look for an ebuild on bugzilla. If it’s not there, it probably doesn’t exist!

So the big problem with Gentoo is not that it’s boring and that the releases are so slow. The releases are a little slow and this last one was a tad boring. But the fact is simply that Gentoo is not a release-based distribution. When Gentoo “rolled out” Gnome 2.22 into the tree a few months ago, there was very little fanfare (outside of the community). Gentoo does news-worthy things all the time, but just not at the same time. It would be wise of Gentoo to figure out a way to make big roll-outs a little more flashy. Maybe a redesigned homepage with a prominent list of current popular packages in the tree?

  • So, here I am back with Gentoo, and ready to do what I can do to help the distro. More later on my efforts!

~ by digdoug on July 14, 2008.

One Response to ““Absence makes the heart grown fonder.””

  1. Doug, welcome back to Gentoo! I was a FreeBSD user as well before discovering Gentoo a little more than 5 years ago. Feel free to get in touch with me (dberkholz on IRC and email at gentoo.org) if you’d like to help out or just have suggestions for how we can improve.

Leave a Reply