juliank | I'd be inclined to believe there's a packaging bug here somewhere https://bugs.launchpad.net/ubuntu/+source/apt/+bug/2025462 | 08:13 |
---|---|---|
-ubottu:#ubuntu-desktop- Launchpad bug 2025462 in apt (Ubuntu) "Apt deletes ubuntu-desktop during dist-upgrade" [Undecided, Incomplete] | 08:13 | |
juliank | it's really hard to figure out why gnome-shell was removed to upgrade gnome-shell-common | 08:14 |
=== guiverc2 is now known as guiverc | ||
juliank | I think I see what's going on | 08:16 |
juliank | The 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 mutter | 08:17 |
juliank | so 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 valid | 08:18 |
juliank | so now we remain with gnome-shell-common marked for upgrade and the 2nd stage solver removes all the other packages to do it | 08:19 |
juliank | but can't validate those assumptions really | 08:19 |
juliank | Presumably 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 it | 08:21 |
juliank | I still believe apt should not be suggesting removals at all unless caused by Conflicts+Replaces but that's a different more complex topic | 08:23 |
juliank | There'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 metapackage | 08:25 |
juliank | Oh I believe that this is in fact a regression from bug https://bugs.launchpad.net/ubuntu/+source/python3.10/+bug/1990586 | 08:26 |
-ubottu:#ubuntu-desktop- Launchpad bug 1990586 in python3.10 (Ubuntu) "22.04: python3* mismatched phasing breaks dist-upgrades" [Critical, Fix Released] | 08:26 | |
juliank | Now I think I have a fix for apt dist-upgrade | 08:36 |
juliank | I just need to write a test case | 08:36 |
juliank | So 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 necessary | 08:37 |
juliank | now: (1) do normal upgrade (2) resolve by any means necessary (3) revert anything dependending on phasing | 08:37 |
juliank | It regresses another issue | 08:41 |
juliank | Oh this also implies that held packages can cause removals rather than held back upgrades | 08:47 |
juliank | phased updates are rocket surgery, lol | 08:55 |
juliank | So if anyone sees to see the effort it took, the fix for this is in https://salsa.debian.org/apt-team/apt/-/merge_requests/299 | 09:30 |
-ubottu:#ubuntu-desktop- Merge 299 in apt-team/apt "Revert phased updates using keeps only" [Opened] | 09:30 | |
laney | good work juliank | 09:34 |
juliank | thanks laney | 09:55 |
seb128 | juliank, thanks for investigating and providing us the details! | 09:56 |
juliank | seb128: 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 phased | 09:59 |
seb128 | right, that's something you should probably mention to the SRU team on #ubuntu-release | 10:00 |
juliank | it's probably something that needs to go into a gnome-shell SRU bug, if any | 10:00 |
juliank | I don't think SRU team has a notes document :D | 10:00 |
seb128 | having them aware that it is an issue helps though | 10:13 |
juliank | seb128: 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 |
juliank | I think ultimately I probably should go ahead with my plan to make the apt resolver dumber and not remove stuff due to broken depends | 10:29 |
seb128 | ack | 11:19 |
jbicha | I 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 work | 11:36 |
ricotz | hello desktopers! | 11:40 |
jbicha | good morning | 11: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!