1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA1 |
3 |
|
4 |
Hi, |
5 |
|
6 |
I'm Dan Armak, the kde-base maintainer. This is a topic I could (and have) |
7 |
write a lot about, I'll try to give you a summary: |
8 |
|
9 |
Until the kde 3.0 release (March), I maintained for several months a set of |
10 |
KDE cvs ebuilds outside portage (since cvs ebuilds haven't been sanctioned as |
11 |
yet). You can find the last release on |
12 |
http://www.gentoo.org/~danarmak/kde3-pre.html. |
13 |
|
14 |
I used eclasses to implement automatic cvs/cvsup checkout/update/etc. and |
15 |
seamless compilation and installation. If you don't know about eclasses see |
16 |
http://www.gentoo.org/doc/eclass-howto.html. You can see kde-cvs.eclass, |
17 |
kde-cvsup.eclass and kde-source.eclas in the archive on my site referenced |
18 |
above, they complement the kde-* eclasses present in portage. |
19 |
|
20 |
However I didn't solve the versioning issue, I named the ebuilds version 3.0 |
21 |
since that was the version towards which the kde cvs was working. But |
22 |
obviously this wouldn't be any good on a larger scale. |
23 |
|
24 |
Some time ago I wrote a proposition on introducing cvs ebuilds into portage, |
25 |
with a versioning scheme. The discussion was on the developer-only |
26 |
gentoo-core list, so you can't browse the archives. I quote: |
27 |
- --- |
28 |
"Bevin and I discussed CVS ebuilds in #gentoodev and came up with the |
29 |
following |
30 |
improved proposal: |
31 |
|
32 |
An ebuild can have a version, a cvs name element, or both. The order of |
33 |
version precedence is as follows: |
34 |
|
35 |
foo-cvs > foo-2.0-cvs > foo-2.0 > foo-1.0-cvs > foo-1.0 |
36 |
|
37 |
A cvs ebuild without a version gets its source from cvs HEAD, so it's always |
38 |
newest. When it is emerged, however, it is automatically given (i.e. by |
39 |
emerge) the version number of the latest non-cvs ebuild in existence. If only |
40 |
the cvs ebuild exists, it gets version 0. |
41 |
|
42 |
That way, when a new non-cvs ebuild is added with a greater version, it serves |
43 |
as an update. The DATE variable is no longer needed. |
44 |
|
45 |
A cvs ebuild with a version gets code from a specific tag or branch on cvs. |
46 |
Usually the branch of a version only gets bugfixes, not new features, so it's |
47 |
extra-stable. |
48 |
|
49 |
Because a cvs ebuild is always newer than a itself merged a few minutes ago, |
50 |
we won't let them into the world update. Instead we can add a new emere |
51 |
- --update cvs that will update all cvs ebuilds, or emerge --cvs which will |
52 |
allow cvs ebuilds to be merged (i.e. when merging new packages)." |
53 |
|
54 |
- --- |
55 |
|
56 |
|
57 |
And some 10 days ago Daniel Robbins said: |
58 |
"Dan Armak and others have already worked out a plan for adding this to |
59 |
Portage; you should be able to find it in the gentoo-core archives. It |
60 |
will be added eventually, but I'm going to be focusing on more |
61 |
fundamental things for a while (robustness, error handling, streamlining |
62 |
the code.)" |
63 |
|
64 |
That's all that known atm. |
65 |
|
66 |
On Tuesday 28 May 2002 18:33, marco mascherpa (aka mush) wrote: |
67 |
> hi, |
68 |
> it's the first time i write to this ML, altough i've been subscribed for a |
69 |
> while. i'm an italian guy, i'm studying information engineering in milan |
70 |
> and i'm a happy linux user. :) at the moment i'm enjoying a slackware, but |
71 |
> some months ago i found this gentoo and i think it's really awesome! it |
72 |
> merges the goods of both linux and BSD which i appreciate too! so i thought |
73 |
> this is a great project and i'm planning to join you developers as soon as |
74 |
> my skills will permit it and i will know enough of gentoo to avoid those |
75 |
> RTFM questions. :) |
76 |
> |
77 |
> now, let's go to the meat: last night i happened to install the CVS version |
78 |
> of gaim (the open source AIM clone) and suddenly i wondered how could |
79 |
> gentoo portage system manage the install/upgrade process of a CVS snapshot |
80 |
> of an application. it could seem a weird situation, why would we need to |
81 |
> install the CVS snapshot when we have the official releases? as you know |
82 |
> better than me sometimes some features we need are available only in the |
83 |
> CVS version: for example licq CVS version is perfectly compatible with the |
84 |
> latest ICQ protocol, but the official release isn't. but there are much |
85 |
> more interesting cases than this one, i guess :) |
86 |
> |
87 |
> AFAIK the portege system cannot manage the CVS version of an app and |
88 |
> decide, for instance whether the version we are considering is older or |
89 |
> newer than the installed one: i can't upgrade a program with his CVS |
90 |
> version. |
91 |
> |
92 |
> i found two possible solutions to this problem: |
93 |
> - we could make a separate ebuild for every pregram: let's say we have the |
94 |
> ebuild of program foo, version 1.2.3: we have a foo-1.2.3-r1.ebuild for the |
95 |
> official release and a fooCVS-20020528-r1.ebuild for the CVS version. this |
96 |
> would lead to some coexistence inssues but it would be very easy to do and |
97 |
> wouldn't require any changes in the portage system. |
98 |
> - otherwise we could include in the ebuild a DATE variable wich will |
99 |
> contain the release date for official releases and the date of the CVS |
100 |
> snapshot for CVS versions. obviously this would mean some changes in the |
101 |
> way upgrade and dependencies are managed, but i think it wouldn't be too |
102 |
> hard to implement. |
103 |
> |
104 |
> i hope my thoughts will be useful in some way and again i congratulate you |
105 |
> for the optimum job you have made so far. |
106 |
> best regards |
107 |
> marco |
108 |
|
109 |
- -- |
110 |
Dan Armak |
111 |
Gentoo Linux developer (KDE) |
112 |
Matan, Israel |
113 |
-----BEGIN PGP SIGNATURE----- |
114 |
Version: GnuPG v1.0.7 (GNU/Linux) |
115 |
|
116 |
iD8DBQE889ZGUI2RQ41fiVERAj8HAJ9mwHzHvh/FWa2vMCgGbjPoSy4LTgCfS5vz |
117 |
7yOvC0nt13IU1JCZVn/O2Ec= |
118 |
=6upx |
119 |
-----END PGP SIGNATURE----- |