Gentoo Archives: gentoo-dev

From: Dan Armak <danarmak@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] cvs.eclass: build while being offline
Date: Wed, 10 Mar 2004 17:18:02
Message-Id: 200403101919.40173.danarmak@gentoo.org
In Reply to: Re: [gentoo-dev] cvs.eclass: build while being offline by Thomas de Grenier de Latour
1 On Wednesday 10 March 2004 02:54, Thomas de Grenier de Latour wrote:
2 > On Tue, 09 Mar 2004 12:36:17 -0800
3 >
4 > Jason Rhinelander <jason@××××××××××××××××.com> wrote:
5 > > How is that broken behaviour? If a non-cvs ebuild can't download its
6 > > sources, it fatals as well.
7 >
8 > The difference is that with usual ebuilds, you can "emerge -f" from your
9 > laptop when it's connected for instance at your work, or download
10 > source archives from a friend's computer and use a removable device,
11 > etc. There are a lot of such workaround that make _possible_ to use
12 > ebuilds for people who don't have internet at home, but none of the
13 > usual and simple ones apply to cvs ebuilds because they fetch at
14 > src_unpack time. Not really a broken behavior tho, but may be annoying
15 > for some people. Also, the fact that you have to cvs update when you do
16 > a revdep-rebuild despite you've not deleted anything from your distfiles
17 > is a unexpected behavior. Maybe the eclass could take a CVS_NO_UPDATE
18 > environnement variable into account that would force the ebuild to use
19 > the repository in its current state instead of updating? That would
20 > easily solve the above issues.
21
22 There's already such a setting: ECVS_SERVER="offline" forces the eclass to use
23 an existing checkout dir. You can use ebuild foo.ebuild unpack, or just run
24 cvs checkout/update manually, to get the sources beforehand. A lot less
25 comfortable than emerge -f, but nothing can be done on the eclass side since
26 fetch isn't overloadable anymore :-(
27
28 What the orig poster wants is a fallback to this behaviour when offline
29 regardless of ECVS_SERVER settings.
30
31 An interesting general solution, which also allows for CVS mirrors (possibly
32 useful for eg KDE), is to make ECVS_SERVER multi-value. The eclass would try
33 to fetch from each location until the cvs command succeeded. "offline" could
34 then be specified as a last value for fallback.
35
36 That's just an idea off the top of my head, not thought through, so there's
37 probably some reason it isn't good. Opinions?
38
39 --
40 Dan Armak
41 Gentoo Linux developer (KDE)
42 Matan, Israel
43 Public GPG key: http://dev.gentoo.org/~danarmak/danarmak-gpg-public.key
44 Fingerprint: DD70 DBF9 E3D4 6CB9 2FDD 0069 508D 9143 8D5F 8951

Replies

Subject Author
Re: [gentoo-dev] cvs.eclass: build while being offline Thomas de Grenier de Latour <degrenier@×××××××××××.fr>