Gentoo Archives: gentoo-dev

From: Brian Harring <ferringb@×××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Required Features for $package_manager to Aid... Development!
Date: Wed, 06 Sep 2006 11:10:11
Message-Id: 20060906110529.GB27046@seldon
In Reply to: [gentoo-dev] [RFC] Required Features for $package_manager to Aid... Development! by Elfyn McBratney
1 On Wed, Sep 06, 2006 at 10:29:11AM +0000, Elfyn McBratney wrote:
2 > Hola,
3 >
4 > I've been inspired by the local/global USE flag threads recently
5 > posted by Doug (Cardoe), and it got me to thinking... I've recently
6 > joined the pkgcore development effort, and was asked by Brian
7 > (ferringb) what I'd like to hack on/what my niggles with portage are.
8 > My personal one is why updates/ and binpkg mangling takes so long in
9 > portage-$current. But I'd like to know, what are everyone elses?
10 >
11 > I know that this topic have been rehashed since the dawn of
12 > time^Wgentoo-dev, but these things get lost, opinions change... and
13 > since last year, new and viable alternate package managers have
14 > cropped up. So, basically I'd like to ask all on this list: - what
15 > package manager features would make *your* life easier?
16 >
17 > Personally, I'd like to see the following groups of changes happen one
18 > way or another:
19 >
20 > * Improve QA with/by:
21 > - Detecting conflicting USE flags;
22
23 That one is on the map for trying to address via eapi=1; intention was
24 to resurrect the approach of using a seperate metadata key, and
25 extending depset support to include xor so that representing the
26 _valid_ use conditional states is possible.
27
28 Simple example, if you need mysql or postgres, but not both;
29 VALID_USE_STATES="^ ( mysql postgres )"
30
31 if it's not required to have them enabled, but still need one or the
32 other if enabled
33 VALID_USE_STATES="( || ( mysql postgres ) ^ ( mysql postgres ) )"
34
35 Would need to extend depset in this case to support negation of blocks
36 also (nand/nor); downside, it gets verbose.
37
38 Upshot, it uses extisting syntax folks are familar with; the verbosity
39 of it would also go down if/when use groups were implemented thus
40 replacing USE_EXPAND (something that needs resurrecting and is another
41 bit on the map, although not guranteed to be targeted).
42
43 ~harring