1 |
On Sun, 18 Jan 2015, Patrick Lauer wrote: |
2 |
|
3 |
> On Saturday 17 January 2015 14:00:34 William Hubbs wrote: |
4 |
>> On Sat, Jan 17, 2015 at 01:44:21PM +0100, Dirkjan Ochtman wrote: |
5 |
>>> On Sat, Jan 17, 2015 at 12:35 PM, Patrick Lauer <patrick@g.o> |
6 |
> wrote: |
7 |
>>>> * Stage3 archives are too fat |
8 |
>>>> |
9 |
>>>> See https://bugs.gentoo.org/show_bug.cgi?id=531632 |
10 |
>>>> We're now shipping three python versions and glib for extra fun! |
11 |
>>>> Fix: Motivate releng to stop being silly |
12 |
>>> |
13 |
>>> Why the heck do we ship both 3.3 and 3.4? I forget the exact situation |
14 |
>>> with 2.x and 3.x, but I don't think setting PYTHON_TARGETS to 2.7-only |
15 |
>>> is a great option if that remains the default after installation |
16 |
>>> (although it would be fine for just the initial stages). |
17 |
>> |
18 |
>> I'm going to be very blunt. I am sick of the finger being pointed |
19 |
>> only at releng for this. |
20 |
>> |
21 |
>> The issue is package dependencies. |
22 |
>> |
23 |
>> If even one package in the tree has a dumb dependency on python, e.g. |
24 |
>> dev-lang/python, it will pull in all stable versionf of python. |
25 |
> |
26 |
> Only if you absolutely insist that releng can never deviate from tree. |
27 |
|
28 |
What RelEng has insisted in is building what we have in the tree - which, |
29 |
curiously enough, is a good way to test the tree. |
30 |
Anyway, I've started working on a portdir config for the default stages, |
31 |
not because of this, but because of the caps issue (bug 531788). |
32 |
|
33 |
> Which is a silly idea, see bindist useflag, which is locally enabled for stage |
34 |
> building and then removed. Oh wait, it's not removed because we can't deviate |
35 |
> while deviating. So users regularly find ssl 'broken' ... |
36 |
|
37 |
Building stages with USE="bindist" isn't a question of being silly but of |
38 |
making sure we don't give anyone a reason to "sue" Gentoo. We don't want |
39 |
to force USE="bindist" in the released stages, but that means we add one |
40 |
more workaround to catalyst code or we provide a way to specify which use |
41 |
flags we want to use for building the stage and which we want to be kept |
42 |
in make.conf. |
43 |
|
44 |
> It took me about 2h of fiddling around to find a few spots where stage3 has |
45 |
> useless bloat: |
46 |
> - pkgconfig pulling in 30MB of glib |
47 |
> - python installing tests (that's 3x 25MB now ...) |
48 |
|
49 |
internal-glib is not something that should be used in the stages. |
50 |
|
51 |
> - having more than one python installed (which is not really absolutely |
52 |
> necessary, and could easily be reduced to one) |
53 |
|
54 |
If your system has 3 python versions installed because the tree deps make |
55 |
portage install 3 versions, you should expect that to happen in your |
56 |
stages. |
57 |
Since I'll have to work with portdir to address the caps issue above, I'll |
58 |
also take care of this, but if you want to blame someone about this, |
59 |
releng doesn't "maintain the tree". |
60 |
Also, by adding this to the releng repo, that means we're going to have |
61 |
more work as we'll have to track new python versions. |
62 |
|
63 |
> Out of 700MB on-disk I could prune about 150MB - about 20%, without affecting |
64 |
> functionality |
65 |
> |
66 |
> It's not about pointing a finger, it's about fixing issues when they are easy to |
67 |
> fix and not hiding behind a fake complexity argument. |
68 |
> (I would fix things, if I had access and/or certainty that patches provided |
69 |
> would be integrated ...) |
70 |
|
71 |
I don't recall ever having seen a patch from you to catalyst, so before |
72 |
you "suggest" we don't want to accept your patches, you may want to send |
73 |
one ;-) |
74 |
|
75 |
> Have fun, |
76 |
> |
77 |
> Patrick |
78 |
|
79 |
Have fun, |
80 |
Jorge |