1 |
Hi, Alan. |
2 |
|
3 |
On Sat, May 14, 2011 at 12:51:14PM +0200, Alan McKinnon wrote: |
4 |
> Apparently, though unproven, at 12:31 on Saturday 14 May 2011, Alan Mackenzie |
5 |
> did opine thusly: |
6 |
|
7 |
> > 1. Where is it specified what is in "system" in the same way that |
8 |
> > "world" is in the file /var/lib/portage/world? |
9 |
|
10 |
> That is defined in your system profile, not by you. |
11 |
|
12 |
> /etc/make.profile is a symlink to something in $PORTDIR/profiles/ and that |
13 |
> defines the profile you are using. A profile is nothing more than a bunch of |
14 |
> files that define what your basic system consists of - things like minimum |
15 |
> packages to install, things that must not be installed, starting point for USE |
16 |
> flags, etc etc. |
17 |
|
18 |
> Profiles are cascading, meaning that more specific profiles can include other |
19 |
> more general ones, defined in files called "parent". These contain paths to |
20 |
> other directories (which themselves can have parents), and the whole lots os |
21 |
> recursively traversed from the bottom up till all the branches dead-end. The |
22 |
> full complete set of data you get out of all that is your complete profile. |
23 |
|
24 |
> The specific files that define the system set are called "packages" |
25 |
|
26 |
OK. Some of these directories have got three parents. ;-) The people |
27 |
deciding what goes into the "packages"es must have very steady hands. |
28 |
|
29 |
> > 2. How does emerge know which mutt to build when I do "emerge mutt"? |
30 |
> > There are three candidate files in /usr/portage/mail-client/mutt, e.g. |
31 |
> > mutt-1.5.21-r1.ebuild. |
32 |
|
33 |
> It will pick the ebuild with the highest version number, modified by your |
34 |
> rules concerning ACCEPT_KEYWORDS=, unmasked and masked packages. |
35 |
|
36 |
> If your system is set to stable (ACCEPT_KEYOWRDS=amd64 for example), it will |
37 |
> pick between mutt-1.5.20-r18 and mutt-1.5.21-r1 as those are both stable. |
38 |
> Usually it will be 1.5.21-r1 as that is the most recent version. Normally you |
39 |
> will find two or more stable versions for most packages. This is by design so |
40 |
> that if an update on a stable system by chance breaks something, you still |
41 |
> have an earlier version to fall back on should the need arise. |
42 |
|
43 |
OK, I get it. |
44 |
|
45 |
> If your system is set to unstable (ACCEPT_KEYOWRDS=~amd64 for example), it |
46 |
> will pick mutt-1.5.21-r2 as that version is unstable (displayed with a |
47 |
> ~ symbol next to it in output). |
48 |
|
49 |
I think I'll leave the unstable stuff alone. |
50 |
|
51 |
> Sometimes you get packages that are masked, indicated with [m] or [M]. These |
52 |
> are for lunatics to test, and there are rules concerning masking that you can |
53 |
> use to free these up for use (it's all in the man pages). Mutt does not have |
54 |
> any such packages but nvidia-drivers for example does. You must take explicit |
55 |
> steps to obtain the latest version. This is so that the odds of validly being |
56 |
> able to blame anyone at all when nvidia trashes your system are reduced to |
57 |
> exactly zero. |
58 |
|
59 |
> Do you have eix installed? You should, great tool, and makes figuring all this |
60 |
> out a whole lot easier. |
61 |
|
62 |
I've got it now. I'll go and have a look at it's /usr/share/doc / man |
63 |
page. |
64 |
|
65 |
Thanks! |
66 |
|
67 |
> -- |
68 |
> alan dot mckinnon at gmail dot com |
69 |
|
70 |
-- |
71 |
Alan Mackenzie (Nuremberg, Germany). |