On Sat, May 16, 2020 at 1:04 PM Jack <ostrof...@users.sourceforge.net> wrote:
>
> The basic idea is to upgrade as few packages at a time as possible - but
> you can't do just one because of these conflicts.

If you get stuck in a really bad dependency mess that is sometimes necessary.

However, I'd first suggest just trying to update everything:
emerge -auDv --changed-use --keep-going --with-bdeps=y --changed-deps
--backtrack=100 @world

It is quite possible that this will just be a complete mess since such
a long time has passed.

If so I would try to do just those conflicts necessary to get portage
updated to start.  Or maybe try the above command but using @system
instead of @world.

However, nobody should be under the impression that it is normal when
updating to have to routinely update packages one at a time manually
trying to work through conflicts.  As long as all the conflicting
packages are within the scope of an update command, portage should
generally be able to figure out how to handle this.

Often when it can't it is the result of heavy-handed user
configuration (USE=-* and so on).  I'm not saying that users can't do
that if they want, but right now portage doesn't have any concept of
soft use dependencies so anytime you stick something in a config file
portage will treat it as the gospel even if one small change to your
configuration will unblock a large logjam of conflicts.

In an ideal world there would be some kind of prioritization of these
configs so that you could have softer preferences and harder ones, and
portage would just make a best effort to respect soft preferences
without micromanagement.

-- 
Rich

Reply via email to