1 |
On Mon, 04 Mar 2013 23:21:36 +0100 |
2 |
Thomas Sachau <tommy@g.o> wrote: |
3 |
|
4 |
> Michał Górny schrieb: |
5 |
> > On Mon, 4 Mar 2013 11:02:40 +0100 |
6 |
> > Alexis Ballier <aballier@g.o> wrote: |
7 |
> > |
8 |
> >> you are called with ABI=sth argv[0] = your name |
9 |
> > |
10 |
> > I'm afraid that's the first potential point of failure. Relying |
11 |
> > on argv[0] is a poor idea and means that any application calling exec() |
12 |
> > with changed argv[0] on a wrapped binary will fail terribly. |
13 |
> |
14 |
> Nobody said, that one cannot create situations, where such a wrapper |
15 |
> does fail, the point is more an easy and general solution for wrapping |
16 |
> binaries without implementing different solutions for the same issue in |
17 |
> every ebuild. |
18 |
|
19 |
There's no such thing as 'easy and general solution'. You always |
20 |
sacrifice something. |
21 |
|
22 |
And in this case, you're creating a point of failure which is |
23 |
completely custom to Gentoo and actually quite hard to track. Just to |
24 |
support a specific package manager feature specific to Gentoo. |
25 |
|
26 |
> If you have a better, yet still easy and general solution not requiring |
27 |
> every ebuild to create something on its own, please write it instead of |
28 |
> just complaining how bad the wrapper solution actually is. |
29 |
|
30 |
The solution is called eclasses. |
31 |
|
32 |
> > Yep, I intended to just have the additional variant of glxinfo directly |
33 |
> > callable, with a name chosen specifically by the X11 team. Wrapper |
34 |
> > would be more confusing than beneficial here IMO. |
35 |
> |
36 |
> Ah, you actually want each ebuild to have its own custom hack instead of |
37 |
> one global solution usable everywhere? |
38 |
|
39 |
Yes. |
40 |
|
41 |
> >> To some extent that's what happened to python too :) As a python |
42 |
> >> maintainer, you could share your thoughts on the topic. python slotting |
43 |
> >> was intended to make switching between python versions easy but has |
44 |
> >> been needing wrappers for the python binary. |
45 |
> > |
46 |
> > I'm doing just that. Any kind of wrapping is an increasing mess. I'm |
47 |
> > still trying to find out good solutions for Python wrapping but there's |
48 |
> > no such thing. It's always about choosing one evil over the other. |
49 |
> |
50 |
> So you are wrapping python, have not yet found anything better and still |
51 |
> dont want to wrap abi-specific binaries, while you dont have a better |
52 |
> solution at hand? Saying no to everything is easy, providing something |
53 |
> better if you dont like a suggestion is the challenge. |
54 |
|
55 |
Yes, it is easy and mess-free. Using a cheap hack is mess-full, and is |
56 |
just asking for trouble which will eventually rise. |
57 |
|
58 |
-- |
59 |
Best regards, |
60 |
Michał Górny |