1 |
On Thu, Sep 07, 2006 at 07:11:01PM +0200, Simon Stelling wrote: |
2 |
> Brian Harring wrote: |
3 |
> > Make this change, and it means that all overlays that can function as |
4 |
> > standalone, must bundle the eapi helpers themselves. |
5 |
> |
6 |
> Standalone-repos will have that |
7 |
> problem, but there is none yet to my knowledge. Sure, the problem |
8 |
> persists for future repos, but it's not so much of a deal to copy an |
9 |
> eclass once. |
10 |
|
11 |
Err... that's rather whacky. |
12 |
|
13 |
You're suggesting that a fix in an eapi class must be copied into |
14 |
*every* standalone repo; lets pretend for a moment that glep19 |
15 |
actually got somewhere, and subtree generation is possible. |
16 |
|
17 |
We'll pretend that a 1k admins use it to filter down to |
18 |
lamp/mailserver/whatever, point is, they generated their own stand |
19 |
alone. |
20 |
|
21 |
See where the "we'll just copy it around" starts to break down and go |
22 |
mildly apeshit? |
23 |
|
24 |
> Also, as it stands today, portage IS connected to gentoo-x86 through |
25 |
> exactly these helpers. |
26 |
|
27 |
Not really. |
28 |
|
29 |
Yes, portage knows the names of a few pkgs, but those pkgs are defined |
30 |
in the tree; in that respect, it's actually semi-sanely designed. |
31 |
|
32 |
Point there is that portage can be ran against a foreign tree without |
33 |
needing gentoo-x86; frankly, claiming otherwise is a bit daft and |
34 |
requires real world examples of where it breaks down. |
35 |
|
36 |
|
37 |
> Upon the needs of the portage tree the functions |
38 |
> in portage are changed, and this is simply not correct. |
39 |
|
40 |
This assertion doesn't make any sense; clarify please. |
41 |
|
42 |
|
43 |
> > This is ignoring the potential fun of an overlay that redefines an |
44 |
> > eapi locked function. |
45 |
> |
46 |
> eclasses in overlays that also exist in the tree are fun anyway. If |
47 |
> people are messing with eutils, we tell them that it is entirely their |
48 |
> responsibility if something breaks. Same goes for install-helpers.eclass. |
49 |
> That being said, this problem already exists today: A custom eclass |
50 |
> could simply define a function 'dosbin' and ebuild.sh would use that |
51 |
> one. While it's a possible cause for breakage, it's not an argument |
52 |
> against the move. |
53 |
|
54 |
There's a real difference however for the dosbin example; the eclass |
55 |
can wrap the functionality, not flat out replacing it. If it's a |
56 |
func, you're boned trying to get at the original, non-wrapped dosbin. |
57 |
|
58 |
Move it into the tree, and you enable people to accidentally cause |
59 |
mayhem on a repository wide scale via tinkering with bundled bits of |
60 |
the eapi format; folks can do it now, but this makes it *far* easier. |
61 |
|
62 |
> > A) requirement of trying to keep helper functionality exactly in sync |
63 |
> > per tree, |
64 |
> |
65 |
> If the helpers were a part of the EAPI those trees would have to verify |
66 |
> that the EAPI portage provides matches their needs. |
67 |
|
68 |
The assertion there was that you would be stuck copying eclasses |
69 |
across all repos that exist; thus not addressing that assertion |
70 |
(should have been clearer, pardon). |
71 |
|
72 |
Thing I think you're missing here is that the ebuild format is not |
73 |
bound to gentoo-x86, nor is portage; thus trying to move intrinsic |
74 |
bits of the format into gentoo-x86 goes pretty hardcore against the |
75 |
goal of ever trying to sanely support N standalone repos due to the |
76 |
fact each repo now can now carry it's own potential offshoot of the |
77 |
eapi spec. |
78 |
~harring |