Having been an Arch Linux user for more than six years now, I'm doing something very old-school and un-trendy: I'm moving to Gentoo.

Interestingly, if you take a look at Google, this seems to be the exact opposite everyone else is doing these days, i.e. moving from Gentoo to Arch :)

One might ask why I'm doing so. Well, my reasons are the following:

  1. Just for fun (setting up something new)
  2. Ability to influence package dependencies (USE-Flags)
  3. A specific design-flaw (my personal oppinion!) of pacman

Guess I need to clarify at least the last point in this list ;)  I need to be careful to not start a rant against pacman - because in fact I really like it! The problem is that it has one design detail that makes it almost unusable for a specific use case, which unfortunately is common for me: something considered partial update.

Imagine you have set up your system as you like, with all packages up-to-date and everything configured fine. Then you leave the system alone for some time - e.g. because it is a notebook that you only need on business trips. On such a trip you realize that there is one tool missing you forgot in your initial setup. You install it via pacman, but trying to start it yields an error message saying that it cannot be run due to missing libraries.

The problem in this scenario is that pacman does not reflect that the newly installed tool has been built against a newer version of a library that is installed on your system. It only checks for the library itself to be present but doesn't know against wich version of the library the tool is linked against.

The official comment on this issue is that syncing pacman and then installing a new package without prior system upgrade is considered a partial update, and therefore not supported. You are supposed to fully synchronize your system with the current state - i.e. perform a full system upgrade, which means a significant download volume and not unlikely some handiwork to finish the upgrade (config updates, etc.). This can be very annoying if you are in a hurry, or somewhere without broadband access.

My first choice to overcome this limitation was Debian, as apt does support this type of use case. My problem with Debian was that I like bleeding-edge software, or at least something not far from it. I know of testing and unstable, but once broke my system with testing because of a dependency bug (that caused all kernel packages to be removed...) and didn't want to go down this road again.

So my choice fell on Gentoo, and I'm still comfortable with it after the first two weeks. It's not my first Gentoo phase so I knew my way around.