On 04/26/2015 03:17 PM, Philip Webb wrote: > 150426 Neil Bothwick wrote: >> On Sun, 26 Apr 2015 15:49:19 +0200, Alan McKinnon wrote: >>> Emerge really needs to have it's output redesigned from scratch. >> I t needs a full overhaul of the way it communicates what is happening. > > +1 : Portage needs to tell users (1) more clearly what's gone wrong, > (2) what their choices are, (3) how to resolve the problem. >
The process goes something like this: 1. Become frustrated with the obtuse portage output. 2. Get familiar with the portage source code. 3. Develop an understanding of the dependency resolution process and all of the possible conflicts that can arise. 4. Come up with some better ways to explain the error messages that are shown. 5. Never get around to writing the patch, because now you understand what portage is telling you. More seriously, once you start working on (3), you'll realize that just because the error messages suck doesn't mean you can make them better. Maybe the best solution to a conflict is to buy a new video card for $5 so that a newer version of nvidia-drivers will work so that the new version of xorg-server will work so that the new version of opengl will work so that you can upgrade tuxracer. Portage can't figure out stuff like that. If you're willing to wait an hour, it might be able to come up with a list of ways you could resolve a conflict, but basically all of them will be wrong (e.g. suggestion #1, uninstall everything). All portage errors are essentially, "you want something and you can't have it." The solution is then to adjust slightly what it is that you asked for, but portage doesn't know what you really want or what you're willing to settle for, so the best it can do is give you the information you need to ask it a different question.