Gentoo Archives: gentoo-portage-dev

From: Kapil Thangavelu <ender@××××××××××××.net>
To: gentoo-portage-dev@g.o
Subject: Re: [gentoo-portage-dev] portage-ng concurse entry Was: Updated Portage project page
Date: Sun, 07 Dec 2003 03:10:56
Message-Id: BBF82EA4.9B90%ender@objectrealms.net
In Reply to: Re: [gentoo-portage-dev] portage-ng concurse entry Was: Updated Portage project page by Daniel Robbins
1 are we at the stage yet, where some structured metadata representation
2 outside of the ebuild will be used ?
3
4 incidentally the mailing list manager isn't honoring requests for
5 archives/indexes... so, apologies in advance if this has already been
6 discussed/decided.
7
8 -k
9
10 On 12/6/03 11:40 PM, "Daniel Robbins" <drobbins@g.o> wrote:
11
12 > On Sat, 2003-12-06 at 19:39, George Shapovalov wrote:
13 >> Hm, isn't it a bit too late to change ebuild format, with us sitting on 7000+
14 >> ebuilds? The only reasonable way to do so is to make it structurally
15 >> compatible and create a converter tool.
16 >
17 > It would be very difficult to get good results from a converter tool,
18 > due to the many complexities of ebuild parsing.
19 >
20 >> But then I don't really see the problem with present format.
21 >
22 > You just explained how much of a chore it would be to convert from
23 > ebuild to something else. Doesn't this point to a weakness in the syntax
24 > of ebuilds themselves? I mean, if they were more formally defined, they
25 > could be converted to XML or anything else without much effort.
26 >
27 >> bash involvment
28 >> is really necessary only during the pkg_* and src_* steps, when a lot of
29 >> other stuff is going to happen anyway, so this is hardly a bottleneck.
30 >
31 > This isn't an informed comment :) Portage depends on bash for extraction
32 > of metadata as well. Extraction of metadata is *the* Portage bottleneck.
33 >
34 >> To get
35 >> definitions of various vars and dependency information out is trivial and can
36 >> be done in anything. That bash is involved in this step at present is
37 >> unfortunate, but there were reasons for it and it definitely may be undone
38 >> even for the present portage.
39 >
40 > If it were trivial we would have done it already. The only way to "undo"
41 > the dependence on bash is to make seemingly arbitrary rules of what is
42 > legal and not legal to type inside ebuilds. This leads to a lot of
43 > strange rules (such as rules about where you can and can't use variable
44 > expansion, and where you can and can't use bash conditionals) and makes
45 > ebuild-writing a tricky process. We already have some of these rules in
46 > effect, and it makes ebuild-writing a bit trickier than it should be.
47 >
48 > We don't want ebuild-writing to be tricky, so the solution is to
49 > architect a way to represent ebuild data in a way that is more useful to
50 > portage-ng and more natural for ebuild-ng writers.
51 >
52 > Regards,
53 >
54 > Daniel
55 >
56
57
58 --
59 gentoo-portage-dev@g.o mailing list

Replies