Why I don’t want too many overlays

So, I’m a daredevil, and I’ll risk to publish my disagreement with Seemant in my blog 😉 Now one point is that I’m not sure who should be to fire me, but we’ll see 😉

Seemant proposed splitting Gentoo in different official and unofficial overlays, so that every package set is in a different tree. Sorry Seemant, but I don’t agree with this proposal.

The first simple reason is that there are too many interdependencies that might migrate over time. For instance there are a lot of packages that were added as dependencies for GNOME that now are used by KDE, too (DBus and HAL for simple instances). Where should they go?

I can agree with a Ruby overlay for Ruby extensions that are not used by any other package int he tree. I would agree for a media overlay with rarely used plugins, or stuff like XMMS that cannot be supported entirely in the tree. But I cannot find a Debian-like approach feasible.

Another reason is that it’s easy to lose the coordination between herds this way: the maintainer of a library might change its behaviour without knowing that another package relies on that, and won’t check it against it because the overlay was not enabled in his configuration, and no data about that was available.

Then there are problems like avahi: it’s a generic package, should probably go to the “core” repository, but it requires qt3 if you build with Qt3 bindings support, that would be somewhere else. Where should it go?

Not to count the possible problems with stubborn maintainers that then will just say “well, the package is not in this overlay, I won’t change it, if you want put your own copy”. We know this is going to happen.

Then there’ the eternal problem of misaligned versions. If people don’t update all the overlays at once, you might end up with ebuilds that does not work with other ebuilds in another overlay. And if eclasses are centralised, the problem is even worse.

I get enough problems with users using unofficial overlays and forgetting about them, submitting bugs about packages with patches that are broken by design. I’d rather not take bugs from users that mess up the order of overlays, or when the same ebuild is in different overlays and with different behaviours.

So, I’m for remaining on a single big repository. —

Personal note now: I’ve finally decided myself on the new mobile provider, and now my personal phone number is provided by 3. As I’m 2KM over the border of the UMTS cell, my new phone tried connection to the 3G network every now and then, with my old provider it almost always failed, with 3 I got it on 25 signal, but it’s too weak to actually be stable here, but at least I can move to the TIM national roaming and have a stable signal here.