On Fri, Jun 10, 2016 at 3:45 AM, Alexander Berntsen <berna...@gentoo.org> wrote: > > On 09/06/16 22:15, Michał Górny wrote: >> Didn't you just contradict yourself? First you tell that everyone >> should have their own public repo... then you tell that we should >> merge stuff from those repos. So are you targeting split-repo >> model, or central repo model, or...? > Everyone should have their own public repository, yes. I want people > to be able to grow their own Gentoo as they please. But I'm not > suggesting we up and away with our developers and expertise. instead, > we should maintain core/base packages, and curated and reviewed > small-ish repositories that we feature and recommend using. As such, > I'm not suggesting anything that major here. Just encouraging users to > put all their stuff public and get more involved with writing and > reviewing ebuilds, and, further on, us becoming a bit more modular.
So, I was chatting with an Exherbo dev. Their model isn't quite what your earlier emails seemed to suggest (at least as I read it). The impression that I got from your earlier emails is that you're advocating a highly decentralized bottom-up system, where everybody just publishes their packages and people borrow from each other's work, and the behavior of the overall distro is fairly emergent. You suggested at one point that the need for what we call developers could almost go away. Now you're talking about having centralized core/base packages, which obviously necessitates developers. Maybe your concept is that the core/base packages are a very small subset of what we have today. I still think you're underestimating the need for centralization. What you call a "core/base" package is probably going to end up being anything listed in a dependency. That is a LOT of packages, actually - we're not just talking about libc and zlib. You can't have those packages just randomly disappearing or having inconsistent versioning. As I understand it the Exherbo way is to have many different repositories, but just about anything used as a dependency and most important packages are in officially-blessed repositories. All packages in the blessed repositories go through code review in gerrit. So, maybe every maintainer has their own private git repo, but they don't publish effective changes in their own repos without going through central code review. That is actually MORE centralized in a sense than Gentoo's overlay system. The overall distro isn't emergent from a lot of random devs doing their own thing. There are some pros and cons to that sort of approach that I can think of offhand. Security is an obvious pro - people only have access to modify the packages they actually maintain. It probably also means that you can more readily make repositories official since their ability to do dumb stuff is limited. However, there are cons with regard to collaboration. If somebody needs to make a distro-wide change they would need to get all the repo owners to apply the changes to their own repos - they can't just have at the main tree with a script (not entirely a bad thing, I'll admit). Co-maintainership is also a potential challenge, since you now need repos that multiple people can access, and doing that on an individual package basis could get messy (it would work well for defined teams). Don't get me wrong - such a model has its advantages and we should talk about them. Just don't think that it magically gets rid of the need for central coordination. The NixOS approach has the potential to be more organic, but I'd think that it would tend to lead to the zlib problem I brought up. I'll post a separate reply to that to clarify the issue. -- Rich