1 |
On Monday 25 December 2006 22:41, "Mike Myers" <fluffymikey@×××××.com> |
2 |
wrote about 'Re: [gentoo-user] anti-portage wreckage?': |
3 |
> On 12/25/06, Boyd Stephen Smith Jr. <bss03@××××××××××.net> wrote: |
4 |
> > On Monday 25 December 2006 14:09, "Mike Myers" <fluffymikey@×××××.com> |
5 |
> > wrote about 'Re: [gentoo-user] anti-portage wreckage?': |
6 |
> > > Anyways, all I'm essentially asking for is a way to separate minor |
7 |
> > > updates from major updates. |
8 |
> > With some of the advanced atom operators (particularly '*' and '~'), |
9 |
> > you should be able to specify exactly what level of masking you want. |
10 |
> > You could also make your own profile that does "cap" packges at a |
11 |
> > certain version and have it's parent be an established profile, |
12 |
> > although I'm not sure that bit of portage hackery is supported. |
13 |
> I know these things could be done, but I don't really think it's worth |
14 |
> it. The problem is that these kinds of solutions don't scale very well.. |
15 |
> they don't really scale at all really. If I have to reinstall for |
16 |
> whatever reason, then I have to redo all this hackery, as you put it, |
17 |
> heh. |
18 |
|
19 |
You can easily replicate the contents of a profile or /etc/portage across |
20 |
multiple system with something like rsync; you should also have the |
21 |
entirety of /etc backed up in case you need to reinstall -- it holds all |
22 |
your services' configurations anyway. |
23 |
|
24 |
> In any case, this is still a bit of a reactive approach, since I |
25 |
> have to be aware that there may be a problem with a particular update |
26 |
> before I know to mask it. |
27 |
|
28 |
No, you can mask packages before they exist, so you can choose to be |
29 |
reactive or active. For example, to prevent emerge -u from updating a |
30 |
package add >category/package-version to package.mask, even if there's not |
31 |
an upgrade waiting. Again, proper use of the package atoms should enable |
32 |
you to only enable -rX upgrades (which are ebuild changes; not upstream) |
33 |
or -rX and last version number upgrades (which should be ABI compatible if |
34 |
upstream is sane) etc. etc. |
35 |
|
36 |
It's certainly possible to build a system of scripts around emerge to do |
37 |
all this masking for you, and the PYE (pick-your-emerge) script that is |
38 |
(used to be?) popular on the forums could be a good starting point. |
39 |
|
40 |
One thing that would make it a *lot* easier is if /var/lib/portage/world |
41 |
supported the full atom syntax instead of just atom bases and doing |
42 |
something like 'emerge "<category/mysql-5"' would add the atom from the |
43 |
command line to the world file instead of the atom base. [Then, most of |
44 |
the time, you wouldn't have to mask anything at all.] |
45 |
|
46 |
> I really like the idea of the tree version |
47 |
> thing though. I'll see if there's anything I can do to support that. |
48 |
|
49 |
Yeah, I certainly would *mind* tree versioning. Although... I'm not quite |
50 |
sure how it would mesh with the accepted ~ARCH keywording. I see how they |
51 |
could work together, but they also seem to overlap uncomfortably. |
52 |
|
53 |
-- |
54 |
"If there's one thing we've established over the years, |
55 |
it's that the vast majority of our users don't have the slightest |
56 |
clue what's best for them in terms of package stability." |
57 |
-- Gentoo Developer Ciaran McCreesh |