The missing package NAMES in YOUR case won't necessarily be the same as in this example. But this shows how to fix the problem. The technique works regardless of what names you see in your output. So substitute the actual file names like ubuntu-advantage-tools or libnfsidmap1 with whatever YOUR computer says needs to be upgraded.
All of these commands need to be run as root. We do this by using sudo to change the user in the terminal without having to actually be logged into a session as root. To do this, type:
sudo su
...and enter your root password when prompted. The su part would switch users. When entered without anything else after it, the default to switch to is root. Now you have permission to dramatically screw up the computer so be 'root' carefully!
Otherwise you have to type sudo in front of all of these commands individually. Some linux purists think its wrong to sudo su, but I assure you, it is precisely the same as typing sudo over and over again for each command.
Run:
apt update
and then
apt upgrade
...you might get an output like:
1 upgraded, 0 newly installed, 0 to remove and 8 not upgraded.
...which shows eight packages not upgraded.
Other update related commands might provide a message like:
The following packages have been kept back: evolution evolution-common evolution-plugin-bogofilter evolution-plugin-pstimport evolution-plugins libevolution libnfsidmap1 ubuntu-advantage-tools
You need to fix these listed packages that might be missing dependencies causing them to not be upgraded the easy way. Nobody has thought to include a subroutine in apt upgrade to handle these issues automatically. So we are stuck doing it ourselves.
To list the packages, you should then run:
apt list --upgradable
You should then manually install those listed packages.
apt install evolution evolution-common evolution-plugin-bogofilter evolution-plugin-pstimport evolution-plugins libevolution libnfsidmap1
Notice how you can just enter all the packages with a space in between their names instead of running apt install for each individually. You can copy this list directly in the terminal from the previous not upgraded output. You have to right click and select 'copy' or 'paste' when dealing with stuff in the terminal. Ctrl C and Ctrl V keyboard commands won't work on terminal outputs.
Of course doing all of this might still not fix all of them. You might get an output like:
6 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
or
2 packages can be upgraded. Run 'apt list --upgradable' to see them.
You can then run:
apt-get --with-new-pkgs upgrade
...to show the remaining packages. This should output something like
The following packages have been kept back: libnfsidmap1 ubuntu-advantage-tools
Then you just need to manually install them individually for some ungodly reason. In my case I entered:
apt install ubuntu-advantage-tools
and
apt install libnfsidmap1
Again, the names of what was installed here should be replaced with what YOUR computer says wasn't upgraded.
This should fix the problem with the remaining two that wouldn't install when in the list command earlier.
Running apt update and then apt upgrade should then output:
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
DONE!
You might also want to run:
sudo apt-get --with-new-pkgs upgrade
and then
sudo apt autoremove
as I have seen suggested elsewhere. But this alone didn't solve my problem.
kept back
in the output? – Kulfy Oct 18 '19 at 11:32sudo apt full-upgrade
instead? – pomsky Oct 19 '19 at 05:27sudo apt upgrade
– marianoju Oct 20 '19 at 11:01https://dl.jami.net/ring-nightly/ubuntu_19.04 ring InRelease
). If you can't troubleshoot a failed apt install that's a very risky route to take. I wouldppapurge
that and find a stable ppa to add (from jami.net if you trust that source). – pbhj Sep 14 '22 at 15:05ring-all
package. Upgradingonionshare
failed due topython3-flask-httpauth
dependency being not installable (this has been discussed on GitHub, see issue #1052). – marianoju Sep 16 '22 at 08:14