Gentoo Archives: gentoo-user

From: Alan McKinnon <alan.mckinnon@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] emerge --update behavior
Date: Mon, 02 Jan 2012 10:57:30
Message-Id: 20120102125606.108b752b@rohan.example.com
In Reply to: Re: [gentoo-user] emerge --update behavior by Dale
1 On Mon, 02 Jan 2012 04:19:39 -0600
2 Dale <rdalek1967@×××××.com> wrote:
3
4 > Alan McKinnon wrote:
5 > > The current behaviour is the correct and expected one - you told
6 > > portage to emerge something and it did. Why else would you emerge
7 > > something if you didn't intend it to become a permanent feature of
8 > > the system and part of world? This has always been the definition
9 > > of emerge - to make it permanent. If you want to emerge something
10 > > and NOT have portage put it in world then you must use the -1
11 > > option. Remember that emerging something is supposed to be a
12 > > permanent action that you (as root) intended to happen. If what you
13 > > intend is something more unusual like a mere test or "just to see
14 > > what would happen" then you must take additional steps (to make it
15 > > clear that you are doing something out of the ordinary). It's the
16 > > same logic as rm uses: the user told the computer to delete a file
17 > > so the computer did what it was told by it's master and deleted the
18 > > file. What else would you expect it to do? p.s. before I forget:
19 > > Happy New Year :-)
20 >
21 > I didn't tell it to add it to the world file tho, I just told it to
22 > update it hence the option --update. I update things all the time
23 > but it doesn't mean I want them added to the world file. If I want
24 > to emerge something and have it added to the world file, I leave the
25 > -u option out of it, then it should be added because I requested it
26 > to be emerged not updated.
27 >
28 > Example:
29 >
30 > emerge phonon
31 >
32 > That means I want it emerged on my system and should be added to the
33 > world file.
34 >
35 > emerge -u phonon
36 >
37 > That means I want to update/upgrade phonon. I don't want it in my
38 > world file, just updated. This is the way it worked before --oneshot
39 > came along. It is not the way it is now but it was that way a good
40 > while back.
41 >
42 > Happy New Year to you too. Mine are getting better. I lost my Dad
43 > on New Years Day many years ago. It's not the same since.
44
45
46 The current behaviour seems more logical to me. You also seem to have
47 gotten used to the old way and can't see past it :-)
48
49 When Zac needs to define when something does, he needs to keep the big
50 picture in mind to get consistency. So what's the purpose of emerge?
51 Well, read the DESCRIPTION in the man page:
52
53 =====
54 DESCRIPTION
55 emerge is the definitive command-line interface to the
56 Portage system. It is primarily used for installing packages, and
57 emerge can automatically handle any dependencies that the desired
58 package has. emerge can also update the portage tree, making new and
59 updated packages available. emerge gracefully handles updating
60 installed packages to newer releases as well. It handles both source
61 and binary packages, and it can be used to create binary packages for
62 distribution.
63 =====
64
65 Obviously it must maintain system and the world file to do this. That
66 is the primary function, everything else is secondary. When emerge
67 merges something to the live system, it puts everything listed on the
68 command line into world; everything brought along automagically as
69 a dep does not go into world. Any changes to that purpose must have a
70 very good reason.
71
72 Emergeing something puts it in world, we have established that. But
73 this thing called an "update" does not imply that the packages are not
74 to go in world - an update is just an update, not "merge this but also
75 do something weird with world". Actually --update makes little sense
76 with just individual packages, if they are not already installed they
77 will be (which is exactly what you get by omitting --update). It does
78 make a lot of sense when used with system, world, and sets though.
79
80 So it seems to me Zac has removed a peculiar bahaviour and made it much
81 more consistent:
82
83 When you emerge packages explicitly by name, they go into world always.
84 The only way to do it differently is to use -1 which tells portage to
85 not put them in world.
86
87 Makes sense to me.
88
89 --
90 Alan McKinnnon
91 alan.mckinnon@×××××.com

Replies

Subject Author
Re: [gentoo-user] emerge --update behavior Dale <rdalek1967@×××××.com>