1 |
On 04/10/2013 12:50, Alex Schuster wrote: |
2 |
> Hi there! |
3 |
> |
4 |
> Some may remember me from posting here often. But since a year, I have a |
5 |
> new life, and much less time for sitting at my computer. Sigh. And my |
6 |
> beloved Gentoo got a little outdated. |
7 |
> |
8 |
> So, a @world update does not work. I thought I give emerge -e @world a |
9 |
> try, this should sort out the problems, but this also does not go well. |
10 |
> |
11 |
> I don't want to bother you with the whole lot of output emerge gives me, |
12 |
> and just ask a specific question at the moment. I get the 'Multiple |
13 |
> package instances within a single package slot have been pulled into the |
14 |
> dependency graph, resulting in a slot conflict' message, and several |
15 |
> affected packages. One example is claws: |
16 |
> |
17 |
> mail-client/claws-mail:0 |
18 |
> |
19 |
> (mail-client/claws-mail-3.9.0-r1::gentoo, ebuild scheduled for merge) |
20 |
> pulled in by ~mail-client/claws-mail-3.9.0 required by |
21 |
> (mail-client/claws-mail-address_keeper-1.0.7::gentoo, ebuild scheduled |
22 |
> for merge) |
23 |
> |
24 |
> (mail-client/claws-mail-3.9.2::gentoo, ebuild scheduled for merge) |
25 |
> pulled in by (no parents that aren't satisfied by other packages in |
26 |
> this slot) |
27 |
> |
28 |
> Looking at the ebuild, I see that claws-mail-address_keeper rdepends on |
29 |
> claws-mail-3.9.0. But being on ~amd86, 3.9.2 would be current. |
30 |
|
31 |
No, that is not the right assumption. |
32 |
|
33 |
Portage doesn't guess what versions are dependencies, it reads the |
34 |
ebuild and does exactly what the ebuild says. |
35 |
|
36 |
The ebuild for claws-mail-address_keeper say it depends on |
37 |
~claws-mail-3.9.0, that means any revision of 3.9.0. |
38 |
|
39 |
Portage *must not* decide to use 3.9.1 or 3.9.2, because the ebuild has |
40 |
clearly told it not to. |
41 |
|
42 |
The solution is to get the maintainer to bump the DEPENDS for that |
43 |
plugin, or to use claws-mail-3.9.0, or to stop using that plugin. |
44 |
|
45 |
|
46 |
emerge output is confusing. The last line you quoted is just portage |
47 |
telling you that 3.9.2 would normally be the choice it would make, but |
48 |
the lines above it says it's going to pick 3.9.0 instead,a nd why |
49 |
|
50 |
|
51 |
> |
52 |
> I can solve this by masking versions greater than 3.9.0. Two questions: |
53 |
|
54 |
No you can't. That will just produce different blockers |
55 |
|
56 |
> |
57 |
> Why can't portage deal with this itself, and simply install the highest |
58 |
> version that fulfills all requirements? |
59 |
|
60 |
|
61 |
See above. It could deal with it if the ebuild didn't tell it something |
62 |
different |
63 |
|
64 |
|
65 |
> |
66 |
> And how do I notice an update to claws-mail-address_keeper that would |
67 |
> allow a newer version of claws-mail? Other than remembering those masks |
68 |
> and go through them once in a while? |
69 |
|
70 |
emerge -avuND world |
71 |
|
72 |
will tell you when updates are available |
73 |
|
74 |
|
75 |
> |
76 |
> Similar problems happen with sys-boot/syslinux, pulled in by |
77 |
> sys-boot/unetbootin, media-sound/jack-audio-connection-kit, pulled in by |
78 |
> app-emulation/emul-linux-x86-soundlibs, and all dev-qt packages, where I |
79 |
> did not yet figure out what to do. |
80 |
|
81 |
|
82 |
Often with a box that is a while out of date, it is easier to just |
83 |
unmerge blocking packages and add them back in. I've had this with Qt |
84 |
more than once. |
85 |
|
86 |
|
87 |
|
88 |
> |
89 |
> I am running portage 2.2.7. |
90 |
> |
91 |
> Alex |
92 |
> |
93 |
|
94 |
|
95 |
-- |
96 |
Alan McKinnon |
97 |
alan.mckinnon@×××××.com |