Skip to main content

Why am I moving to Gentoo?

I think of this question again and again. For one because because people are asking me. People who love Debian, people who dislike continuous compilation. And for two because I repeatedly find myself doing something, liking something, working for something that I cannot verbally justify when I need to, may it be to convince somebody by the one more missing argument or when I just don't notice that the important reasons is more like a feeling and that justifying is the wrong thing. Actually it seems quite hard for me to draw this line. So Gentoo.

Just like Git, Gentoo is a big hope for me. In case of Git I knew I was hoping for something better since my first one-hour manual fix-subversion's-merge session, not speaking of Per—cough—force at work. In case of Gentoo I did not know, because Debian, Ubuntu and other distros are fairly usable and try keeping frustrations down. But then there's the moment you see something shiny that makes you quite unhappy with anything less. To me this applies on a small as well as on big scale. So I had a quick look at the flyer of Gentoo on Linux Tag 2008 that a real life friend of mine was involved. It read something like "if perfection is your game". I think that's the first time it hit me, because it made me see what I didn't see before: that Gentoo allows me to apply a higher degree of perfection where other distros don't. No, I'm not perfect, not at all. Still I strive for perfection and many times I catch myself noticing "shit, I have a hard time getting this done and all I do is polishing". Though at some places this allows me and others to fix that few extra bits, those details that matter, that 80:20 kills so often for everyone else. This perfectionism of course applies to my distribution: at USE flag level for example. When I install (i.e. compile) applications I choose the set of USE flags that are cut down to what I need. For media players this means a tons of codecs that are not installed. This is an obvious example that other distros solve through splitting packages sometimes. But it applies at many others places too: Do I want to have certain patches in or do I want it vanilla? Do I need Ruby support and debug info or not? I like to have that power given to me, given to me by default with a close-to-zero extra-barrier to get it. Sure: I could download Debian package sources and build my custom version from that. Is it easy? Is it fun? Not to me. So I like use flags.

For the same perfection reason compilation for just-my-very-platform feels great to me. I don't measure what I actually gain per application (though that would be interesting) but I feel great about not giving any speed away. It's similar to freedom: maybe I'll never need to copy that very music file around more than 4 times but I won't accept anything less than any time.

Another reason why I feel so at home with Gentoo is because everything I see was designed by obviously smart people. I'm used to stumble about "I'd have done that better and I'm no expert at that" -things all the time - not so with Gentoo. And this is where my personal analogy with Git works again (excluding Git's where- in-here-is-my-answer man pages). A few days ago I started my first ebuild. Gentoo doesn't have colormake yet and as I don't see what's happening in gray GCC soup that was a must-do for me. Compared to Debian the packaging documentation in Gentoo is much more to the point and much much shorter. What you get out is shorter too and to me much more lookable at. So while I had to actually work to that point where packaging could be fun with Debian, in Gentoo it was fun from the beginning (with an exception of discussing quotation with people that care about that much more than I do).

So to summarize all that next time I'm asked "why Gentoo?" my answer should be "because I feel at home with it". I don't mind if you keep using Debian. Debian is a great operating system; I still use it as my disc-encryption file server. Still, I don't feel at home there. I have seen my more : this more is Gentoo.