1

I am fairly new to Ubuntu

My system has been failing to upgrade to 23.04 since it came out.

Instructions are:

  • Install ALL pending software updates
  • then upgrade

Unfortunately,

sudo apt full-upgrade

ends with the following message:

The following packages have been kept back:

(Package details deliberately omitted.)

0 to upgrade, 0 to newly install, 0 to remove and 4 not to upgrade.

I can see more details as expected with:

apt list --upgradable

In answer to the question whether to force the update: How to force "packages [that] have been kept back" to be installed [as] "automatic"?

The general gist was don't and wait for a fix. So how can I upgrade with out forcing the issue?

sudo do-release-upgrade

Fails as expected with:

Please install all available updates for your release before upgrading.

How can/should I get these packages to update? or do I need to delete them and their dependencies? That could be quite painful.

Or do I just carry on waiting?

1 Answers1

1

First, determine the reason why the packages are kept back.

There are two main possibilities: Phased Updates or Version Conflict

Phased updates are easy to spot and phasing can be easily skipped so you can release-upgrade:

$ sudo apt update 
[...]

$ apt policy foo [...] Version table: *** 1.1.1 500 (phasing=50%) <------------- This package is phasing [...]

// One-time (not permanent) way to immediately install Phased Updates. $ sudo apt -o APT::Get::Always-Include-Phased-Updates=true upgrade

Version conflicts look more like this: Multiple versions from multiple sources. Each version conflict must be solved or fixed before a release-upgrade is possible. Happily, they are usually not difficult.

$ sudo apt update
[...]

$ apt policy foo foo: Installed: 1.2 Candidate: 1.2 Version table: *** 1.1 500 500 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages 1.2 500 500 http://someplace-else.org/ stable amd64 Packages <--- The Problem 100 /var/lib/dpkg/status

// Revert to the compatible Ubuntu package by specifying the version $ sudo apt install foo=1.1

// Delete or disable the source that provides the conflicting package(s) $ sudo apt edit-sources

// Since your sources just changed: $ sudo apt update

user535733
  • 68,493