1 |
On 26/04/2015 23:28, Philip Webb wrote: |
2 |
> 150426 Michael Orlitzky wrote: |
3 |
>> On 04/26/2015 03:17 PM, Philip Webb wrote: |
4 |
>>> Portage needs to tell users (1) more clearly what's gone wrong, |
5 |
>>> (2) what their choices are, (3) how to resolve the problem. |
6 |
>> The process goes something like this: |
7 |
>> 1. Become frustrated with the obtuse portage output. |
8 |
>> 2. Get familiar with the portage source code. |
9 |
>> 3. Develop an understanding of the dependency resolution process |
10 |
>> and all of the possible conflicts that can arise. |
11 |
>> 4. Come up with better ways to explain the error messages that are shown. |
12 |
>> 5. Never get around to writing the patch, |
13 |
>> because now you understand what Portage is telling you. |
14 |
> |
15 |
> That's far too much to expect of users : we're not dev's. |
16 |
> |
17 |
>> More seriously, once you start working on (3), you'll realize |
18 |
>> that just because the error msgs suck doesn't mean you can make them better. |
19 |
> |
20 |
> If they "suck", they're not worth issuing, are they ? |
21 |
> I'm not willing to become a dev, so I'll never know if I cd improve them, |
22 |
> but it doesn't follow that no-one else could. |
23 |
> |
24 |
>> Maybe the best solution to a conflict is to buy a new video card for $5, |
25 |
>> so that a newer version of nvidia-drivers will work, |
26 |
>> so that the new version of xorg-server will work, |
27 |
>> so that the new version of opengl will work, |
28 |
>> so that you can upgrade tuxracer. |
29 |
>> Portage can't figure out stuff like that. |
30 |
> |
31 |
> I'm not asking it to : citing extreme cases is a popular excuse for inaction. |
32 |
> |
33 |
>> If you're willing to wait an hour, it might be able to come up |
34 |
>> with a list of ways you could resolve a conflict, but basically |
35 |
>> all of them will be wrong, eg suggestion #1, uninstall everything. |
36 |
> |
37 |
> Really, this is a flippant response to a serious issue, |
38 |
> which is being raised more often on the Gentoo User list. |
39 |
> |
40 |
>> All portage errors are essentially : |
41 |
>> "you want something and you can't have it". |
42 |
> |
43 |
> Well, you said above that Portage doesn't know what the user wants (smile). |
44 |
> |
45 |
>> The solution is then to adjust slightly what it is that you asked for, |
46 |
>> but Portage doesn't know what you really want |
47 |
>> or what you're willing to settle for, |
48 |
>> so the best it can do is give you the information you need |
49 |
>> so that you can ask it a different question. |
50 |
> |
51 |
> Users need advice from Portage re the range + type of questions to ask. |
52 |
> Portage needs to list possibilities + alternatives, ok a short list. |
53 |
> At present, it spews out opaque lists of things it can't do |
54 |
> & offers no assistance to users re what it mb able to do. |
55 |
> |
56 |
|
57 |
|
58 |
I'm with you on this Philip. By way of example, here's the output I get |
59 |
every time I run emerge on my notebook: |
60 |
|
61 |
========== |
62 |
# emerge -avuND world |
63 |
|
64 |
These are the packages that would be merged, in order: |
65 |
|
66 |
Calculating dependencies... done! |
67 |
|
68 |
Total: 0 packages, Size of downloads: 0 KiB |
69 |
|
70 |
WARNING: One or more updates/rebuilds have been skipped due to a |
71 |
dependency conflict: |
72 |
|
73 |
dev-lang/swig:0 |
74 |
|
75 |
(dev-lang/swig-3.0.5:0/0::gentoo, ebuild scheduled for merge) |
76 |
conflicts with |
77 |
<dev-lang/swig-3.0.5 required by |
78 |
(dev-python/m2crypto-0.22.3-r3:0/0::gentoo, installed) |
79 |
^ ^^^^^ |
80 |
|
81 |
dev-java/slf4j-api:0 |
82 |
|
83 |
(dev-java/slf4j-api-1.7.7:0/0::gentoo, ebuild scheduled for merge) |
84 |
conflicts with |
85 |
<dev-java/slf4j-api-1.7.7:0 required by |
86 |
(dev-java/jboss-logging-3.1.4:0/0::gentoo, installed) |
87 |
^ ^^^^^ |
88 |
|
89 |
|
90 |
Nothing to merge; quitting. |
91 |
=========== |
92 |
|
93 |
I know what this means, swig and slf4j-api are pinned (in the style of |
94 |
Debian) because other packages that use them require |
95 |
less-than-most-recent versions. Fair enough, that's a normal everyday |
96 |
occurrence. Now try infer the truth from the stated output. |
97 |
|
98 |
Note that I have no local masks that get involved, this output is from |
99 |
the state of the tree itself. |
100 |
|
101 |
This is the kind of query we are getting more and more often here on |
102 |
-user; old nvidia versions is also somewhat common but we Gentooers have |
103 |
always accepted that as part of the deal if we want to use ancient |
104 |
hardware. My example above was never part of the deal as I read it. |
105 |
|
106 |
|
107 |
|
108 |
-- |
109 |
Alan McKinnon |
110 |
alan.mckinnon@×××××.com |