Gentoo Archives: gentoo-portage-dev

From: Brian Dolbec <brian.dolbec@×××××.com>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Dependency calculation turning on USE flags?
Date: Sat, 20 Aug 2011 23:33:06
Message-Id: 1313883141.5375.25.camel@big_daddy.dol-sen.ca
In Reply to: Re: [gentoo-portage-dev] Dependency calculation turning on USE flags? by Kent Fredric
1 On Sun, 2011-08-21 at 10:22 +1200, Kent Fredric wrote:
2 >
3 > On 21 August 2011 08:10, Matt Turner <mattst88@g.o> wrote:
4 >
5 > See https://bugs.gentoo.org/372513
6 >
7 > ^ tldr version for everyone else.
8 >
9 > This is due to the || condition in virtual/fortran
10 >
11 > || ( sys-devel/gcc[fortran,openmp?]
12 > sys-devel/gcc-apple[fortran,openmp?] dev-lang/ifc dev-lang/ekopath-bin
13 > )
14 >
15 > Where gcc[fortran] takes precedence over ifc.
16 >
17 >
18 >
19 > I wonder if there's some way we can manage this kind of
20 > situation?
21 > Perhaps portage could print alternative dependencies for
22 > virtuals,
23 > similar to the very helpful recent "The following keyword
24 > changes are
25 > necessary to proceed:" addition.
26 >
27 >
28 > This usecases specifics aside, I'd welcome some sort of way to show
29 > that an "or" condition is occurring somewhere in the tree, but it'd
30 > have to be opt-in, instead of opt-out, as the potential for being very
31 > noisy is great ( you'll get a lot of noise if you hit virtual/perl-*
32 > for instance ).
33 >
34 > And likewise, I'd love to have "some way" to produce some sort of
35 > graph for alternative merge trees that may work if you toggle some
36 > variable, but the amount of complexity to do this I'd imagine is quite
37 > large, and could easily be computationally expensive.
38 >
39 ...
40
41 > Alternatively, you could let the user dictate what type of
42 > permutations to display/compute, ie:
43 >
44 > use-flag based permutations, keyword based permutations, mask-based
45 > permutations, ||() conditional OR based permutations,
46 > package-version/slot permutations etc.
47 >
48 > For "package version/slot" permutations, it would display every
49 > variation on package/slot ( ie: slots/versions that are not the
50 > "current" version ) that were installable, or installable with some
51 > permutation ( if the depth of permutation is large enough ), so that a
52 > user could see a path of installation they wanted and twist user masks
53 > to make it happen.
54 >
55 > Of course, this is all looking like harder and harder stuff to do
56 > ( programming is the gateway-drug for feature creep ) , but it would
57 > still be something nice to have on a theoretical magic computer that
58 > can do all computations in zero time.
59 >
60 > ¢¢
61 > --
62 > Kent
63 >
64
65
66 Well, for something now, you can emerge porthole and look at the
67 Dependency view. It will display all options and show the recommended
68 versions of the dep package (still needs some small tweaks to handle
69 slots correctly). It is expandable (depth wise) until all deps are
70 satisfied. The deps are also dbl-click able to pop up the dep in
71 another window so you can view/change it's settings, merge, unmerge,
72 etc..
73
74 And no it would not be suitable for portage, it is a guis based treeview
75 and for human use only ;)
76
77 But it can show you the alternatives for such cases. From there you can
78 decide how you want to set things for the merges.
79 --
80 Brian Dolbec <brian.dolbec@×××××.com>

Attachments

File name MIME type
signature.asc application/pgp-signature