It is no great secret that Gentoo's official Portage tree does not include nearly as many cutting edge ebuilds as it used to.

People have diverse theories why this is so – from too few developers to even some bizare conspiracy theories.

Mine is pretty simple: overlays. And I will try to explain why I think so.

In the olden days Gentoo only had one Portage tree and its users would be happy to have a centralised tree that held all the "packages" irrelevant of their origin, licenses or other factors that would in other distributions (most notably Debian) lead to exclusion from the official tree and inclusion into one of the repositories.

In fact, not having to deal with repositories and having bleeding edge versions available used to be a one of the adventages of Gentoo.

Portage's slots, keywords, the ability to mask and unmask ebuilds are all perfect tools to mix the stable and testing/unstable branches into the system – so there is no reason for overlays to exist because of keeping the official tree stable. If it is quality control to keep non-perfect ebuilds out of the official tree, it is always possible to hardmask them (if the testing keyword is not enough).

Paludis is an even better example, since the user can also mask ebuilds according to their license – which is very close to what Debian does with their policy what can enter the official repository and what the others.

What all these overlays do is keep (even if for just some time) ebuilds from reaching the official tree – as they would have in the past. Also we should take into account that maintenance of dozens of overlays costs precious time that could otherwise be used for maintaining the official tree.

The bottom line is that I feel no reason why so many overlays are needed and in fact feel that they make my life more miserable then when there were none and I did not have to spend time searching for overlays on the internet to get an ebuild.

Related Posts