1 |
Nikodemus Karlsson schreef: |
2 |
> Hi, almost every time when I do a complete packages upgrade using |
3 |
> emerge -u world, portage flags for new packages which is going to be |
4 |
> installed. Is there an option to get rid of this behavior, so I only |
5 |
> get the updated packages with one command? |
6 |
|
7 |
I'm not quite sure what you mean by this. Sometimes updating a package |
8 |
requires new dependent packages to be installed (which new packages the |
9 |
previous version of the package in your world file did not require, so |
10 |
they're not installed already). In fact, this is the only reason I can |
11 |
think of that an emerge -u world would install new packages, other than |
12 |
changed USE flags, which is more or less the same thing. |
13 |
|
14 |
The most likely to succeed way to eliminate most of the extra dependent |
15 |
packages is to do an emerge -uav(Dt) world, which will enable you to see |
16 |
what USE flags are enabled for the packages requested to emerge, which |
17 |
often will reveal what's going on without you having to do anything more |
18 |
(for example, if you're updating gnome to 2.12 (as I'm doing today), and |
19 |
in the course of the prospective emerge you notice (as I did) that 1) |
20 |
epiphany is being updated (normal), and 2) mozilla is being emerged (not |
21 |
desired), an emerge -pv epiphany shows that |
22 |
|
23 |
emerge -pv epiphany |
24 |
|
25 |
These are the packages that I would merge, in order: |
26 |
|
27 |
Calculating dependencies ...done! |
28 |
[ebuild N ] www-client/mozilla-1.7.12-r2 +crypt -debug +gnome -ipv6 |
29 |
+java +ldap -mozcalendar -mozdevelop +moznocompose +moznoirc +moznomail |
30 |
-moznoxft +mozsvg -postgres +ssl +truetype -xinerama +xprint 468 kB |
31 |
[ebuild U ] www-client/epiphany-1.8.2 [1.6.4] +dbus -debug -doc |
32 |
-firefox +python 3,275 kB |
33 |
|
34 |
looking at the USE flags for epiphany, I see that there is a 'firefox' |
35 |
USE flag which is not enabled. As you might imagine, I do use Firefox |
36 |
(since as you see, I don't have Mozilla installed), and being clever, I |
37 |
guess that I can replace Epiphany's dependency on 'some Mozilla browser' |
38 |
by enabling the 'firefox' USE flag, and that is the case: |
39 |
|
40 |
|
41 |
emerge -pv epiphany |
42 |
|
43 |
These are the packages that I would merge, in order: |
44 |
|
45 |
Calculating dependencies ...done! |
46 |
[ebuild U ] www-client/epiphany-1.8.2 [1.6.4] +dbus -debug -doc |
47 |
+firefox* +python 3,275 kB |
48 |
|
49 |
The star next to the firefox USE flag indicates that it is a flag whose |
50 |
status has changed since I last emerged this application. |
51 |
|
52 |
And as you see, Mozilla will not be installed. |
53 |
|
54 |
For more troublesome to debug dependencies, an emerge -uavt(D) world |
55 |
will show what packages are requiring the additional packages to be |
56 |
emerged so that you can see their USE flags (which may be requiring the |
57 |
additional packages), or at least which packages may have new hard |
58 |
dependencies that require the additonal packages (which status you can |
59 |
look up using equery or other tools whose names I momentarily forget, or |
60 |
online at www.gentoo-portage.com ). |
61 |
|
62 |
> In the meantime, the upgrade flags for install of a package |
63 |
> "uw-mailutils-2004g", which conflicts with pine. I don't want |
64 |
> uw-mailutils-2004g, but I want pine. Ok, it's easy to upgrade |
65 |
> manually all the packages except uw-mailutils-2004g, but then I lose |
66 |
> the convinience with the world file, even in the future. Anyone who |
67 |
> knows how to solve this problem? |
68 |
|
69 |
This looks fairly insoluble without giving something up: |
70 |
|
71 |
Runtime Dependencies |
72 |
uw-mailutils-2004g |
73 |
|
74 |
! mail-client/pine - 4.64-r1 |
75 |
! net-mail/uw-imap - 2004g-r1 |
76 |
virtual/libc |
77 |
|
78 |
Pine cannot be installed with uw-mailutils. OK, but why are we |
79 |
installing uw-mailutils in the first place? |
80 |
|
81 |
Programs That Depend On uw-mailutils |
82 |
|
83 |
net-mail/uw-imap |
84 |
|
85 |
Do you need uw-imap? If not, then get rid of it, and unmerge |
86 |
uw-mailutils, and pine will upgrade by itself. |
87 |
|
88 |
Oh, I see, the upgraded pine needs it. |
89 |
|
90 |
And uw-imap needs uw-mailutils, but not of the -r1 revision that |
91 |
conflicts with the upgrade to uw-imap, and pine. |
92 |
|
93 |
So then mask the versions of uw-mailutils above 2004g, and keep an eye |
94 |
on portage, as this looks like a bug which would need to be resolved, |
95 |
and I would imagine that it would be in short order. |
96 |
|
97 |
# echo ">=net-mail/uw-mailutils-2004g-r1 >>/etc/portage/package.mask" |
98 |
|
99 |
This command assumes that the directory /etc/portage exists already (but |
100 |
the file package.mask need not exist; as long as the folder exists, the |
101 |
file will be created and this line will be added to it; if the file does |
102 |
exist, the mask command will be added to it). |
103 |
|
104 |
Hope this helps, |
105 |
Holly |
106 |
-- |
107 |
gentoo-user@g.o mailing list |