/srv/irclogs.ubuntu.com/2023/07/03/#ubuntu-desktop.txt

juliankI'd be inclined to believe there's a packaging bug here somewhere https://bugs.launchpad.net/ubuntu/+source/apt/+bug/202546208:13
-ubottu:#ubuntu-desktop- Launchpad bug 2025462 in apt (Ubuntu) "Apt deletes ubuntu-desktop during dist-upgrade" [Undecided, Incomplete]08:13
juliankit's really hard to figure out why gnome-shell was removed to upgrade gnome-shell-common08:14
=== guiverc2 is now known as guiverc
juliankI think I see what's going on08:16
juliankThe only reasonable explanation I can come up with is that the bumped mutter dependency and a phasing mismatch caused new gnome-shell versions to be uninstallable because they depend on not-yet-phased mutter08:17
juliankso apt calculates to upgrade gnome-shell and mutter, but then undoes all the upgrade paths involving mutter, but the gnome-shell-common upgrade path remains valid08:18
juliankso now we remain with gnome-shell-common marked for upgrade and the 2nd stage solver removes all the other packages to do it08:19
juliankbut can't validate those assumptions really08:19
juliankPresumably we should mark ubuntu-desktop-minimal as Protected: yes so that apt treats it like Essential when it is installed and doesn't allow removing it08:21
juliankI still believe apt should not be suggesting removals at all unless caused by Conflicts+Replaces but that's a different more complex topic08:23
juliankThere's a bit of a catch-22, apt remove <meta package> removes the meta package and keeps dependencies automatically installed (they'll be up for autoremoval), whereas removing a metapackage due to dependency conflicts will result in the dependencies inherting the manual bit from the metapackage08:25
juliankOh I believe that this is in fact a regression from bug https://bugs.launchpad.net/ubuntu/+source/python3.10/+bug/199058608:26
-ubottu:#ubuntu-desktop- Launchpad bug 1990586 in python3.10 (Ubuntu) "22.04: python3* mismatched phasing breaks dist-upgrades" [Critical, Fix Released]08:26
juliankNow I think I have a fix for apt dist-upgrade08:36
juliankI just need to write a test case08:36
juliankSo what the fix for the other bug did was: (1) mark phased updates as kept back (2) do normal upgrade (3) mark for keep back again (4) resolve by any means necessary08:37
julianknow: (1) do normal upgrade (2) resolve by any means necessary (3) revert anything dependending on phasing08:37
juliankIt regresses another issue08:41
juliankOh this also implies that held packages can cause removals rather than held back upgrades08:47
juliankphased updates are rocket surgery, lol08:55
juliankSo if anyone sees to see the effort it took, the fix for this is in https://salsa.debian.org/apt-team/apt/-/merge_requests/29909:30
-ubottu:#ubuntu-desktop- Merge 299 in apt-team/apt "Revert phased updates using keeps only" [Opened]09:30
laneygood work juliank09:34
juliankthanks laney 09:55
seb128juliank, thanks for investigating and providing us the details!09:56
juliankseb128: So what this means if there's a gnome-shell+mutter SRU in the next 3 weeks or so (while apt update rolls out), we must make sure we don't release gnome-shell before mutter is fully phased09:59
seb128right, that's something you should probably mention to the SRU team on #ubuntu-release10:00
juliankit's probably something that needs to go into a gnome-shell SRU bug, if any10:00
juliankI don't think SRU team has a notes document :D10:00
seb128having them aware that it is an issue helps though10:13
juliankseb128: I have notified. I now have also noticed that the same issue happens if you mark mutter for hold, that also causes gnome-shell to be removed, sigh. Fixing that is near impossible as the holds are applied at a much earlier state and affect dependency resolution (apt will pick different solutions if something is on hold, e.g. b in x depends a|b  if a is held rather than keep back x)10:28
juliankI think ultimately I probably should go ahead with my plan to make the apt resolver dumber and not remove stuff due to broken depends10:29
seb128ack11:19
jbichaI added a warning to the open jammy gnome-shell SRU bug. btw I believe the SRU team does use a trello board to coordinate their work11:36
ricotzhello desktopers!11:40
jbichagood morning11:44
=== dob1_ is now known as dob12
=== dob12 is now known as dob1
=== muktupavels_ is now known as muktupavels

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!