BTW, I've never met a gentoo user who's into high performance tuning, and I know plenty.
Most of them simply appreciate the flexibility and the source-based approach. Chances are that stock gentoo will not perform worse than a good binary distro, and that's sufficient for the most.
What you get is flexibility. Disabling GNOME or PulseAudio is a one-liner. In Ubuntu, you cannot even do it.
So what's the point--given that performance isn't--hard drive space?
What's the point of what? Flexibility?
I can install Compiz without installing all of GNOME. You can't. I can install MPlayer with multithreading, but without PulseAudio support. I can install OpenOffice without Java, but with a Qt4 frontend. I can actually choose whether I want to use GStreamer or xinelib as a backend with most players. You simply turn on options you want, and turn off those you don't want. Most packages have a wide range of possible functionality, and with most distributions, you do not get to choose it, it is chosen for you because of the limitations of the binary package formats. Gentoo lets you have Linux the way YOU like it, not the way Shuttleworth likes it.
That's worth something.
Obviously, not all users want this, and this is the reason why there are different distributions.
I'm not saying I don't care about performance. USE flags can help performance, primarily saving RAM by not loading libraries you don't need. But these benchmarks don't measure RAM usage and will (probably) always compare packages built with roughly the same options and features otherwise some might not consider it a fair test. In other words, benchmarks are probably useless unless they are performed under your ideal setup.
In Ubuntu, almost all of these possibilities are covered by packages in the distro itself (not a PPA). The `quassel' package is the fully KDE-integrated client+server build. The `quassel-client' package is the KDE-integrated client-only build. `quassel-qt4' is the non-KDE client+server build. `quassel-client-qt4' is the non-KDE client-only build. And `quassel-core' does not build a GUI at all, only the server, so it only depends on Qt4.
So as you can see, it is possible for a package with many possible configurations at build-time to be released as different packages. Also see apache2, which offers different configurations for the multi-processing module (MPM).
Granted, there are no packages for building GNOME without printing support, or building GLib without threading support. And I currently am not aware of any binary packages that differ only in their CFLAGS; in the case of both Quassel and Apache2, the differences are special custom build-time flags that fundamentally influence the dependencies or behavior of the package. In other words, something many users will actually care about.
I used Gentoo for a few years when I was new to Linux, and I have indeed build a system from stage 0. But more recently, I have used Fedora, Ubuntu, or derivatives thereof on my desktops, laptops, and server. Why? Because it just doesn't matter anymore.
I currently do not own a system with less than 2GB of RAM. I have a laptop with 2GB of RAM and a Core 2 Duo; a laptop with 4GB of RAM and a faster Core 2 Duo; a desktop with 6GB of RAM and a Core i7; and a server with 12GB of RAM and a faster Core i7. On any of these systems, if libraries providing features I will never use are mapped into memory, or if kernel modules are loaded that I lack the hardware for, I frankly don't care. These systems have so much free memory under normal usage that basically the entire set of open files sits in RAM the entire time, sometimes for days. This is less true of the 2GB system, but for the rest, it's definitely true. My disks spend the vast majority of their time idle, even when significant I/O (like watching a video) is going on.
I cared about Gentoo when I had a system with 256 MB of RAM, but nowadays it just doesn't matter. Go ahead Ubuntu; load Qt4, GLib, GTK+3.0, PostgreSQL, MySQL, sqlite, libgnomeprintui, Mono, Python, Java, Perl, and libvala into my system. Ask my RAM if it cares.
And if you own a system with less than 2GB of RAM, it's time to toss it. Seriously. It's 2010. Donate it to your local university's computer engineering department so upcoming hardware engineers can dissect its Pentium 4 and see how the early superscalar processors of the 2000s worked.
I can appreciate what you're saying (I have a new system arriving tomorrow) but at the same time, I am posting this message on a clunky old laptop with 512MB RAM that I still use on a regular basis.
It doesn't matter for you - and that's perfect for you. However, the topic is about performance comparisons, so I eagerly expect some numbers.
Like I said, I don't care about RAM, or extreme optimizations. What I care is that it is flexible and easy to maintain (for an experienced user, "easy" is always subjective). And what you describe does not sound easier than setting an environment variable to something like "+qt4 -gtk -gnome +kde -pulseaudio" and forgetting about it.FWIW, there is precedent for multiple packages with different configurations in Ubuntu. For example, Quassel, a Qt4-based IRC client, can optionally integrate deeply with the KDE 4.x libraries. Or it can be compiled by only depending on Qt4 and other low-level libraries, without touching KDE. Additionally, Quassel can be compiled either as a client only, as a server only, or as both the client and server in a single binary.
Like I've said before, the main advantages of Gentoo are:
- Timely access to new and experimental software
- Knowledgeable and helpful community and docs
This doesn't mean that other distros are bad (nobody sane would call Fedora, Debian or OpenSUSE bad distros), it just means that Gentoo might fit some people better. You can get some flexibility by providing 6 different packages for each program and having the user sift through them, but I still prefer setting it up and having the system take care of it.
Mind you, Gentoo can be annoying too. The recent migration to libpng 1.4 was particularly painful. But at the end of the day, I still prefer it to any other distro I've used. The idea of some daemon getting installed without me noticing, and then messing up my sound is enough to keep me there.
That's another thing, quad core REALLY helps. I'm getting my first i7 tomorrow, I can't wait to see how quick those compiles are.