Some of Why I Don’t Recommend Gentoo

First off, I really like to work with Gentoo myself.  So, it’s not really that I have a problem that I don’t like Gentoo, but rather, that I have problems with the community, and somewhat with how Gentoo itself tends to work for most people (ie. it fundamentally can be quite frustrating).

The Community

Initially, I started using Gentoo, in part because of the community.  Generally when I wanted to get something answered, I could either find the answer, or have someone who would be willing to help me with it.

Part of that was that really I could find the answer without having to work through a lot of stuff that just didn’t make sense, or was written in such a way that figuring out all the steps was too difficult.

Now?  I can say quite definitively, that it’s not worth asking the community for an answer.  Too often the answer is, RTFM, and they think that the “material” is “fine” but in reality, it’s more the other kind of “f” material.

The Handbook, when printed is about 150 pages.  Which, of course, as itself, isn’t really a problem.  But, the thing is, they say, “It’s in the Handbook” or, “Nobody follows the handbook” and when you point out that there’s plenty of reasons that people aren’t following the handbook, they basically tell you, “go ahead and rewrite it”.

If, the community was actually helpful, and would say, “here, this is where you can find the information in the handbook,” rather than, “It’s in the handbook, go read it.” Mind you, if they actually did do that, then of course, they would start to understand that the documentation is not as good as they claim it to be.

Project Documentation

A big part of this specific issue, is that (like many projects) the documentation is actually poorly understood, by the people who are producing it.

Writing good documentation is actually a tricky, and requires understanding what the role of a given documentation is.

The 150 page Handbook, has explanations, how-tos, technical information, and opinions all in a single document.

This is a commonly produced document, but it’s not really that useful of a document.  The main (stated) goal of the Handbook, is to allow people to setup Gentoo, and then move on from there.

This should be written in a style like:

  1. Measure matcha into sifter
  2. Sift matcha into chawan
  3. Add small amount of water to matcha in the chawan
  4. Whisk the matcha and water together to form a smooth paste
  5. Add more water to the matcha paste
  6. Whisk to a frothy mixture
  7. Enjoy

And while that is getting there, I would probably say that is missing some stuff in various parts, which would allow it to be really a good, “how-to” for making a bowl of matcha.

For something like what the stated goal of the Handbook is, it should consist of sections like this (maybe up to about 20 steps for each section) with one or two short paragraphs between each one, and some headers to make different sections easy to read.

What it mostly looks like, is large blocks of exposition with long paragraphs, with a few different interspersed sections.

I will say, that reading the Handbook, is far more enjoyable as it’s currently written.  But something which is something that people end up reading, is not a, “how to” so much as a, “all about.”

The handbook, as it currently stands, is actually not serving really any genuine documentation function, because it ends up with confusing about 4 different functions, in a single document.

The thing is, the response to, “um, actually things are kind of not that helpful,” is usually, “yes they are, shut up.”

If you manage to get beyond that, you get to, “Just fix it yourself.”

Well, I have in a lot of case have been fixing it myself.  But because of the community, it doesn’t go to the community, but rather to my own space, which is publicly available.  Partially because the best I tend to manage is to document a given process, and when working with something like that, and you start to change the different parts like that, you better have a plan to handle the whole thing eventually, and welcome people to contribute to it.

By welcoming people to contribute, it means you don’t just say, “you are welcome to contribute,” but rather, “thank you for your feedback, and we’ll be looking into it.”

Technical Issues

These are not really problems with the technology itself, but ways that the technology tends to be difficult for many people to actually use.

A lot of this comes down to some stuff that I actually really like about this.

Gentoo doesn’t really (well it sort of does) have “releases” per se.  What it does have that comes close to being, “releases” like most other distributions is, “profiles,” and in a way this is rather similar to releases.

That said, I have 42 available profiles, on this machine which break into 4 or 5 different sets (depending on how you count).  So in some ways some of those are duplicates, triplicates, quadruplets.  These basically are a set of different, “rules” for your system, and that’s a good way to consider how they work.

The main Gentoo ones are 2 different sets which are called 17.0 and 17.1 (and other numbers previously), which get updated from time to time.

I have worked on some systems for long enough, that I’ve updated the profile at least once on most, and twice on some.  Updating from a profile which no longer exists, to a new one can be very tricky.  Part of why I like to keep to a relatively recent version, and since it usually is capable to do at incremental steps a lot easier than skipping them, then it’s worth doing from time to time.

This gets a bit into why most people don’t really want to use a system like Gentoo.

If I’m updating regularly (anything longer than about 10 days can be a problem) I don’t find that doing the updates is really that big of a deal.

But, most packages are installed from source (at least it usually is an option, and the default) so a package which can take 5 minutes to install on other binary based systems, can take an hour, maybe even longer on older hardware.

This actually is a bit of an advantage on that older hardware, as Gentoo actually (from experience) is able to support a wide range of hardware that other distributions are not able to.  At least not while sticking with the latest versions of them.  I have recently installed on a Panasonic Toughbook CF-47, and it runs reasonably well.  It’s certainly not a, “modern computer” but it’s a decent computer.

But, I have stuff that ends up running for days on that computer.  Because it just takes that long to run.  I don’t much mind, because it’s a low use machine, and I really wanted it as a, “distraction free writing/editing” computer.

So, a big part of the problem is that some things (because it compiles stuff) take a long time.

But, also there is another problem, that because of a lack of “releases” it can run into a problem that certain things just don’t work well…

Sometimes when you are doing updates, you find that they just don’t work.  At least not initially.

Occasionally, I have found that I have to uninstall software, in order to install other software because of conflicts.

I actually, enjoy dealing with these sorts of problems, most of the time.  They are the kinds of problems that are fun to work on for us.  But, they aren’t for most people.

So, the combination of technical issues, with the community issues, I tend to not feel that I would recommend it, unless I’m also willing to work very closely with a person to keep things the way they want them.

And sometimes I know that no matter what, I’m going to be working closely with a person, if I want them to have a reasonably up to date system.  I’d rather they have a, “not as updated as I would like” Gentoo system, than a Windows, or macOS system that is just as much out of date.

This entry was posted in Uncategorized. Bookmark the permalink. Both comments and trackbacks are currently closed.