1 |
On Sun, 2005-03-06 at 19:40 +0200, Dan Armak wrote: |
2 |
> It's a cool idea. What's missing in the proto-GLEP is an explanation of why |
3 |
> you can't do this with a normal ebuild (that doesn't install any files), and |
4 |
> need the new concept of metapackages. |
5 |
|
6 |
The idea is that a metapackage, unlike a normal ebuild, doesn't exist in |
7 |
the installed package db, and its deps are always inspected when it |
8 |
turns up in the depgraph. That means that you avoid the situation where |
9 |
you merge package A, which depends on virtual/x11, and then pulls in |
10 |
xorg-x11. Then, for whatever reason, you unmerge xorg, and virtual/x11 |
11 |
is still in the vdb, so the next app you merge that deps on it will |
12 |
break. That was explained in the -dev thread I linked; I probably should |
13 |
add an explanation into the GLEP. |
14 |
|
15 |
> There's also the question of portage not checking RDEPENDs when unmerging, so |
16 |
> you can unmerge a dep (and things will break) but you can't unmerge a package |
17 |
> providing a virtual (portage will catch that). But the correct solution here, |
18 |
> if we're going to modify portage, is to add generic RDEPEND checking support |
19 |
> to emerge unmerge... |
20 |
|
21 |
Allegedly the new dep resolver that's being worked on should handle |
22 |
that... not sure if it'll get into the next portage release though. But |
23 |
agreed, it is needed, and from what I've been given to understand should |
24 |
handle this situation properly without too much extra effort. |
25 |
|
26 |
> Also, the GLEP says: "On a side note, this system of metapackages would |
27 |
> provide an implementation of 'package sets' as proposed in GLEP 21 [2]_." |
28 |
> |
29 |
> I don't see how that would happen. A package set exists to install all of a |
30 |
> list of packages, while a virtual/metapackage exists to install one of a list |
31 |
> of (often mutually exclusive) packages. These are very different goals. How |
32 |
> would metapackages help with sets any more than ordinary ebuilds already do? |
33 |
|
34 |
Since the metapackage has some arbitrary DEPEND string that has to be |
35 |
met, there's no reason why this couldn't require all packages reckoned |
36 |
to be part of a set, rather than one of the packages reckoned to provide |
37 |
a virtual. |
38 |
|
39 |
-- |
40 |
gentoo-dev@g.o mailing list |