why Gentoo sucks, and why it will ultimately die
Posted: Sun Jul 30, 2006 10:39 pm
Two words: maintenance and bloat. When I started using Gentoo a number of years ago, it was a small, lightweight distribution with a reputation for speed. Despite the fact that most software had to be compiled, you could build a very lean system simply by installing a handful of packages and tweaking the USE flags to leave other stuff out. It took 5 seconds to update the portage cache. Packages were frequently updated, but for the most part you could just install the new version overtop of the old one. My standard system consists of X, KDE, Mplayer, and a few other packages like ssh and gcc which every system should have.
Fast-forward to today, where the current fad seems to be "modular packages". Instead of 10 packages for KDE we have 200, and instead of 1 package for X we have 100, and something is updated every day. There are now so many possible configurations, depending on whether you last updated a day, a week, or a month ago, that it is pointless to try to test anything. The software is simply thrown onto the users, and whatever is broken is sorted out in the forums.
Add to that the developer's tendency to introduce deep structural changes to the system on a continuous basis. I don't mind that Gentoo in 2006 uses udev instead of devfs, and Xorg instead of the standard X11. Certainly we all have to make these changes. What I dislike is the fact that these types of changes are made every two or three months, and often before the new software is ready. Sometimes the "solution" is to install a bunch of packages from ~x86, weeks before they are made "stable". What does that say ?
The bottom line is that I go out of town for one month, and when I return I spend one or two full days updating and repairing my system. It's not just compile time - I may as well reinstall. In fact, if you don't update you will be forced to reinstall because your configuration will quickly become unsupported, or updating it will break it beyond all repair.
There are so many packages now that it becomes impossible to strip out bloat. When one piece of software requires 100 packages, someone in that list will always want to install Gnome or Ruby or GTK+ or some other unnecessary dependency. Bloat is also added whenever the underlying system is changed, because new dependencies are added and old ones are not removed. I know there are tools for detecting this, but I also know that they don't often work. I'm pretty sure that if I reinstalled Gentoo right now I could build a lean and modular system, but a year later it would be spaghetti again.
The bottom line is that Gentoo reflects the state of Linux as a whole. It's like a house where every part, from the foundation to the roof, is constantly being worked on or replaced. This is good for house design, but it's not a place where anybody can live. Most distributions cherry pick the best versions of software for a "release", and then actually test the software (in a "beta" version) to see if it works. This way the users get the benefits of a fairly modern house, with only periodic interuptions instead of continuous construction. I don't think anything in Gentoo ever even gets to beta level anymore. The distribution as a whole certainly doesn't. The only people who can seem to maintain the system are its developers, and trying to "use" Gentoo is the craziest thing I have ever seen a large group of people do.
I miss the simplicity and speed of the old Gentoo. The distribution is now 10 times more complex, but it doesn't seem to deliver any benefits to its users.
Fast-forward to today, where the current fad seems to be "modular packages". Instead of 10 packages for KDE we have 200, and instead of 1 package for X we have 100, and something is updated every day. There are now so many possible configurations, depending on whether you last updated a day, a week, or a month ago, that it is pointless to try to test anything. The software is simply thrown onto the users, and whatever is broken is sorted out in the forums.
Add to that the developer's tendency to introduce deep structural changes to the system on a continuous basis. I don't mind that Gentoo in 2006 uses udev instead of devfs, and Xorg instead of the standard X11. Certainly we all have to make these changes. What I dislike is the fact that these types of changes are made every two or three months, and often before the new software is ready. Sometimes the "solution" is to install a bunch of packages from ~x86, weeks before they are made "stable". What does that say ?
The bottom line is that I go out of town for one month, and when I return I spend one or two full days updating and repairing my system. It's not just compile time - I may as well reinstall. In fact, if you don't update you will be forced to reinstall because your configuration will quickly become unsupported, or updating it will break it beyond all repair.
There are so many packages now that it becomes impossible to strip out bloat. When one piece of software requires 100 packages, someone in that list will always want to install Gnome or Ruby or GTK+ or some other unnecessary dependency. Bloat is also added whenever the underlying system is changed, because new dependencies are added and old ones are not removed. I know there are tools for detecting this, but I also know that they don't often work. I'm pretty sure that if I reinstalled Gentoo right now I could build a lean and modular system, but a year later it would be spaghetti again.
The bottom line is that Gentoo reflects the state of Linux as a whole. It's like a house where every part, from the foundation to the roof, is constantly being worked on or replaced. This is good for house design, but it's not a place where anybody can live. Most distributions cherry pick the best versions of software for a "release", and then actually test the software (in a "beta" version) to see if it works. This way the users get the benefits of a fairly modern house, with only periodic interuptions instead of continuous construction. I don't think anything in Gentoo ever even gets to beta level anymore. The distribution as a whole certainly doesn't. The only people who can seem to maintain the system are its developers, and trying to "use" Gentoo is the craziest thing I have ever seen a large group of people do.
I miss the simplicity and speed of the old Gentoo. The distribution is now 10 times more complex, but it doesn't seem to deliver any benefits to its users.