Gentoo Archives: gentoo-dev

From: Kent Fredric <kentfredric@×××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Is || ( Atom... ) broken?
Date: Mon, 07 Jul 2014 13:07:28
Message-Id: CAATnKFDTkZPgzFH78pSB6v5um4XKeiPqjQssnVzT9wUNOvJCzA@mail.gmail.com
In Reply to: Re: [gentoo-dev] Is || ( Atom... ) broken? by James Potts
1 On 8 July 2014 00:45, James Potts <arek75@×××××.com> wrote:
2
3 >
4 > In this case, it would be nice if Portage would see if one package of
5 > the set could be resolved without blocks or required config changes
6 > (i.e. if one package can be installed *now* choose it over
7 > earlier-listed not-installable packages). The problem with this is
8 > that it would take longer to resolve || () deps if the first one isn't
9 > installable. Not only that, but the workaround is easy: Either
10 > install the package you want first (upower-pm-utils, for example), or
11 > at the same time as your "target" package, so I also don't see this as
12 > high-priority. I also don't see this as something needing changed in
13 > PMS, as other PMs have different ways of handling the issue.
14 >
15 > --James
16 >
17 >
18 I sometimes wonder if it would be easier in some way if we just employed
19 more useflags to make the alternation less magical.
20
21 And then perhaps fall back to the existing system of automagicking it only
22 if no relevant useflags were used.
23
24 Just there, I don't recall there being an easy way to say "do X only if !Y
25 !Z !A"
26
27 REQUIRED_USE="x? ( !y !z ) y? ( !z )"
28 DEPEND="
29 x? ( a )
30 y? ( b )
31 z? ( c )
32 !x? ( !y? ( !z? ( || ( a b c ) )))
33 "
34
35 As it stands its useful, ... until portage takes the wrong path, and then
36 you have to fix the problem manually by convincing it which path to take by
37 lining up the dependencies yourself, instead of just declaring "look, the
38 path you should be doing is this one, forget that other stuff" and let
39 portage handle the rest.
40
41 Though this is Probably crazy talk.
42
43 --
44 Kent
45
46 *KENTNL* - https://metacpan.org/author/KENTNL