0

I'm trying to upgrade from 18.04 to 20.10. My understanding is that I first need to update to 20.04 and then to 20.10. I'm following the instructions on this page.

When I run sudo apt upgrade I get this message:

The following packages have been kept back:   
  frei0r-plugins libssh-4 
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

I have no idea why these are being held back. I vaguely recall installing the first package but don't know what I installed that needed the second package.

When I run sudo apt dist-upgrade I get the same exact message.

When I then proceed to sudo apt do-release-upgrade I get this error:

Checking for a new Ubuntu release
Please install all available updates for your release before upgrading.

Ok, I guess this has something to do with the kept back packages? I read one place that I could unmark them as held, but this doesn't work:

$ sudo apt-mark unhold frei0r-plugins libssh-4
frei0r-plugins was already not hold.
libssh-4 was already not hold.

In another place I read that sudo aptitude safe-upgrade might fix the problem. It installs a few i386 packages but afterwards I still get the same messages/errors as before when I try to upgrade.

I also read that I should run apt list --upgradable and that sudo apt-get install each package listed individually. But when I try that I get this error:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies: frei0r-plugins : Depends: libopencv-objdetect4.2 but it is not going to be installed Depends: libopencv-video4.2 but it is not going to be installed E: Unable to correct problems, you have held broken packages.

Additionally, when I try to install the second dependency, I says it's going to REMOVE four remmina packages, which I don't want as I use this program quite frequently!

Michael
  • 1,135

2 Answers2

1

Could you try uninstalling frei0r-plugins and libssh-4, then try upgrading. If that is successful, then reinstall frei0r-plugins and libssh-4. Do you need these two installations? https://packages.debian.org/sid/libssh-4 https://frei0r.dyne.org/

  • well that got rid of that particular message. now it's complaining that more packages are being held back. when i go to remove them, a LOT of packages are going to be removed - i'm a bit nervous about whether something will get deleted that I can't recover, although I suppose for the most part it should leave along config stuff that is under my home directory – Michael Oct 23 '20 at 02:58
  • not sure why uninstalling a single plug-in package would make it want to uninstall every media player on my system! – Michael Oct 23 '20 at 03:02
  • What happens if you reinstall? do you get the same error messages as before when you try to upgrade? – Stuart Anderson Oct 23 '20 at 03:05
  • ugh. what a pain. after deleting all the offending packages, the upgrade fails due to An unresolvable problem occurred while calculating the upgrade.... apparently now i have to purge all my ppas, some of which i may rely on (like i remember) in order to have any chance at upgrading. i thought this was going to be easy – Michael Oct 23 '20 at 03:19
  • some suggestions here https://net2.com/how-to-fix-unmet-dependencies-error-in-ubuntu/ – Stuart Anderson Oct 23 '20 at 03:25
  • welp, now when i try to reinstall the packages i uninstalled so I could upgrade (because i'm putting the upgrade on hold) i can't install anything because there are unmet dependencies which ultimately resolve in no installation candidate for the base module. so now i have no media players that can even be installed on my system – Michael Oct 23 '20 at 21:01
1

I had this same issue when i tried to update

I solved this forcing a package update like so:
sudo apt-get install {package-name}

Note:
Not sure if this is the correct way of approaching things but it worked for me :)