linuxmint / mintupgrade

40 stars 16 forks source link

Mintupgrade to 21 requires for downgrading packages that 20.3 automatically set up to higher versions #27

Open nicolasmol opened 2 years ago

nicolasmol commented 2 years ago

Hi everyone It's somewhere though to understand if upgrading to 21 has been or not officially announced, but in any case if this can help developers, let me share my experience which leads me to give up for now the updgrade.

Mintupgrade requires the following packages to be downgraded:

DEBIAN_FRONTEND=noninteractive DEBIAN_PRIORITY=critical apt-get install --allow-downgrades -fyq -o Dpkg::Options::="--force-confold" -o Dpkg::Options::="--force-overwrite" libapache2-mod-php=2:7.4+75 libapache2-mod-php7.4=7.4.3-4ubuntu2.12 libargon2-1=0~20171227-0.2 libgd3=2.2.5-5.2ubuntu2.1 libgd3:i386=2.2.5-5.2ubuntu2.1 libidn2-0=2.2.0-2 libidn2-0:i386=2.2.0-2 libpcre16-3=2:8.39-12ubuntu0.1 libpcre2-16-0=10.34-7 libpcre2-16-0:i386=10.34-7 libpcre2-32-0=10.34-7 libpcre2-8-0=10.34-7 libpcre2-8-0:i386=10.34-7 libpcre2-dev=10.34-7 libpcre3=2:8.39-12ubuntu0.1 libpcre3-dev=2:8.39-12ubuntu0.1 libpcre32-3=2:8.39-12ubuntu0.1 libpcre3:i386=2:8.39-12ubuntu0.1 libpcrecpp0v5=2:8.39-12ubuntu0.1 libxml2=2.9.10+dfsg-5ubuntu0.20.04.4 libxml2:i386=2.9.10+dfsg-5ubuntu0.20.04.4 libzstd1=1.4.4+dfsg-3ubuntu0.1 libzstd1:i386=1.4.4+dfsg-3ubuntu0.1 ovmf=0~20191122.bd85bf54-2ubuntu3.3 php-apcu=5.1.18+4.0.11-1build1 php-bz2=2:7.4+75 php-common=2:75 php-curl=2:7.4+75 php-gd=2:7.4+75 php-imagick=3.4.4-4 php-intl=2:7.4+75 php-mbstring=2:7.4+75 php-mysql=2:7.4+75 php-xdebug=2.9.2+2.8.1+2.5.5-1build1 php-xml=2:7.4+75 php-zip=2:7.4+75 php7.4-cli=7.4.3-4ubuntu2.12 php7.4-common=7.4.3-4ubuntu2.12 php7.4-gd=7.4.3-4ubuntu2.12 php7.4-json=7.4.3-4ubuntu2.12 php7.4-mysql=7.4.3-4ubuntu2.12 php7.4-opcache=7.4.3-4ubuntu2.12 php7.4-readline=7.4.3-4ubuntu2.12 qemu-block-extra=1:4.2-3ubuntu6.23 qemu-efi-aarch64=0~20191122.bd85bf54-2ubuntu3.3 qemu-efi-arm=0~20191122.bd85bf54-2ubuntu3.3 qemu-system=1:4.2-3ubuntu6.23 qemu-system-arm=1:4.2-3ubuntu6.23 qemu-system-common=1:4.2-3ubuntu6.23 qemu-system-data=1:4.2-3ubuntu6.23 qemu-system-gui=1:4.2-3ubuntu6.23 qemu-system-mips=1:4.2-3ubuntu6.23 qemu-system-misc=1:4.2-3ubuntu6.23 qemu-system-ppc=1:4.2-3ubuntu6.23 qemu-system-s390x=1:4.2-3ubuntu6.23 qemu-system-sparc=1:4.2-3ubuntu6.23 qemu-system-x86=1:4.2-3ubuntu6.23 qemu-utils=1:4.2-3ubuntu6.23

but fails doing it by itself for anyone of them pretended as "broken" in this list

Reading package lists...
Building dependency tree...
Reading state information...
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:
 php-bz2 : Depends: php7.4-bz2 but it is not going to be installed
 php-curl : Depends: php7.4-curl but it is not going to be installed
 php-intl : Depends: php7.4-intl but it is not going to be installed
 php-mbstring : Depends: php7.4-mbstring but it is not going to be installed
 php-xml : Depends: php7.4-xml but it is not going to be installed
 php-zip : Depends: php7.4-zip but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

I began to try some investigation work to identify the guilty ones doing to downgrades manually. Since any of the command lines sudo apt --fix-missing update nor the GUI tool is able to find some broken package, I tried yesterday evening the two first "libargon2-1" and "libgd3" then I gave up continuing this task for a good rest.

And guess what I see this morning? That the mint 20.3 update tool has detected the need to upgrade back again these two previously downgraded packages which demonstrates that their installation was not due to an intentional action on myself.

So what to conclude about this mintupgrade tool ? Is it ready or too soon and buggy and we should be waiting for a next release ?

mtwebster commented 2 years ago

What are the contents of /etc/apt/sources.list.d/official-package-repositories.list in this situation?

You are using mintupgrade 2022.08.05?

What is the output of apt policy php-bz2?

Do you have any php-related PPAs set up?

nicolasmol commented 2 years ago

cat /etc/apt/sources.list.d/official-package-repositories.list

deb http://packages.linuxmint.com una main upstream import backport

deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ focal partner

mintupgrade version is 2022.08.05 yes

apt policy php-bz

php-bz2:
  Installé : 2:8.1+92+ubuntu20.04.1+deb.sury.org+2
  Candidat : 2:8.1+92+ubuntu20.04.1+deb.sury.org+2
 Table de version :
 *** 2:8.1+92+ubuntu20.04.1+deb.sury.org+2 500
        500 http://ppa.launchpad.net/ondrej/php/ubuntu focal/main amd64 Packages
        500 http://ppa.launchpad.net/ondrej/php/ubuntu focal/main i386 Packages
        100 /var/lib/dpkg/status
     2:7.4+75 500
        500 http://archive.ubuntu.com/ubuntu focal/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu focal/universe i386 Packages

List of my installed PPA

deb http://ppa.launchpad.net/ondrej/php/ubuntu focal main
deb http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal main
deb http://ppa.launchpad.net/papirus/papirus/ubuntu focal main
deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x focal main
deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x focal main
deb http://ppa.launchpad.net/maarten-fonville/android-studio/ubuntu focal main
deb http://ppa.launchpad.net/flexiondotorg/quickemu/ubuntu focal main
deb http://packages.linuxmint.com una main upstream import backport
deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ focal partner
deb [arch=amd64 signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main
deb https://dl.yarnpkg.com/debian/ stable main
deb [arch=amd64] https://dl.google.com/linux/chrome/deb/ stable main
deb http://ppa.launchpad.net/gerardpuig/ppa/ubuntu focal main
deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/code stable main
nicolasmol commented 2 years ago

So it appears that the check pass the tests if we follow this guide before running mintupgrade : https://techviewleo.com/upgrade-to-linux-mint-21-from-linux-mint-20/ But since I'm not convinced, I didn't want to go through with the installation.

Is not suppose this mintupgrade doing by itself this ?

sudo sed -i 's/una/vanessa/' /etc/apt/sources.list
sudo sed -i 's/una/vanessa/' /etc/apt/sources.list.d/official-package-repositories.list
sudo sed -i 's/focal/jammy/' /etc/apt/sources.list
sudo sed -i 's/focal/jammy/' /etc/apt/sources.list.d/official-package-repositories.list
ghost commented 2 years ago

Similar problem, Mint 20.3 Cinnamon to 21.0 using Upgrade Tool 2022.08.05. Upgrade Tool says packages need to be downgraded but clicking "Fix" results in this in the terminal:

DEBIAN_FRONTEND=noninteractive DEBIAN_PRIORITY=critical apt-get install --allow-downgrades -fyq -o Dpkg::Options::="--force-confold" -o Dpkg::Options::="--force-overwrite" git=1:2.25.1-1ubuntu3.5 git-man=1:2.25.1-1ubuntu3.5 inkscape=0.92.5-1ubuntu1.1 kdenlive=4:19.12.3-0ubuntu1 kdenlive-data=4:19.12.3-0ubuntu1 kicad=5.1.5+dfsg1-2build2 kicad-demos=5.1.5+dfsg1-2build2 kicad-doc-en=5.1.5+dfsg1-2build2 kicad-footprints=5.1.5-1 kicad-libraries=5.1.5+dfsg1-2build2 kicad-packages3d=5.1.5-1 kicad-symbols=5.1.5-1 kicad-templates=5.1.5-1 musescore-general-soundfont-small=0.1.9-1 musescore3-common=3.2.3+dfsg1-4build1 secureboot-db=1.5 wine-stable=3.0.1ubuntu1
Reading package lists...
Building dependency tree...
Reading state information...
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:
 kicad : Depends: libocct-data-exchange-7.3 but it is not going to be installed
         Depends: libocct-foundation-7.3 but it is not going to be installed
         Depends: libocct-modeling-algorithms-7.3 but it is not going to be installed
         Depends: libocct-modeling-data-7.3 but it is not going to be installed
         Depends: libocct-ocaf-7.3 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Error - Return code: 100

cat /etc/apt/sources.list.d/official-package-repositories.list

deb http://packages.linuxmint.com una main upstream import backport #id:linuxmint_main

deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ focal partner

apt policy kicad

kicad:
  Installed: 6.0.7-0-202207261932+f9a2dced07~116~ubuntu20.04.1
  Candidate: 6.0.7-0-202207261932+f9a2dced07~116~ubuntu20.04.1
  Version table:
 *** 6.0.7-0-202207261932+f9a2dced07~116~ubuntu20.04.1 500
        500 http://ppa.launchpad.net/kicad/kicad-6.0-releases/ubuntu focal/main amd64 Packages
        100 /var/lib/dpkg/status
     5.1.5+dfsg1-2build2 500
        500 http://archive.ubuntu.com/ubuntu focal/universe amd64 Packages

sudo grep -rhE ^deb /etc/apt/sources.list*

deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
deb http://ppa.launchpad.net/kdenlive/kdenlive-stable/ubuntu focal main
deb http://ppa.launchpad.net/kicad/kicad-dev-nightly/ubuntu focal main
deb http://packages.linuxmint.com una main upstream import backport #id:linuxmint_main
deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ focal partner
deb http://ppa.launchpad.net/alessandro-strada/ppa/ubuntu focal main
deb http://ppa.launchpad.net/git-core/ppa/ubuntu focal main
deb http://ppa.launchpad.net/mscore-ubuntu/mscore3-stable/ubuntu focal main
deb http://ppa.launchpad.net/inkscape.dev/stable/ubuntu focal main
deb http://ppa.launchpad.net/kicad/kicad-6.0-releases/ubuntu focal main
nicolasmol commented 2 years ago

@holmesrichards have you tried the solution I found and suggested in my last answer ? Personally, I didn't dare for fear of making a mistake, without a prior response from the developers. Besides, I forgot to tell them this: this problem is all the more strange since my 20.3 is freshly installed not more than since the beginning of July

mtwebster commented 2 years ago

@nicolasmol It looks like your issue is due to the following:

The versionless php packages - php-bz2, php-curl... - are really their versioned counterparts - php8.1-bz2, etc... The versionless ones exist to make it easy to install the latest version of those packages.

The downgrading is stuck because there's no 'downgrade' to php-bz2 - it only exists as 8.1 on that PPA. Manually installing the downgraded full versions of those packages should help out apt enough to continue - if you manually install php7.4-bz2 and so on.

This issue is a shortcoming of apt and pitfall of having those generic package names.

ghost commented 2 years ago

There are two things here, the fact that apt can't downgrade some packages (which is not an issue) and the way the Upgrade Tool handles, or fails to handle, such errors (which is). There's nothing in the GUI to indicate the problem, it just sends you back over and over to the same dialog with no explanation. From the terminal output, if you think to look at it, you can see the apt problem, but no hint is given there or in the GUI as to how the user can proceed.

nicolasmol commented 2 years ago

@mtwebster Personally, my question is more this one: would be the final upgrade done and stable if before running mintupgrade I do this, since apparently when doing it, mintupgrade is able to go without prompting any error until the ultimate step "download & install"

sudo sed -i 's/focal/jammy/' /etc/apt/sources.list
sudo sed -i 's/focal/jammy/' /etc/apt/sources.list.d/official-package-repositories.list

in addition you seem to point php as being the problem, but what's about those I did not even know their role and I don't remember to be responsible for their installation...as I said previously I took example only the 2 first libargon2-1, libdgd3...etc...maybe more.