1 |
Mark Knecht schreef: |
2 |
> Hi, |
3 |
> I wonder what the explanation in the emerge man page about the |
4 |
> --update option really means. What is meant by, and how does emerge |
5 |
> pick, "the best version available"? |
6 |
> |
7 |
> - Mark |
8 |
> |
9 |
|
10 |
For those wondering, here's the quote: |
11 |
|
12 |
--update (-u) |
13 |
Updates packages to the best version available, which may |
14 |
not always be the highest version number due to masking for testing and |
15 |
development. This will also update direct dependencies which may not |
16 |
be what you want. In general, use this option only in combination with |
17 |
the world or system target. |
18 |
|
19 |
I accept that this is somewhat unclear, but to explain it fully would |
20 |
take more space than a man page really is for. |
21 |
|
22 |
But anyway, the 'best' version available is mostly determined by the |
23 |
arch masks, which are determined by the developers. |
24 |
|
25 |
"Best" in this case is a somewhat poor choice of words, but at least |
26 |
indicates the subjectiveness of the determination. |
27 |
|
28 |
In any case, a few examples: |
29 |
|
30 |
|
31 |
media-video/mplayer |
32 |
Available versions: 1.0_pre6-r4 1.0_pre6-r5 1.0_pre6-r6 1.0_pre7 |
33 |
Installed: 1.0_pre7 |
34 |
Homepage: http://www.mplayerhq.hu/ |
35 |
Description: Media Player for Linux |
36 |
|
37 |
All available versions of mplayer are stable, so the 'best' version is |
38 |
the most recent stable. |
39 |
|
40 |
media-libs/xine-lib |
41 |
Available versions: ~1_rc6-r2 1_rc8-r1 1.0-r2 1.0.1-r3 ~1.0.2 |
42 |
~1.1.0 ~1.1.0-r1 |
43 |
Installed: 1.0.1-r3 |
44 |
Homepage: http://xine.sourceforge.net/ |
45 |
Description: Core libraries for Xine movie player |
46 |
|
47 |
in this case, if one was using stable arch, and had not activated |
48 |
unstable for this package (as I haven't), the best version is the most |
49 |
recent stable (1.0.1-r3), which is not the most recent version. |
50 |
|
51 |
However, if one was using ~arch, or had activated unstable for this |
52 |
package in /etc/portage/package.mask, then the 'best' version would be |
53 |
1.1.0-r1, which is the most recent revision, but not in stable Portage. |
54 |
|
55 |
media-video/ati-drivers |
56 |
Available versions: 8.8.25-r3 8.10.19 8.12.10 [M]8.13.3 [M]8.13.4 |
57 |
8.14.13 8.14.13-r1 8.14.13-r2 [M]8.14.13-r3 *8.16.20 |
58 |
Installed: 8.14.13-r2 |
59 |
Homepage: http://www.ati.com |
60 |
Description: Ati precompiled drivers for r350, r300, r250 |
61 |
and r200 chipsets |
62 |
|
63 |
Now in this case, the 'best' version is the most recent stable. The |
64 |
second most recent version (8.14.13-r3) is hard masked, but if I |
65 |
unmasked it with /etc/portage/package.unmask (and possibly also |
66 |
/etc/portage/package.keywords), then Portage would consider it the |
67 |
'best', insofar as it would attempt to install it if I upgraded the |
68 |
drivers. Of course, the very fact that you have to manually unmask the |
69 |
packages should give you pause as to whether you really want to consider |
70 |
this the 'best' for you. |
71 |
|
72 |
The very most recent version (8.16.20) is 'not available' -- meaning |
73 |
that it will never be considered the 'best' version until it returns to |
74 |
Portage; masking or unmasking is of no use here. I know, because I had |
75 |
unmasked and installed the latest drivers, which did not work well, to |
76 |
put it mildly, and today I synced and Portage downgraded them. I would |
77 |
have downgraded them manually anyway, but it was interesting to see |
78 |
Portage downgrade them by force despite the fact that they were still |
79 |
unmasked. They have so many problems that they are no longer on the |
80 |
Portage radar until the issues are determined to at least an extent that |
81 |
someone knows what to fix, and who has to fix it (Gentoo, the kernel |
82 |
guys if it's a kernel conflict, ATI). |
83 |
|
84 |
So, 'best' is a matter of judgement, and basically Gentoo sorts packages |
85 |
into categories so that you can have some context to make the judgement |
86 |
about what is best *for you*. If stable is best for you, then Portage |
87 |
will choose the stable packages (because you told it to). If unstable is |
88 |
best for you, then Portage will choose the unstable packages (because |
89 |
you told it to). If stable is generally best, but in some specific |
90 |
cases, unstable is best for you, then Portage will choose the stable |
91 |
packages except where you told it that unstable is OK. |
92 |
|
93 |
That's how it's done, mostly. |
94 |
|
95 |
HTH, |
96 |
Holly |
97 |
-- |
98 |
gentoo-user@g.o mailing list |