1 |
On Tue, 2004-08-10 at 14:05, Spider wrote: |
2 |
> begin quote |
3 |
> On Tue, 10 Aug 2004 00:01:07 +0000 |
4 |
> Kurt Lieber <klieber@g.o> wrote: |
5 |
> |
6 |
> > One think that I think *everyone* agrees on is that any stable tree |
7 |
> > needs to be regularly updated with security fixes. With this in mind, |
8 |
> > I'm concerned with trying to maintain multiple separate SYNC modules. |
9 |
> > We'd have to upgrade each one with every GLSA, thus doubling or |
10 |
> > tripling the amount of CVS work needed each time. |
11 |
> |
12 |
> Once again, coming from an ISV standpoint where we would have loved to |
13 |
> use Gentoo (or, I would, some of the people wouldn't care, and one or |
14 |
> two i'd have to beat to make them bend to my will, but whatever ;) |
15 |
> |
16 |
> We had to scrap both Gentoo -and- Debian stable trees. Why? Because |
17 |
> both update the -main- repository when releasing security fixes/ |
18 |
> bugfixes. Neither have a stable tree thats archived once and never |
19 |
> changes. |
20 |
|
21 |
I have no problem with that at all, and this is really more what I would |
22 |
like to see. The only reason I was mentioning using ~arch as a method |
23 |
for security updates was to quell the people asking about security |
24 |
updates. |
25 |
|
26 |
> If you have to actively change a tree (modifications directly into the |
27 |
> "frozen" tree) which is the case in many environmens, you get stuck with |
28 |
> this problem. if upstream ever changes their tree, work is lost. You can |
29 |
> separate local trees and so on, however, once again work is lost when |
30 |
> internal revisions have superceeded the ones in the tree. (fex, local |
31 |
> changes to sshd to patch ther initscripts and default config files |
32 |
> before rollout, which ups the revision of openssh a few times, and then |
33 |
> there is a backported securityfix? It won't get merged. ) |
34 |
> |
35 |
> this is why I'd like to push, once more, for separated "stable" (frozen |
36 |
> snapshot basically) and "updates" pushed in a separate repo. If we |
37 |
> want others to use this in enterprise, we have to make it easy for them. |
38 |
> :-) |
39 |
|
40 |
To accomplish this would require a change to portage, but I think it |
41 |
could be done with minimal work. Allow me to ramble... *grin* |
42 |
|
43 |
We add something along the lines of a PORTAGE_TREE variable, that can be |
44 |
set to either the release version, or to "current". So you would have |
45 |
for 2005.0 something like: |
46 |
|
47 |
PORTAGE_TREE="2005.0" |
48 |
|
49 |
in make.conf (actually, in make.profile/make.defaults). When this is |
50 |
set to something non-"current", then portage will rsync *only* the |
51 |
2005.0 directory in the "gentoo-updates" module, which goes to an |
52 |
updates directory under /usr/portage, which is just an overlay which is |
53 |
added due to being non-"current". The rest of the tree is *never* |
54 |
synched when an emerge sync is done. When PORTAGE_TREE="current", the |
55 |
overlay doesn't exist, and the tree is synched as normal. |
56 |
|
57 |
Now, this gives us a non-moving, completely frozen tree for |
58 |
installations/QA/whatever and also gives us a mechanism for updates. It |
59 |
requires a little bit more work from the portage developers (whom I am |
60 |
sure are busy enough), but then takes up minimal space on the mirrors |
61 |
and requires the addition of only one rsync module. It also keeps the |
62 |
mirrors from having to process rsync over the entire frozen portion of |
63 |
the tree. |
64 |
|
65 |
-- |
66 |
Chris Gianelloni |
67 |
Release Engineering QA Manager/Games Developer |
68 |
Gentoo Linux |
69 |
|
70 |
Is your power animal a penguin? |