Gentoo Archives: gentoo-dev

From: Pieter Van den Abeele <pvdabeel@g.o>
To: Alvaro Figueroa Cabezas <fede2@××××××××××××××××××.cr>
Cc: gentoo-dev@g.o
Subject: [gentoo-dev] Re: The release of 1.4 and its impact on our mirrors
Date: Thu, 24 Jul 2003 00:01:01
Message-Id: 20030724001108.GA1296@gentoo.org
In Reply to: Re: [gentoo-dev] The release of 1.4 and its impact on our mirrors by fede2@fuerzag.ulatina.ac.cr (Alvaro Figueroa Cabezas)
1 On 23/07/03 15:28 +0600, Alvaro Figueroa Cabezas wrote:
2 > On Jul 23 17:01, Kurt Lieber wrote:
3 > > On Wed, Jul 23, 2003 at 02:40:39PM +0600 or thereabouts, Alvaro Figueroa Cabezas wrote:
4 > > > Using jigdo instead of distributing the ISOs.
5 > >
6 > > I like the idea of jigdo and think it's a great idea for saving bandwidth,
7 > > but I don't necessarily see how this will save disk space, which is our
8 > > primary issue right now.
9 >
10 > I must have this wrong. I tought that there where GRP tar files on the
11 > repository and inside the ISO images.
12 >
13 > The stage3 tar file is the stage2 plus a bit more packages, right? Well,
14 > then this could be manage with jigdo as well. Lets remember that jigdo
15 > isn't only for ISO images.
16
17 The GRP cds can be pre-ordered from our store; they allow one to set up
18 a complete, optimized gentoo linux *very fast* on a system that shouldn't
19 even be connected to the net. These 2 disc GRP sets for each cpu (right now
20 x86 and ppc, no word yet from sparc or the others) contain (in casu ppc) some
21 distfiles, prebuild packages for most commonly used stuff and stages.
22
23 A grp cd is a small livecd with some prebuild packages
24
25 We know that:
26
27 livecd = bootloader + kernel with uncompressor module + initrd + compressed(live-env)
28 live-env = stage3 + extra packages
29 stage3 = stage2 + extra packages
30 stage2 = stage1 + bootstrap
31
32 so we could give you a small script (emerge livecd-ng) that given a 10M
33 stage1 builds a complete livecd or a GRP cd etc, but that script has a 'I need a net
34 connection to download stuff' and a 'I need a week compile time, unless you
35 got 20 machines lying around doing nothing' dependency.
36
37 I think jigdo has the same problem; it has a 'I need a network' dependency.
38 It might not have a 'I need cpu time' dependency, but we need to make the
39 prebuild packages available (or have jigdo compile from source). With debian
40 I can understand those packages are available as .deb, but with gentoo
41 ebuilds have to be compiled (which is what makes imho gentoo so easy to port
42 to other platforms/architectures).
43
44 I cannot suggest a direct solution to this problem. p2p is the first thing
45 that comes to mind, but we'll have to look into that first to check if that
46 solution is applicable to our problem. (safety/security is an important issue
47 here).
48
49 A solution that I think might be worth while investigating is 'cloning'
50 (The idea comes from the prototype-based (instead of OO) programming
51 languages, such as Sun SELF):
52
53 --
54 Instead of releasing stages, and several types of livecds on every release,
55 we could make and release only one livecd for each architecture gentoo linux runs
56 on. The purpose of our livecds is to give people an idea what gentoo
57 looks/feels like when it is installed. So, basically the live environment
58 on the livecd == (should be) the same environment as it would be after installing
59 gentoo to your hard drive without manually modifying it. The only difference being that the live
60 environment on the cd is read-only, while those on your hard drive isn't of
61 course. Since nothing has been manually modified, one can call the live environment
62 clean. (No user modified files, no user added files, ...)
63
64 Portage does merging and unmerging of software: this means
65 that should you copy a clean live environment from a livecd onto a harddisk,
66 you could downgrade it to a clean state (stage0), or to a stage2, a
67 stage3 or just unmerge one package. You could also 'add' or replace software: add an
68 extra build to the live environment (this requires net connection)...
69 Since portage knows what a clean live environment is (it keeps a record of the files it
70 installs for each package.), this means that given a 'poluted' environment it should be
71 able to migrate to a clean environment. Heck, portage is even capable of given a gentoo
72 environment, create a GRP package using that environment.
73
74 What I'm suggesting is the following: suppose gentoo releases a livecd, and
75 kept updating the environment on this livecd on a regular interval (mount the
76 live env, emerge --update word). If we figure out a way to clone the live
77 environment of a livecd onto a hd, and the other way around, there would be
78 no need for GRP, nor stages, only a live environment (a livecd). The only thing
79 that we need to have is a huge live environment (cd) on major releases and a small
80 live environment on smaller releases. I can prove that this cloning system can support
81 everything we support now (custom CFLAGS...). And we no longer need to
82 provide people with cpu optimized optimized stuff, as they will be able to
83 provide that themselves. We could still have an oportunity to build optimized live
84 environments, but users could do themselves too. (a big environment can be
85 downgraded to a small one and upgraded to a bigger, optimized one without
86 much difficulty)
87
88 conclusion:
89
90 I think that instead of releasing a livecd (=stage1+extra stuff) with a set
91 of stages (stage1 , stage1+extra stuff, stage1+bootstrap+extra stuff) and some extra
92 stuff as GRP cd. We could release a big livecd (=stage1+a lot of extra stuff)
93 if we enhanced our package manager. I see no drawbacks, apart from revising
94 our current method of installation. Imho installation stays as educational
95 and powerfull as it is now. Maybe faster and better to some.
96 Note that this is only a idea, and not ment to be something that I absolutely
97 want.
98 --
99
100 Pieter
101
102 --
103 Pieter Van den Abeele
104 Gentoo Linux http://www.gentoo.org/~pvdabeel/
105
106 Public Key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xF238673E
107 Key fingerprint = F29C C550 54CD 1196 6723 EDC3 9B0D 4EA7 F238 673E

Replies

Subject Author
Re: [gentoo-dev] Re: The release of 1.4 and its impact on our mirrors Nathaniel McCallum <Nathaniel_McCallum@××××××××××××××.edu>