Issues upgrading from 19.3 to 20 Cinnamon Mint

It has been a long time since I have posted, mostly because my workload has taken up a lot of my cognitive bandwidth. That, and the realization that nearly all of my Linux issues were self-inflicted, usually when I tried to do too much. So here I go again, trying to do something that SHOULD be painlss, just time-consuming. Upgrading Mint.

I followed the directions to the letter, and the ensuing system will not open Control Center, Synaptic, Software Sources or many other windows. Nor can it run upgrades
I saved a lot more documentation than I feel I should share here, but I have them if they help. Here are some key messages:

This is the error report after running mintupgrade upgrade:

E: Problem executing scripts APT::Update::Post-Invoke-Success ‘if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi’
E: Sub-process returned an error code

sudo apt update && sudo apt upgrade
[sudo] password for cliff:
Reading package lists… Done
Building dependency tree
Reading state information… Done
You might want to run ‘apt --fix-broken install’ to correct these.
The following packages have unmet dependencies:
aptitude : Depends: libapt-pkg5.0 (>= 1.1) but it is not installable
hplip : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
libapt-inst2.0 : Depends: libapt-pkg5.0 (>= 1.1~exp9) but it is not installable
libcairo-perl : Depends: perlapi-5.26.1 but it is not installable
libept1.5.0 : Depends: libapt-pkg5.0 (>= 1.1~exp9) but it is not installable
libfcgi-perl : Depends: perlapi-5.26.0 but it is not installable
libfile-fcntllock-perl : Depends: perlapi-5.26.0 but it is not installable
libglib-perl : Depends: perlapi-5.26.0 but it is not installable
libgtk2-perl : Depends: perlapi-5.26.0 but it is not installable
libharfbuzz-dev : Depends: gir1.2-harfbuzz-0.0 (= 2.6.4-1ubuntu4) but 1.7.2-1ubuntu1 is installed
libhtml-parser-perl : Depends: perlapi-5.26.0 but it is not installable
libio-pty-perl : Depends: perlapi-5.26.0 but it is not installable
liblist-moreutils-perl : Depends: perlapi-5.26.0 but it is not installable
liblocale-gettext-perl : PreDepends: perlapi-5.26.0 but it is not installable
libnet-dbus-perl : Depends: perlapi-5.26.0 but it is not installable
libnet-libidn-perl : Depends: perlapi-5.26.0 but it is not installable
libpango-perl : Depends: perlapi-5.26.0 but it is not installable
libperlio-gzip-perl : Depends: perlapi-5.26.0 but it is not installable
libsocket6-perl : Depends: perlapi-5.26.0 but it is not installable
libsub-name-perl : Depends: perlapi-5.26.0 but it is not installable
libtext-charwidth-perl : Depends: perlapi-5.26.0 but it is not installable
libtext-iconv-perl : Depends: perlapi-5.26.0 but it is not installable
libuuid-perl : Depends: perlapi-5.26.0 but it is not installable
libxml-parser-perl : Depends: perlapi-5.26.0 but it is not installable
nemo-columns : Depends: python-gi but it is not installed
onboard : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
Recommends: onboard-data (>= 1.4.1-2ubuntu1mint3) but it is not installed
python-gi-cairo : Depends: python-gi (= 3.26.1-2ubuntu1) but it is not installed
python3-apt : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
Depends: libapt-pkg5.0 (>= 1.6.5~) but it is not installable
python3-brlapi : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-cairo : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-cffi-backend : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-crypto : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-cups : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-dbus : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
python3-gi-cairo : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
Depends: python3-gi (= 3.26.1-2ubuntu1) but 3.36.0-1 is installed
python3-pycurl : Depends: python3 (< 3.7) but 3.8.2-0ubuntu2 is installed
synaptic : Depends: libapt-pkg5.0 (>= 1.1~exp9) but it is not installable
E: Unmet dependencies. Try ‘apt --fix-broken install’ with no packages (or specify a solution).

When I restarted, the popup said that it needed to revert to old Cinnamon.

And this is what I get when I try to run the normal update:

cliff@cliff-desktop:~$ sudo apt update && sudo apt upgrade
Ign:1 http://packages.linuxmint.com ulyana InRelease
Hit:2 http://archive.canonical.com/ubuntu focal InRelease
Hit:3 http://packages.linuxmint.com ulyana Release
Hit:4 http://archive.ubuntu.com/ubuntu focal InRelease
Hit:5 http://security.ubuntu.com/ubuntu focal-security InRelease
Get:7 http://archive.ubuntu.com/ubuntu focal-updates InRelease [111 kB]
Get:8 http://archive.ubuntu.com/ubuntu focal-backports InRelease [98.3 kB]
Fetched 210 kB in 1s (159 kB/s)
Traceback (most recent call last):
File “/usr/lib/cnf-update-db”, line 8, in
from CommandNotFound.db.creator import DbCreator
File “/usr/lib/python3/dist-packages/CommandNotFound/db/creator.py”, line 11, in
import apt_pkg
ModuleNotFoundError: No module named ‘apt_pkg’
Reading package lists… Done
E: Problem executing scripts APT::Update::Post-Invoke-Success ‘if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi’
E: Sub-process returned an error code

If the fix to this is known, I am willing to try. But I gotta say, it would be easy for me to never upgrade, use Timeshift and go back. to a wonderfully well-working system.

one quick thing to try would be:

1 Like

This is what I get when I try that:

cliff@cliff-desktop:~$ apt --fix broken install
apt
Usage: apt command [options]
apt help command [options]

Commands:
add-repository - Add entries to apt sources.list
autoclean - Erase old downloaded archive files
autoremove - Remove automatically all unused packages
build - Build binary or source packages from sources
build-dep - Configure build-dependencies for source packages
changelog - View a package’s changelog
check - Verify that there are no broken dependencies
clean - Erase downloaded archive files
contains - List packages containing a file
content - List files contained in a package
deb - Install a .deb package
depends - Show raw dependency information for a package
dist-upgrade - Upgrade the system by removing/installing/upgrading packages
download - Download the .deb file for a package
edit-sources - Edit /etc/apt/sources.list with your preferred text editor
dselect-upgrade - Follow dselect selections
full-upgrade - Same as ‘dist-upgrade’
held - List all held packages
help - Show help for a command
hold - Hold a package
install - Install/upgrade packages
list - List packages based on package names
policy - Show policy settings
purge - Remove packages and their configuration files
recommends - List missing recommended packages for a particular package
rdepends - Show reverse dependency information for a package
reinstall - Download and (possibly) reinstall a currently installed package
remove - Remove packages
search - Search for a package by name and/or expression
show - Display detailed information about a package
showhold - Same as ‘held’
showsrc - Display all the source package records that match the given package name
source - Download source archives
sources - Same as ‘edit-sources’
unhold - Unhold a package
update - Download lists of new/upgradable packages
upgrade - Perform a safe upgrade
version - Show the installed version of a package

Clearly something is missing from the apt command.

needs more sudo! :man_superhero: you have to run that apt command with sudo:
sudo apt --fix-broken install

1 Like

Same results. It seems that a module apt_pkg is missing. Would a dpkg command work? If so, what syntax?

there are a few other suggestions here.

i would start with sudo apt update --fix-missing to see if it can deal with that module. if not, my next step would be to see if dpkg could deal with the situation: sudo dpkg --configure -a.

the last thing i would try in your situation would be to take another run at the upgrade process since it clearly broke down at a certain point. beyond that, i would roll back to 19.3 and either stick with what works or wait for the first point release (mint 20.1) to see if some of the bugs had been worked out yet.

1 Like

beat me to it :slight_smile:

1 Like

Ay, laddie, the plot thickens!

This HUGE output was the result.

cliff@cliff-desktop:~$ sudo dpkg --configure -a
[sudo] password for cliff:
dpkg: dependency problems prevent configuration of libharfbuzz-dev:amd64:
libharfbuzz-dev:amd64 depends on gir1.2-harfbuzz-0.0 (= 2.6.4-1ubuntu4); however:
Version of gir1.2-harfbuzz-0.0:amd64 on system is 1.7.2-1ubuntu1.

dpkg: error processing package libharfbuzz-dev:amd64 (–configure):
dependency problems - leaving unconfigured
Setting up python3 (3.8.2-0ubuntu2) …
running python rtupdate hooks for python3.8…
E: py3compile:183: cannot create directory /usr/share/hplip/ui5/pycache: FileNotFoundError(2, ‘No such file or directory’)
/usr/share/hplip/base/utils.py:2061: SyntaxWarning: “is” with a literal. Did you mean “==”?
if weburl is “” or weburl is None:
/usr/share/hplip/check-plugin.py:116: SyntaxWarning: “is” with a literal. Did you mean “==”?
if log_level is ‘debug’:
/usr/share/hplip/check.py:685: SyntaxWarning: “is not” with a literal. Did you mean “!=”?
if ‘getfacl’ not in g and ‘’ is not g and ‘file’ not in g:
/usr/share/hplip/installer/core_install.py:2060: SyntaxWarning: “is” with a literal. Did you mean “==”?
if home_dir is “”:
Traceback (most recent call last):
File “/usr/lib/python3.8/py_compile.py”, line 197, in main
compile(filename, doraise=True)
File “/usr/lib/python3.8/py_compile.py”, line 142, in compile
source_bytes = loader.get_data(file)
File “”, line 972, in get_data
FileNotFoundError: [Errno 2] No such file or directory: ‘/usr/share/hplip/ui5/aboutdialog.py’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/lib/python3.8/runpy.py”, line 193, in _run_module_as_main
return _run_code(code, main_globals, None,
File “/usr/lib/python3.8/runpy.py”, line 86, in _run_code
exec(code, run_globals)
File “/usr/lib/python3.8/py_compile.py”, line 218, in
sys.exit(main())
File “/usr/lib/python3.8/py_compile.py”, line 204, in main
if quiet < 2:
NameError: name ‘quiet’ is not defined
error running python rtupdate hook hplip-data
dpkg: error processing package python3 (–configure):
installed python3 package post-installation script subprocess returned error exit status 4
dpkg: dependency problems prevent configuration of python3-newt:amd64:
python3-newt:amd64 depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-newt:amd64 depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-newt:amd64 depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-newt:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-markupsafe:
python3-markupsafe depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-markupsafe depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-markupsafe depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-markupsafe (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-psutil:
python3-psutil depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-psutil depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-psutil depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-psutil (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-pil:amd64:
python3-pil:amd64 depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-pil:amd64 depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-pil:amd64 depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-pil:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-gi:
python3-gi depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-gi depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-gi depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-gi (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-reportlab-accel:amd64:
python3-reportlab-accel:amd64 depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-reportlab-accel:amd64 depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.

dpkg: error processing package python3-reportlab-accel:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-setproctitle:amd64:
python3-setproctitle:amd64 depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-setproctitle:amd64 depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-setproctitle:amd64 depends on python3:any (>= 3.2~); however:
Package python3 is not configured yet.

dpkg: error processing package python3-setproctitle:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-netifaces:
python3-netifaces depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-netifaces depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.

dpkg: error processing package python3-netifaces (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libicu-le-hb-dev:amd64:
libicu-le-hb-dev:amd64 depends on libharfbuzz-dev; however:
Package libharfbuzz-dev:amd64 is not configured yet.

dpkg: error processing package libicu-le-hb-dev:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-uno:
python3-uno depends on python3:any; however:
Package python3 is not configured yet.
python3-uno depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-uno depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.

dpkg: error processing package python3-uno (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-protobuf:
python3-protobuf depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-protobuf depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-protobuf depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-protobuf (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-tinycss:
python3-tinycss depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-tinycss depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-tinycss depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-tinycss (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-systemd:
python3-systemd depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-systemd depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-systemd depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-systemd (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libreoffice:
libreoffice depends on python3-uno (>= 4.4.0~beta2); however:
Package python3-uno is not configured yet.

dpkg: error processing package libreoffice (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-pam:
python3-pam depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-pam depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.

dpkg: error processing package python3-pam (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libglib2.0-dev-bin:
libglib2.0-dev-bin depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package libglib2.0-dev-bin (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-icu:
python3-icu depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-icu depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-icu depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-icu (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of rhythmbox-plugins:
rhythmbox-plugins depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
rhythmbox-plugins depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
rhythmbox-plugins depends on python3:any; however:
Package python3 is not configured yet.
rhythmbox-plugins depends on python3-gi; however:
Package python3-gi is not configured yet.

dpkg: error processing package rhythmbox-plugins (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-yaml:
python3-yaml depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-yaml depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-yaml depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-yaml (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of python3-parted:
python3-parted depends on python3 (<< 3.9); however:
Package python3 is not configured yet.
python3-parted depends on python3 (>= 3.8~); however:
Package python3 is not configured yet.
python3-parted depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package python3-parted (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libglib2.0-dev:amd64:
libglib2.0-dev:amd64 depends on libglib2.0-dev-bin (= 2.64.3-1~ubuntu20.04.1); however:
Package libglib2.0-dev-bin is not configured yet.

dpkg: error processing package libglib2.0-dev:amd64 (–configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent processing triggers for gnome-menus:
gnome-menus depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package gnome-menus (–configure):
dependency problems - leaving triggers unprocessed
dpkg: dependency problems prevent processing triggers for ufw:
ufw depends on python3:any; however:
Package python3 is not configured yet.

dpkg: error processing package ufw (–configure):
dependency problems - leaving triggers unprocessed
dpkg: dependency problems prevent processing triggers for mintsystem:
mintsystem depends on python3 (>= 3.3); however:
Package python3 is not configured yet.

dpkg: error processing package mintsystem (–configure):
dependency problems - leaving triggers unprocessed
Errors were encountered while processing:
libharfbuzz-dev:amd64
python3
python3-newt:amd64
python3-markupsafe
python3-psutil
python3-pil:amd64
python3-gi
python3-reportlab-accel:amd64
python3-setproctitle:amd64
python3-netifaces
libicu-le-hb-dev:amd64
python3-uno
python3-protobuf
python3-tinycss
python3-systemd
libreoffice
python3-pam
libglib2.0-dev-bin
python3-icu
rhythmbox-plugins
python3-yaml
python3-parted
libglib2.0-dev:amd64
gnome-menus
ufw
mintsystem

Two things I would like to ask:

  • Did you run mintupgrade check command? It performs some sanity check.
  • Did you create a system snapshot before trying the upgrade?
1 Like

Yes to both. There were no flags in the mintupgrade check results, and I have daily timeshift snapshots. I tried this once before about two weeks ago, same results. THis time, however, I did some things that I thought had caused the problem, such as removing foreign repos.

The easy way out would be to restore the latest system snapshot.

Then I am best off abandoning the upgrade? It would be nice to know why, but sticking with 19.3 is OK with me too.

are you asking why the upgrade didn’t work or why restoring to a working snapshot seems like a good idea?

1 Like

About the upgrade. I have done snapshot restorations, and they always go fine. THis issue with python dependencies is most perplexing.

1 Like

why does any software fail? command x expects result y, but for whatever reason z pops out instead. there is probably a one specific point in your syslog or journalctl where the update goes sideways, but digging it out would probably take some determination.

out of curiosity i ran apt-cache rdepends python3 to see what all depends on it. it is quite a list that includes cinnamon. seeing the list of all the errors your system is throwing, i am actually impressed that it is even minimally functional.

1 Like

Funny you should say that. After trying a few proposed fixes, rebooting led to a system that was not even minimally functional. In recover mode, I ran timeline from the command line and got my 19.3 back.

So I have my answer. Mint is, for me, not upgradable.

1 Like

it would definitely seem like an in-place upgrade is not likely. i have read people say they won’t even download ubuntu until it hits the first point release (20.04.1 for example) to try and make sure some of the early bugs get worked out. obviously there is no guarantee that waiting a bit will make your system suddenly play nice, but maybe?

then again there is always the clean install upgrade path.

1 Like

Might be a good choice if you are happy with the way your system is running. As you already know (I’m sure) support for 19.3 is good until April 2023. Still plenty of time to perform a clean install, if needed.

2 Likes

Cliff, it was suggested to run “apt --fix-broken install” but according to your pasted info you were trying to run “apt --fix broken install”. You were missing the hyphen between fix and broken. I don’t know much just something I noticed.

3 Likes

Welp! That sure answered my question. I’ve been thinking, for a week, I’d upgrade, but while I’m not a newbie, my Linux troubleshooting gives me nightmares. After reading this, I think I’ll wait awhile. :smile: I think I need to make note of the commands, just in case, though. Whew! Glad I read this first.

2 Likes