[Bug 2025462] Re: Apt deletes ubuntu-desktop during dist-upgrade
Julian Andres Klode
2025462 at bugs.launchpad.net
Fri Jul 14 15:28:46 UTC 2023
** Description changed:
[Impact]
gnome-shell gets removed on upgrades of gnome-shell and mutter if due to phasing we can only upgrade src:gnome-shell.
[Test plan]
This adds a minimal test case to the test suite that reproduced the issue and verifies the fix, test plan consists of the autopkgtests.
[Where problems could occur]
We could see a resurgence of bugs like LP#1990586 where the solver failed to run at all because things got too complex, however this is a bit more unlikely as we now use the by-keep resolver to handle rolling back phased updates.
+
+ We also saw an issue with a phased update's dependencies being installed
+ despite the phased update being hold back. We saw that both before in
+ `apt upgrade` and with the fix for this bug, we also introduced it to
+ `dist-upgrade`, but this is also fixed in these uploads, basically we
+ skip marking for install (which in turn caused me to discover we need to
+ check a different version).
[Other Info]
gnome-shell Depends: gnome-shell-common (= ${binary-Version), mutter (>= matching)
So when mutter cannot be updated due to phasing, gnome-shell becomes
non-installable, but gnome-shell-common can be updated, so APT decided
to remove gnome-shell and the meta packages in its infinite wisdom.
The fix addresses this by resolving the dist-upgrade as if there were no
phasing, and then retroactively marks phases for keep and then anything
broken by that for keep.
This required some restructuring because normally we'd also keep broken
Recommends back, but here dist-upgrade may have decided that was ok, so
we need to build an allowlist of where Recommends can be broken to avoid
undoing unrelated changes.
[Original bug report]
This morning I got surprised by my laptop booting to a tty instead of a
desktop environment. It turned out that the entire desktop environment
was no longer present on my machine. Doing an apt install ubuntu-
desktop-minimal resolved the issue.
The machine had been running for a while. Looking at the apt logs, it
looks like apt deleted ubuntu-desktop on its own during a dist-upgrade a
couple of weeks back.
Start-Date: 2023-06-08 14:20:46
Commandline: apt dist-upgrade
Requested-By: alex (1000)
Upgrade: gnome-shell-common:amd64 (44.0-2ubuntu3, 44.1-0ubuntu1)
Remove: gnome-shell:amd64 (44.0-2ubuntu3), ubuntu-desktop:amd64 (1.501), gdm3:amd64 (44.0-1ubuntu1), gnome-shell-extension-desktop-icons-ng:amd64 (46+really47.0.2-3), gnome-shell-extension-appindicator:amd64 (53-1), ubuntu-session:amd64 (44.0-1ubuntu1), gnome-shell-extension-manager:amd64 (0.4.0-1), gnome-shell-extension-ubuntu-dock:amd64 (79ubuntu2.23.04.1), ubuntu-desktop-minimal:amd64 (1.501)
End-Date: 2023-06-08 14:20:48
I'm using the following version of Ubuntu:
Distributor ID: Ubuntu
Description: Ubuntu 23.04
Release: 23.04
Codename: lunar
** Description changed:
[Impact]
gnome-shell gets removed on upgrades of gnome-shell and mutter if due to phasing we can only upgrade src:gnome-shell.
[Test plan]
This adds a minimal test case to the test suite that reproduced the issue and verifies the fix, test plan consists of the autopkgtests.
[Where problems could occur]
We could see a resurgence of bugs like LP#1990586 where the solver failed to run at all because things got too complex, however this is a bit more unlikely as we now use the by-keep resolver to handle rolling back phased updates.
We also saw an issue with a phased update's dependencies being installed
despite the phased update being hold back. We saw that both before in
`apt upgrade` and with the fix for this bug, we also introduced it to
- `dist-upgrade`, but this is also fixed in these uploads, basically we
- skip marking for install (which in turn caused me to discover we need to
- check a different version).
+ `dist-upgrade`, but this is also fixed and tested in these uploads,
+ basically we skip marking for install (which in turn caused me to
+ discover we need to check a different version).
[Other Info]
gnome-shell Depends: gnome-shell-common (= ${binary-Version), mutter (>= matching)
So when mutter cannot be updated due to phasing, gnome-shell becomes
non-installable, but gnome-shell-common can be updated, so APT decided
to remove gnome-shell and the meta packages in its infinite wisdom.
The fix addresses this by resolving the dist-upgrade as if there were no
phasing, and then retroactively marks phases for keep and then anything
broken by that for keep.
This required some restructuring because normally we'd also keep broken
Recommends back, but here dist-upgrade may have decided that was ok, so
we need to build an allowlist of where Recommends can be broken to avoid
undoing unrelated changes.
[Original bug report]
This morning I got surprised by my laptop booting to a tty instead of a
desktop environment. It turned out that the entire desktop environment
was no longer present on my machine. Doing an apt install ubuntu-
desktop-minimal resolved the issue.
The machine had been running for a while. Looking at the apt logs, it
looks like apt deleted ubuntu-desktop on its own during a dist-upgrade a
couple of weeks back.
Start-Date: 2023-06-08 14:20:46
Commandline: apt dist-upgrade
Requested-By: alex (1000)
Upgrade: gnome-shell-common:amd64 (44.0-2ubuntu3, 44.1-0ubuntu1)
Remove: gnome-shell:amd64 (44.0-2ubuntu3), ubuntu-desktop:amd64 (1.501), gdm3:amd64 (44.0-1ubuntu1), gnome-shell-extension-desktop-icons-ng:amd64 (46+really47.0.2-3), gnome-shell-extension-appindicator:amd64 (53-1), ubuntu-session:amd64 (44.0-1ubuntu1), gnome-shell-extension-manager:amd64 (0.4.0-1), gnome-shell-extension-ubuntu-dock:amd64 (79ubuntu2.23.04.1), ubuntu-desktop-minimal:amd64 (1.501)
End-Date: 2023-06-08 14:20:48
I'm using the following version of Ubuntu:
Distributor ID: Ubuntu
Description: Ubuntu 23.04
Release: 23.04
Codename: lunar
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/2025462
Title:
Apt deletes ubuntu-desktop during dist-upgrade
Status in apt package in Ubuntu:
In Progress
Status in apt source package in Jammy:
New
Status in apt source package in Kinetic:
New
Status in apt source package in Lunar:
New
Status in apt source package in Mantic:
In Progress
Bug description:
[Impact]
gnome-shell gets removed on upgrades of gnome-shell and mutter if due to phasing we can only upgrade src:gnome-shell.
[Test plan]
This adds a minimal test case to the test suite that reproduced the issue and verifies the fix, test plan consists of the autopkgtests.
[Where problems could occur]
We could see a resurgence of bugs like LP#1990586 where the solver failed to run at all because things got too complex, however this is a bit more unlikely as we now use the by-keep resolver to handle rolling back phased updates.
We also saw an issue with a phased update's dependencies being
installed despite the phased update being hold back. We saw that both
before in `apt upgrade` and with the fix for this bug, we also
introduced it to `dist-upgrade`, but this is also fixed and tested in
these uploads, basically we skip marking for install (which in turn
caused me to discover we need to check a different version).
[Other Info]
gnome-shell Depends: gnome-shell-common (= ${binary-Version), mutter (>= matching)
So when mutter cannot be updated due to phasing, gnome-shell becomes
non-installable, but gnome-shell-common can be updated, so APT decided
to remove gnome-shell and the meta packages in its infinite wisdom.
The fix addresses this by resolving the dist-upgrade as if there were
no phasing, and then retroactively marks phases for keep and then
anything broken by that for keep.
This required some restructuring because normally we'd also keep
broken Recommends back, but here dist-upgrade may have decided that
was ok, so we need to build an allowlist of where Recommends can be
broken to avoid undoing unrelated changes.
[Original bug report]
This morning I got surprised by my laptop booting to a tty instead of
a desktop environment. It turned out that the entire desktop
environment was no longer present on my machine. Doing an apt install
ubuntu-desktop-minimal resolved the issue.
The machine had been running for a while. Looking at the apt logs, it
looks like apt deleted ubuntu-desktop on its own during a dist-upgrade
a couple of weeks back.
Start-Date: 2023-06-08 14:20:46
Commandline: apt dist-upgrade
Requested-By: alex (1000)
Upgrade: gnome-shell-common:amd64 (44.0-2ubuntu3, 44.1-0ubuntu1)
Remove: gnome-shell:amd64 (44.0-2ubuntu3), ubuntu-desktop:amd64 (1.501), gdm3:amd64 (44.0-1ubuntu1), gnome-shell-extension-desktop-icons-ng:amd64 (46+really47.0.2-3), gnome-shell-extension-appindicator:amd64 (53-1), ubuntu-session:amd64 (44.0-1ubuntu1), gnome-shell-extension-manager:amd64 (0.4.0-1), gnome-shell-extension-ubuntu-dock:amd64 (79ubuntu2.23.04.1), ubuntu-desktop-minimal:amd64 (1.501)
End-Date: 2023-06-08 14:20:48
I'm using the following version of Ubuntu:
Distributor ID: Ubuntu
Description: Ubuntu 23.04
Release: 23.04
Codename: lunar
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/2025462/+subscriptions
More information about the foundations-bugs
mailing list