Ubuntu – Problems removing PPA using ppa-purge for upgrade to Ubuntu 20.04

package-managementppaupdates

I followed this answer: https://askubuntu.com/a/646918/1118094
I get:

sudo ppa-purge ppa:haraldhv/shotcut
sudo ppa-purge ppa:indicator-brightness/ppa
sudo ppa-purge ppa:wireshark-dev/stable
sudo ppa-purge ppa:jonathonf/ffmpeg-4
sudo ppa-purge ppa:remmina-ppa-team/remmina-next
sudo ppa-purge ppa:graphics-drivers/ppa
sudo ppa-purge ppa:linuxuprising/java

So I tried:

(base) nobu@gold3forever:~$ sudo ppa-purge ppa:haraldhv/shotcut
Updating packages lists
E: The repository 'http://apt.postgresql.org/pub/repos/apt bionic Release' does not have a Release file.
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/ InRelease: The following signatures were invalid: EXPKEYSIG 51716619E084DAB9 Michael Rutter <marutter@gmail.com>
Warning:  apt-get update failed for some reason

It's still there:

sudo ppa-purge ppa:haraldhv/shotcut
sudo ppa-purge ppa:indicator-brightness/ppa
sudo ppa-purge ppa:wireshark-dev/stable
sudo ppa-purge ppa:jonathonf/ffmpeg-4
sudo ppa-purge ppa:remmina-ppa-team/remmina-next
sudo ppa-purge ppa:graphics-drivers/ppa
sudo ppa-purge ppa:linuxuprising/java

I did this and removed all of them: https://help.ubuntu.com/community/Repositories/Ubuntu#Removing_.26_Disabling_Repositories
But I still get this:

Could not calculate the upgrade 

An unresolvable problem occurred while calculating the upgrade. 

This was likely caused by: 
* Unofficial software packages not provided by Ubuntu 
Please use the tool 'ppa-purge' from the ppa-purge 
package to remove software from a Launchpad PPA and 
try the upgrade again. 

If none of this applies, then please report this bug using the 
command 'ubuntu-bug ubuntu-release-upgrader-core' in a terminal. If 
you want to investigate this yourself the log files in 
'/var/log/dist-upgrade' will contain details about the upgrade. 
Specifically, look at 'main.log' and 'apt.log'. 


Restoring original system state

Aborting
Reading package lists... Done    
Building dependency tree          
Reading state information... Done
(base) nobu@gold3forever:~$ 

So I gave up for now and did as advised:

ubuntu-bug ubuntu-release-upgrader-core

Edit: I'm still getting errors trying to follow the answer's advice so printed out main.log

(base) nobu@gold3forever:~$ cat /var/log/dist-upgrade/main.log
2020-11-01 11:12:26,729 INFO Using config files '['./DistUpgrade.cfg.bionic']'
2020-11-01 11:12:26,729 INFO uname information: 'Linux gold3forever 5.4.0-52-generic #57~18.04.1-Ubuntu SMP Thu Oct 15 14:04:49 UTC 2020 x86_64'
2020-11-01 11:12:27,342 INFO apt version: '1.6.12ubuntu0.1'
2020-11-01 11:12:27,342 INFO python version: '3.6.9 (default, Oct  8 2020, 12:12:24) 
[GCC 8.4.0]'
2020-11-01 11:12:27,347 INFO release-upgrader version '20.04.28' started
2020-11-01 11:12:27,360 INFO locale: 'en_CA' 'UTF-8'
2020-11-01 11:12:27,429 INFO screen could not be run
2020-11-01 11:12:27,472 DEBUG Using 'DistUpgradeViewText' view
2020-11-01 11:12:27,535 DEBUG enable dpkg --force-overwrite
2020-11-01 11:12:27,582 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'
2020-11-01 11:12:39,571 DEBUG lsb-release: 'bionic'
2020-11-01 11:12:39,572 DEBUG _pythonSymlinkCheck run
2020-11-01 11:12:39,573 DEBUG openCache()
2020-11-01 11:12:39,574 DEBUG quirks: running PreCacheOpen
2020-11-01 11:12:39,574 DEBUG running Quirks.PreCacheOpen
2020-11-01 11:12:42,431 DEBUG Comparing 5.4.0-48 with 
2020-11-01 11:12:42,431 DEBUG Comparing 5.4.0-52 with 5.4.0-48
2020-11-01 11:12:42,972 DEBUG /openCache(), new cache size 100275
2020-11-01 11:12:42,972 DEBUG need_server_mode(): run in 'desktop' mode, (because of pkg 'ubuntu-desktop')
2020-11-01 11:12:42,972 DEBUG checkViewDepends()
2020-11-01 11:12:42,974 DEBUG running doUpdate() (showErrors=False)
2020-11-01 11:12:46,304 DEBUG openCache()
2020-11-01 11:12:48,422 DEBUG Comparing 5.4.0-48 with 
2020-11-01 11:12:48,422 DEBUG Comparing 5.4.0-52 with 5.4.0-48
2020-11-01 11:12:48,988 DEBUG /openCache(), new cache size 100275
2020-11-01 11:12:48,989 DEBUG doPostInitialUpdate
2020-11-01 11:12:48,989 DEBUG quirks: running focalPostInitialUpdate
2020-11-01 11:12:48,989 DEBUG running Quirks.focalPostInitialUpdate
2020-11-01 11:12:53,075 DEBUG Snap core18 is installed
2020-11-01 11:12:53,430 DEBUG Snap gnome-3-34-1804 is installed
2020-11-01 11:12:53,432 DEBUG Snap gnome-3-34-1804 is not tracking the release channel
2020-11-01 11:12:53,784 DEBUG Snap gtk-common-themes is installed
2020-11-01 11:12:54,461 DEBUG Snap gnome-3-28-1804 is installed
2020-11-01 11:12:54,495 DEBUG Snap gnome-3-28-1804 is being used by gedit. Switching it to stable track
2020-11-01 11:12:54,920 DEBUG Snap gnome-calculator is installed
2020-11-01 11:12:55,275 DEBUG Snap gnome-characters is installed
2020-11-01 11:12:56,157 DEBUG Snap gnome-logs is installed
2020-11-01 11:13:01,670 DEBUG MetaPkgs: ubuntu-desktop
2020-11-01 11:13:13,335 DEBUG Foreign: code containerd.io docker-ce docker-ce-cli google-chrome-stable libodbc1 nodejs odbcinst odbcinst1debian2 packages-microsoft-prod sbt unixodbc
2020-11-01 11:13:13,336 DEBUG Obsolete: 
2020-11-01 11:13:13,336 DEBUG updateSourcesList()
2020-11-01 11:13:13,356 DEBUG rewriteSourcesList() with mirror_check
2020-11-01 11:13:13,356 DEBUG ['ubuntu-minimal', 'ubuntu-standard']
2020-11-01 11:13:13,357 DEBUG Checking pkg: ubuntu-minimal
2020-11-01 11:13:13,361 DEBUG Checking pkg: ubuntu-standard
2020-11-01 11:13:13,365 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic main restricted'
2020-11-01 11:13:13,366 DEBUG verifySourcesListEntry: deb http://ca.archive.ubuntu.com/ubuntu/ focal main restricted
2020-11-01 11:13:13,366 DEBUG url_downloadable: http://ca.archive.ubuntu.com/ubuntu//dists/focal/Release
2020-11-01 11:13:13,366 DEBUG s='http' n='ca.archive.ubuntu.com' p='/ubuntu//dists/focal/Release' q='' f=''
2020-11-01 11:13:13,653 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal main restricted' updated to new dist
2020-11-01 11:13:13,653 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic-updates main restricted'
2020-11-01 11:13:13,654 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal-updates main restricted' updated to new dist
2020-11-01 11:13:13,654 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic universe'
2020-11-01 11:13:13,654 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal universe' updated to new dist
2020-11-01 11:13:13,655 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic-updates universe'
2020-11-01 11:13:13,655 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal-updates universe' updated to new dist
2020-11-01 11:13:13,655 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic multiverse'
2020-11-01 11:13:13,656 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal multiverse' updated to new dist
2020-11-01 11:13:13,656 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic-updates multiverse'
2020-11-01 11:13:13,656 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal-updates multiverse' updated to new dist
2020-11-01 11:13:13,656 DEBUG examining: 'deb http://ca.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse'
2020-11-01 11:13:13,657 DEBUG entry 'deb http://ca.archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse' updated to new dist
2020-11-01 11:13:13,657 DEBUG examining: 'deb http://security.ubuntu.com/ubuntu bionic-security main restricted'
2020-11-01 11:13:13,657 DEBUG verifySourcesListEntry: deb http://security.ubuntu.com/ubuntu focal main restricted
2020-11-01 11:13:13,657 DEBUG url_downloadable: http://security.ubuntu.com/ubuntu/dists/focal/Release
2020-11-01 11:13:13,657 DEBUG s='http' n='security.ubuntu.com' p='/ubuntu/dists/focal/Release' q='' f=''
2020-11-01 11:13:14,002 DEBUG entry 'deb http://security.ubuntu.com/ubuntu focal-security main restricted' updated to new dist
2020-11-01 11:13:14,003 DEBUG examining: 'deb http://security.ubuntu.com/ubuntu bionic-security universe'
2020-11-01 11:13:14,006 DEBUG entry 'deb http://security.ubuntu.com/ubuntu focal-security universe' updated to new dist
2020-11-01 11:13:14,006 DEBUG examining: 'deb http://security.ubuntu.com/ubuntu bionic-security multiverse'
2020-11-01 11:13:14,007 DEBUG entry 'deb http://security.ubuntu.com/ubuntu focal-security multiverse' updated to new dist
2020-11-01 11:13:14,007 DEBUG examining: 'deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable'
2020-11-01 11:13:14,010 DEBUG entry '# deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,010 DEBUG examining: 'deb https://dl.yarnpkg.com/debian/ stable main'
2020-11-01 11:13:14,012 DEBUG entry '# deb https://dl.yarnpkg.com/debian/ stable main # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,012 DEBUG examining: 'deb https://dl.bintray.com/sbt/debian /'
2020-11-01 11:13:14,014 DEBUG entry '# deb https://dl.bintray.com/sbt/debian / # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,015 DEBUG examining: 'deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/debian/10/prod buster main'
2020-11-01 11:13:14,017 DEBUG entry '# deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/debian/10/prod buster main # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,017 DEBUG examining: 'deb https://deb.nodesource.com/node_12.x bionic main'
2020-11-01 11:13:14,019 DEBUG entry '# deb https://deb.nodesource.com/node_12.x focal main # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,019 DEBUG examining: 'deb-src https://deb.nodesource.com/node_12.x bionic main'
2020-11-01 11:13:14,021 DEBUG entry '# deb-src https://deb.nodesource.com/node_12.x focal main # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:14,021 DEBUG examining: 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main'
2020-11-01 11:13:14,022 DEBUG entry '# deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main # disabled on upgrade to focal' was disabled (unknown mirror)
2020-11-01 11:13:17,820 DEBUG running doUpdate() (showErrors=True)
2020-11-01 11:14:00,798 DEBUG openCache()
2020-11-01 11:14:02,252 DEBUG Comparing 5.4.0-48 with 
2020-11-01 11:14:02,252 DEBUG Comparing 5.4.0-52 with 5.4.0-48
2020-11-01 11:14:02,624 DEBUG /openCache(), new cache size 66760
2020-11-01 11:14:02,625 DEBUG need_server_mode(): run in 'desktop' mode, (because of pkg 'ubuntu-desktop')
2020-11-01 11:14:02,626 DEBUG quirks: running PreDistUpgradeCache
2020-11-01 11:14:02,626 DEBUG running Quirks.PreDistUpgradeCache
2020-11-01 11:14:02,626 INFO checking for python-dbg
2020-11-01 11:14:02,626 INFO checking for python-doc
2020-11-01 11:14:02,626 INFO checking for python-minimal
2020-11-01 11:14:02,626 INFO installing python-is-python2 because python-minimal was installed
2020-11-01 11:14:02,626 DEBUG Installing 'python-is-python2' (python-minimal was installed on the system)
2020-11-01 11:14:02,942 ERROR Dist-upgrade failed: 'E:Unable to correct problems, you have held broken packages.'
2020-11-01 11:14:02,946 DEBUG abort called
2020-11-01 11:14:02,957 DEBUG openCache()
2020-11-01 11:14:08,062 DEBUG Comparing 5.4.0-48 with 
2020-11-01 11:14:08,062 DEBUG Comparing 5.4.0-52 with 5.4.0-48
2020-11-01 11:14:08,670 DEBUG /openCache(), new cache size 100275
(base) nobu@gold3forever:~$ 

It says broken packages so I went through this tutorial to try to fix them: https://www.maketecheasier.com/fix-broken-packages-ubuntu/
Actually I just noticed all the PPAs I removed are back:

updates GUI

And my output of apt.log is below.

(base) nobu@gold3forever:~$ cat /var/log/dist-upgrade/apt.log
Log time: 2020-11-01 11:12:42.965940
Log time: 2020-11-01 11:12:48.970968
Log time: 2020-11-01 11:14:02.597658
  MarkInstall python-is-python2:amd64 < none -> 2.7.17-4 @un uN Ib > FU=1
  Installing python2 as Depends of python-is-python2
    MarkInstall python2:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib > FU=0
    Installing python2-minimal as PreDepends of python2
      MarkInstall python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib > FU=0
       Removing: python-minimal
        MarkDelete python-minimal:amd64 < 2.7.15~rc1-1 @ii mK > FU=0
    Installing libpython2-stdlib as Depends of python2
      MarkInstall libpython2-stdlib:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib > FU=0
       Removing: libpython-stdlib
        MarkDelete libpython-stdlib:amd64 < 2.7.15~rc1-1 @ii mK > FU=0
     Removing: python
      MarkDelete python:amd64 < 2.7.15~rc1-1 @ii mK Ib > FU=0
Starting pkgProblemResolver with broken count: 3
Starting 2 pkgProblemResolver with broken count: 3
Investigating (0) nodejs:amd64 < 12.19.0-1nodesource1 @ii mK Ib >
Broken nodejs:amd64 Depends on python-minimal:amd64 < 2.7.15~rc1-1 @ii gR >
  Considering python-minimal:amd64 1 as a solution to nodejs:amd64 114
  Added python-minimal:amd64 to the remove list
  Fixing nodejs:amd64 via keep of python-minimal:amd64
  MarkKeep python-minimal:amd64 < 2.7.15~rc1-1 @ii gR > FU=0
Investigating (0) python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > (< 2.7.15-2)
  Considering python-minimal:amd64 1 as a solution to python2-minimal:amd64 3
  Added python-minimal:amd64 to the remove list
  Fixing python2-minimal:amd64 via remove of python-minimal:amd64
  MarkDelete python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > FU=0
Investigating (0) python-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib >
Broken python-all-dev:amd64 Depends on libpython-all-dev:amd64 < 2.7.15~rc1-1 | 2.7.17-2ubuntu4 @ii umH > (= 2.7.17-2ubuntu4)
  Considering libpython-all-dev:amd64 0 as a solution to python-all-dev:amd64 1
  MarkKeep python-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib > FU=0
  Re-Instated libpython2-dev:amd64
  Re-Instated libpython-all-dev:amd64
  Re-Instated python2-dev:amd64
  Re-Instated python-all-dev:amd64
Investigating (0) python2-dev:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib >
Broken python2-dev:amd64 Breaks on python-dev:amd64 < 2.7.15~rc1-1 @ii mK Ib > (< 2.7.15-2)
  Considering python-dev:amd64 -1 as a solution to python2-dev:amd64 0
  Added python-dev:amd64 to the remove list
  Fixing python2-dev:amd64 via remove of python-dev:amd64
  MarkDelete python-dev:amd64 < 2.7.15~rc1-1 @ii mK Ib > FU=0
Investigating (0) libpython2-dev:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib >
Broken libpython2-dev:amd64 Breaks on libpython-dev:amd64 < 2.7.15~rc1-1 @ii mK > (< 2.7.15-2)
  Considering libpython-dev:amd64 0 as a solution to libpython2-dev:amd64 0
  MarkKeep libpython2-dev:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib > FU=0
  Holding Back libpython2-dev:amd64 rather than change libpython-dev:amd64
Investigating (0) libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib >
Broken libboost-python1.65-dev:amd64 Depends on python-dev:amd64 < 2.7.15~rc1-1 @ii mR >
  Considering python-dev:amd64 -1 as a solution to libboost-python1.65-dev:amd64 -1
  Removing libboost-python1.65-dev:amd64 rather than change python-dev:amd64
  MarkDelete libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib > FU=0
Investigating (1) nodejs:amd64 < 12.19.0-1nodesource1 @ii mK Ib >
Broken nodejs:amd64 Depends on python-minimal:amd64 < 2.7.15~rc1-1 @ii gR >
  Considering python-minimal:amd64 1 as a solution to nodejs:amd64 114
  Added python-minimal:amd64 to the remove list
  Fixing nodejs:amd64 via keep of python-minimal:amd64
  MarkKeep python-minimal:amd64 < 2.7.15~rc1-1 @ii gR > FU=0
Investigating (1) python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > (< 2.7.15-2)
  Considering python-minimal:amd64 1 as a solution to python2-minimal:amd64 3
  Added python-minimal:amd64 to the remove list
  Fixing python2-minimal:amd64 via remove of python-minimal:amd64
  MarkDelete python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > FU=0
Investigating (1) python2-dev:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib >
Broken python2-dev:amd64 Depends on libpython2-dev:amd64 < none | 2.7.17-2ubuntu4 @un uH > (= 2.7.17-2ubuntu4)
  Considering libpython2-dev:amd64 0 as a solution to python2-dev:amd64 0
  MarkKeep python2-dev:amd64 < none -> 2.7.17-2ubuntu4 @un uN Ib > FU=0
  Holding Back python2-dev:amd64 rather than change libpython2-dev:amd64
Investigating (1) libboost-python-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib >
Broken libboost-python-dev:amd64 Depends on libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mR >
  Considering libboost-python1.65-dev:amd64 -1 as a solution to libboost-python-dev:amd64 0
  Added libboost-python1.65-dev:amd64 to the remove list
  Fixing libboost-python-dev:amd64 via keep of libboost-python1.65-dev:amd64
  MarkKeep libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mR > FU=0
Investigating (1) libpython-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib >
Broken libpython-all-dev:amd64 Depends on libpython2-dev:amd64 < none | 2.7.17-2ubuntu4 @un uH > (= 2.7.17-2ubuntu4)
  Considering libpython2-dev:amd64 0 as a solution to libpython-all-dev:amd64 0
  MarkKeep libpython-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib > FU=0
  Holding Back libpython-all-dev:amd64 rather than change libpython2-dev:amd64
Investigating (1) libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib >
Broken libboost-python1.65-dev:amd64 Depends on python-dev:amd64 < 2.7.15~rc1-1 @ii mR >
  Considering python-dev:amd64 -1 as a solution to libboost-python1.65-dev:amd64 -1
  Removing libboost-python1.65-dev:amd64 rather than change python-dev:amd64
  MarkDelete libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib > FU=0
Investigating (2) nodejs:amd64 < 12.19.0-1nodesource1 @ii mK Ib >
Broken nodejs:amd64 Depends on python-minimal:amd64 < 2.7.15~rc1-1 @ii gR >
  Considering python-minimal:amd64 1 as a solution to nodejs:amd64 114
  Added python-minimal:amd64 to the remove list
  Fixing nodejs:amd64 via keep of python-minimal:amd64
  MarkKeep python-minimal:amd64 < 2.7.15~rc1-1 @ii gR > FU=0
Investigating (2) python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > (< 2.7.15-2)
  Considering python-minimal:amd64 114 as a solution to python2-minimal:amd64 3
  MarkKeep python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib > FU=0
  Holding Back python2-minimal:amd64 rather than change python-minimal:amd64
Investigating (2) python-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib >
Broken python-all-dev:amd64 Depends on libpython-all-dev:amd64 < 2.7.15~rc1-1 | 2.7.17-2ubuntu4 @ii umH > (= 2.7.17-2ubuntu4)
  Considering libpython-all-dev:amd64 0 as a solution to python-all-dev:amd64 1
  MarkKeep python-all-dev:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib > FU=0
  Removing python-all-dev:amd64 rather than change libpython-all-dev:amd64
  MarkDelete python-all-dev:amd64 < 2.7.15~rc1-1 | 2.7.17-2ubuntu4 @ii umH Ib > FU=0
Investigating (2) libboost-python-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib >
Broken libboost-python-dev:amd64 Depends on libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mR >
  Considering libboost-python1.65-dev:amd64 -1 as a solution to libboost-python-dev:amd64 0
  Added libboost-python1.65-dev:amd64 to the remove list
  Fixing libboost-python-dev:amd64 via keep of libboost-python1.65-dev:amd64
  MarkKeep libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mR > FU=0
Investigating (2) libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib >
Broken libboost-python1.65-dev:amd64 Depends on python-dev:amd64 < 2.7.15~rc1-1 @ii mR >
  Considering python-dev:amd64 -1 as a solution to libboost-python1.65-dev:amd64 0
  Added python-dev:amd64 to the remove list
  Fixing libboost-python1.65-dev:amd64 via keep of python-dev:amd64
  MarkKeep python-dev:amd64 < 2.7.15~rc1-1 @ii mR > FU=0
Investigating (2) python-dev:amd64 < 2.7.15~rc1-1 @ii mK Ib >
Broken python-dev:amd64 Depends on python:amd64 < 2.7.15~rc1-1 @ii gR > (= 2.7.15~rc1-1)
  Considering python:amd64 1 as a solution to python-dev:amd64 0
  Removing python-dev:amd64 rather than change python:amd64
  MarkDelete python-dev:amd64 < 2.7.15~rc1-1 @ii mK Ib > FU=0
Investigating (3) python2:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2:amd64 PreDepends on python2-minimal:amd64 < none | 2.7.17-2ubuntu4 @un umH > (= 2.7.17-2ubuntu4)
  Considering python2-minimal:amd64 3 as a solution to python2:amd64 5
  MarkKeep python2:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib > FU=0
  Holding Back python2:amd64 rather than change python2-minimal:amd64
Investigating (3) python-all:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib >
Broken python-all:amd64 Depends on python2:amd64 < none | 2.7.17-2ubuntu4 @un umH > (= 2.7.17-2ubuntu4)
  Considering python2:amd64 5 as a solution to python-all:amd64 2
  MarkKeep python-all:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib > FU=0
  Re-Instated python2-minimal:amd64
  Re-Instated python2:amd64
  Re-Instated python-all:amd64
Investigating (3) libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib >
Broken libboost-python1.65-dev:amd64 Depends on python-dev:amd64 < 2.7.15~rc1-1 @ii mR >
  Considering python-dev:amd64 1 as a solution to libboost-python1.65-dev:amd64 0
  Removing libboost-python1.65-dev:amd64 rather than change python-dev:amd64
  MarkDelete libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK Ib > FU=0
Investigating (4) python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.15~rc1-1 @ii gK > (< 2.7.15-2)
  Considering python-minimal:amd64 114 as a solution to python2-minimal:amd64 3
  MarkKeep python2-minimal:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib > FU=0
  Holding Back python2-minimal:amd64 rather than change python-minimal:amd64
Investigating (4) libboost-python-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib >
Broken libboost-python-dev:amd64 Depends on libboost-python1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mR >
  Considering libboost-python1.65-dev:amd64 1 as a solution to libboost-python-dev:amd64 0
  Re-Instated libboost1.71-dev:amd64
  Re-Instated gcc-10-base:amd64
  Re-Instated libgcc-s1:amd64
  Re-Instated libboost-python1.71.0:amd64
  Re-Instated libboost-python1.71-dev:amd64
  Re-Instated libboost-python-dev:amd64
Investigating (5) python2:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib >
Broken python2:amd64 PreDepends on python2-minimal:amd64 < none | 2.7.17-2ubuntu4 @un umH > (= 2.7.17-2ubuntu4)
  Considering python2-minimal:amd64 3 as a solution to python2:amd64 5
  MarkKeep python2:amd64 < none -> 2.7.17-2ubuntu4 @un umN Ib > FU=0
  Holding Back python2:amd64 rather than change python2-minimal:amd64
Investigating (5) python-all:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib >
Broken python-all:amd64 Depends on python2:amd64 < none | 2.7.17-2ubuntu4 @un umH > (= 2.7.17-2ubuntu4)
  Considering python2:amd64 5 as a solution to python-all:amd64 2
  MarkKeep python-all:amd64 < 2.7.15~rc1-1 -> 2.7.17-2ubuntu4 @ii umU Ib > FU=0
  Removing python-all:amd64 rather than change python2:amd64
  MarkDelete python-all:amd64 < 2.7.15~rc1-1 | 2.7.17-2ubuntu4 @ii umH Ib > FU=0
Investigating (5) libboost1.71-dev:amd64 < none -> 1.71.0-6ubuntu6 @un uN Ib >
Broken libboost1.71-dev:amd64 Conflicts on libboost1.65-dev:amd64 < 1.65.1+dfsg-0ubuntu5 @ii mK >
  Considering libboost1.65-dev:amd64 38 as a solution to libboost1.71-dev:amd64 0
  MarkKeep libboost1.71-dev:amd64 < none -> 1.71.0-6ubuntu6 @un uN Ib > FU=0
  Holding Back libboost1.71-dev:amd64 rather than change libboost1.65-dev:amd64
Investigating (5) libboost-python1.71-dev:amd64 < none -> 1.71.0-6ubuntu6 @un uN Ib >
Broken libboost-python1.71-dev:amd64 Depends on libboost1.71-dev:amd64 < none | 1.71.0-6ubuntu6 @un uH > (= 1.71.0-6ubuntu6)
  Considering libboost1.71-dev:amd64 0 as a solution to libboost-python1.71-dev:amd64 0
  MarkKeep libboost-python1.71-dev:amd64 < none -> 1.71.0-6ubuntu6 @un uN Ib > FU=0
  Holding Back libboost-python1.71-dev:amd64 rather than change libboost1.71-dev:amd64
Investigating (6) python-is-python2:amd64 < none -> 2.7.17-4 @un pumN Ib >
Broken python-is-python2:amd64 Depends on python2:amd64 < none | 2.7.17-2ubuntu4 @un umH >
  Considering python2:amd64 5 as a solution to python-is-python2:amd64 9999
Investigating (6) libboost-python-dev:amd64 < 1.65.1.0ubuntu1 -> 1.71.0.0ubuntu2 @ii umU Ib >
Broken libboost-python-dev:amd64 Depends on libboost-python1.71-dev:amd64 < none | 1.71.0-6ubuntu6 @un uH >
  Considering libboost-python1.71-dev:amd64 0 as a solution to libboost-python-dev:amd64 0
  MarkKeep libboost-python-dev:amd64 < 1.65.1.0ubuntu1 -> 1.71.0.0ubuntu2 @ii umU Ib > FU=0
  Removing libboost-python-dev:amd64 rather than change libboost-python1.71-dev:amd64
  MarkDelete libboost-python-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib > FU=0
Investigating (6) libboost-all-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib >
Broken libboost-all-dev:amd64 Depends on libboost-python-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umR >
  Considering libboost-python-dev:amd64 0 as a solution to libboost-all-dev:amd64 -1
    Reinst Failed because of libboost-python-dev:amd64
  MarkKeep libboost-all-dev:amd64 < 1.65.1.0ubuntu1 -> 1.71.0.0ubuntu2 @ii umU Ib > FU=0
  Removing libboost-all-dev:amd64 rather than change libboost-python-dev:amd64
  MarkDelete libboost-all-dev:amd64 < 1.65.1.0ubuntu1 | 1.71.0.0ubuntu2 @ii umH Ib > FU=0
Investigating (7) python-is-python2:amd64 < none -> 2.7.17-4 @un pumN Ib >
Broken python-is-python2:amd64 Depends on python2:amd64 < none | 2.7.17-2ubuntu4 @un umH >
  Considering python2:amd64 5 as a solution to python-is-python2:amd64 9999
Done
Log time: 2020-11-01 11:14:08.645231

It looks like it is Python related but I've been told to hold off on removing Python 2.

Best Answer

  1. Disable PPA's in Softwares Source (software-properties-gtk) and Enable all official channels (main, universe, multiverse)

  2. Run update

    sudo apt update
    sudo apt upgrade
    sudo apt dist-upgrade
    sudo apt auto-remove
    
  3. Check obsolete packages, for safe purge, if you have doubts update/ask question here.

    aptitude search '~o'
    
  4. Compare previous list to:

    aptitude search '~S (!~O|~o)  ~i'
    

    Then check all additional packages with:

    apt-cache policy <packagesname>...
    

    if any of them is available from official repository, then you need to force downgrade them, use:

    sudo apt install <packagename>=<version>...
    

    (This step could be made easier with scripting)

  5. If you are sure about previous list, packages are extra and not required by system. Simulate to check again

    aptitude -s -y remove '~o'
    
  6. Then run for real

    sudo aptitude remove '~o'
    sudo apt auto-remove
    

Go for Ubuntu upgrade again.

Related Question