On Thu, Jul 3, 2014 at 7:09 PM, Tom Wijsman <tom...@gentoo.org> wrote:
> Did the Funtoo devs tell you that they don't run repoman because of the
> explosive set of possible combinations that flavors & mix-ins introduce?
>
> Having it run over them should be easy; but having it run within a
> reasonable time when scaling up is going to be quite painful, ...

I don't think we need to check all the combinations.

To keep things manageable I think we'd want to define some structure
around the profiles and what different kinds of profiles should and
shouldn't do.  If a profile just pulls in some packages and sets some
application-oriented USE flags we shouldn't really need to worry about
conflicts - if there are any users will either learn not to run them
in combination or at least they won't end up with a completely cripped
system if some non-core applications have issues.    Messing with ABIs
or system-wide configuration settings should be reserved for specific
types of profiles which wouldn't be run in combinations unless
carefully controlled.  We should definitely avoid the mess of
inheritance that leads to settings being toggled back and forth.

Even if we still end up being stuck with a kernel/arch/subarch
hierarchy we'll at least be able to ditch layering on things like
kde/gnome further down and open the door to having more variety in our
profiles at that level.  Something like x32 coming along is fairly
rare, even if it is really interesting (and this stuff is one of
Gentoo's strong points, actually).  There is probably a lot more
interest in having more application-level mix-ins in the main tree, or
especially in overlays.  The reason we avoid them is that today they'd
lead to 300 more profiles on top of what is already a big mess.  If
that part of the tree gets flattened there is no reason somebody could
have a minimal profile that doesn't stick openssh in @system, or a
bunch of server profiles for various use cases, or some profiles for
clusters, config-managed boxes, etc.

So, if we come up with a decent strategy, deciding what repoman does
and doesn't have to worry about would be part of it.  We obviously
can't check all the combos, but that doesn't mean that we can't make
sure that linux/x86/foo doesn't break.

Rich

Reply via email to