Because of something I did during an anthropology lecture, I learned the hard way to read the "The following packages will be REMOVED" list when upgrading a package to backports in Debian GNU + Linux.
- I upgraded pipewire from stable to backports (I want to know
if this is related to my problemwhy essential packages were removed)
Start-Date: 2024-09-18 14:59:02
Commandline: apt install libpipewire-0.3-0/bookworm-backports
Requested-By: dullbananas (1000)
Install: libpulsedsp:amd64 (16.1+dfsg1-2+b1, automatic), pulseaudio:amd64 (16.1+dfsg1-2+b1, automatic), pulseaudio-utils:amd64 (16.1+dfsg1-2+b1, automatic), libasound2-plugins:amd64 (1.2.7.1-1, automatic), policykit-1-gnome:amd64 (0.105-8, automatic), pulseaudio-module-bluetooth:amd64 (16.1+dfsg1-2+b1, automatic), libspeexdsp1:amd64 (1.2.1-1, automatic)
Upgrade: libspa-0.2-modules:amd64 (0.3.65-3+deb12u1, 1.2.3-1~bpo12+1), libpipewire-0.3-0:amd64 (0.3.65-3+deb12u1, 1.2.3-1~bpo12+1)
Remove: pipewire-pulse:amd64 (0.3.65-3+deb12u1), pipewire-audio-client-libraries:amd64 (0.3.65-3+deb12u1), t2-apple-audio-dsp-speakers161:amd64 (0.2.0-1), gnome:amd64 (1:43+1), gnome-remote-desktop:amd64 (43.3-1), pipewire:amd64 (0.3.65-3+deb12u1), gnome-shell-extensions:amd64 (43.1-1), gnome-shell:amd64 (43.9-0+deb12u2), pipewire-tests:amd64 (0.3.65-3+deb12u1), gdm3:amd64 (43.0-3), libspa-0.2-jack:amd64 (0.3.65-3+deb12u1), libspa-0.2-bluetooth:amd64 (0.3.65-3+deb12u1), pipewire-jack:amd64 (0.3.65-3+deb12u1), gstreamer1.0-pipewire:amd64 (0.3.65-3+deb12u1), t2-apple-audio-dsp-mic:amd64 (0.4.0-1), pipewire-audio:amd64 (0.3.65-3+deb12u1), pipewire-bin:amd64 (0.3.65-3+deb12u1), chrome-gnome-shell:amd64 (42.1-3), task-gnome-desktop:amd64 (3.73), gnome-session:amd64 (43.0-1+deb12u1), gnome-browser-connector:amd64 (42.1-3), gnome-core:amd64 (1:43+1), libpipewire-0.3-modules:amd64 (0.3.65-3+deb12u1), wireplumber:amd64 (0.4.13-1), gnome-shell-extension-prefs:amd64 (43.9-0+deb12u2), pipewire-alsa:amd64 (0.3.65-3+deb12u1)
End-Date: 2024-09-18 14:59:35
Start-Date: 2024-09-18 14:59:43
Commandline: apt install libpipewire-0.3-modules/bookworm-backports
Requested-By: dullbananas (1000)
Install: libconfig++9v5:amd64 (1.5-0.4, automatic), libxml++2.6-2v5:amd64 (2.40.1-3, automatic), libpipewire-0.3-modules:amd64 (1.2.3-1~bpo12+1), libffado2:amd64 (2.4.7-1, automatic)
End-Date: 2024-09-18 14:59:48
Start-Date: 2024-09-18 14:59:57
Commandline: apt install pipewire/bookworm-backports
Requested-By: dullbananas (1000)
Install: pipewire:amd64 (1.2.3-1~bpo12+1), pipewire-bin:amd64 (1.2.3-1~bpo12+1, automatic), wireplumber:amd64 (0.4.13-1, automatic)
End-Date: 2024-09-18 15:00:02
- I suspended the computer, and after resume, the lock screen was broken:
- When I clicked on the password field, the text cursor only appeared for a split second, and I could not type in it
- Clicking on the user switch button on the bottom right corner did nothing
- A few times, the text "Authentication error" randomly appeared for a split second, probably for 1 frame
- No way to reboot the normal way, because I could only use the power menu on the lock screen, which only has suspend
- I used the power button to reboot, and instead of GNOME, there was darkness
Debian GNU/Linux 12 dullbananas-macbookpro161 tty1
dullbananas-macbookpro161 login:
- I downgraded pipewire to stable
Start-Date: 2024-09-18 15:20:16
Commandline: apt install pipewire/stable
Requested-By: dullbananas (1000)
Downgrade: pipewire:amd64 (1.2.3-1~bpo12+1, 0.3.65-3+deb12u1), pipewire-bin:amd64 (1.2.3-1~bpo12+1, 0.3.65-3+deb12u1), libspa-0.2-modules:amd64 (1.2.3-1~bpo12+1, 0.3.65-3+deb12u1), libpipewire-0.3-modules:amd64 (1.2.3-1~bpo12+1, 0.3.65-3+deb12u1), libpipewire-0.3-0:amd64 (1.2.3-1~bpo12+1, 0.3.65-3+deb12u1)
End-Date: 2024-09-18 15:20:26
- I ran
dpkg --verify
and got this output
??5?????? /lib/modules/6.10.9-1-t2-bookworm/modules.alias
??5?????? /lib/modules/6.10.9-1-t2-bookworm/modules.alias.bin
??5?????? /lib/modules/6.10.9-1-t2-bookworm/modules.dep
??5?????? /lib/modules/6.10.9-1-t2-bookworm/modules.dep.bin
missing /usr/share/dbus-1/services/io.snapcraft.Prompt.service
??5?????? c /etc/systemd/logind.conf
??5?????? c /etc/tlp.conf
??5?????? /lib/modules/6.10.8-1-t2-bookworm/modules.alias
??5?????? /lib/modules/6.10.8-1-t2-bookworm/modules.alias.bin
??5?????? /lib/modules/6.10.8-1-t2-bookworm/modules.dep
??5?????? /lib/modules/6.10.8-1-t2-bookworm/modules.dep.bin
??5?????? c /etc/gdm3/daemon.conf
missing /etc/os-release.debootstrap
??5?????? /lib/modules/6.10.7-1-t2-bookworm/modules.alias
??5?????? /lib/modules/6.10.7-1-t2-bookworm/modules.alias.bin
??5?????? /lib/modules/6.10.7-1-t2-bookworm/modules.dep
??5?????? /lib/modules/6.10.7-1-t2-bookworm/modules.dep.bin
- I reinstalled systemd (not sure if this made a difference)
Start-Date: 2024-09-18 15:48:58
Commandline: apt install --reinstall systemd
Requested-By: dullbananas (1000)
Reinstall: systemd:amd64 (252.30-1~deb12u2)
End-Date: 2024-09-18 15:49:02
- I reinstalled gdm3, and immediately without me doing anything else, there was GNOME instead of darkness
Start-Date: 2024-09-18 15:51:49
Commandline: apt install --reinstall gdm3
Requested-By: dullbananas (1000)
Install: gnome-remote-desktop:amd64 (43.3-1, automatic), gnome-shell:amd64 (43.9-0+deb12u2, automatic), power-profiles-daemon:amd64 (0.12-1+b1, automatic), gdm3:amd64 (43.0-3), gstreamer1.0-pipewire:amd64 (0.3.65-3+deb12u1, automatic), chrome-gnome-shell:amd64 (42.1-3, automatic), gnome-session:amd64 (43.0-1+deb12u1, automatic), gnome-browser-connector:amd64 (42.1-3, automatic), gnome-shell-extension-prefs:amd64 (43.9-0+deb12u2, automatic)
Remove: tlp:amd64 (1.5.0-2), tlp-rdw:amd64 (1.5.0-2)
End-Date: 2024-09-18 15:52:05
-
End of class
-
I reinstalled tlp because installing gdm3 removed it
-
After selecting an app search result, instead of a new window opening, an existing window was focused, and this led to me discovering that my built-in extensions were gone
-
While writing this post, I got the idea of using the list of removed packages in the apt history log output from
apt install libpipewire-0.3-0/bookworm-backports
to see what packages to install again, so I did that, then I also had to uninstall firefox-esr again -
I rebooted, and my built-in extensions and other stuff were resurrected, so now I have full redemption
-
Another Window Session Manager restored my windows in a way that pissed me off
(Failed attempts of recovery are not listed)
Edit: actually I made the mistake 1 minute before the start of class
And this is why you don't update your system while in the middle of something you need it for
Where's the fun in that? You've gotta raw dog life to get your blood pumping.
^Hey, ^why ^are ^my ^prod ^credentials ^revoked? ^Guys?
Two things to change if you switch from Ubuntu to Debian:
What is wrong with your system that requires disabeling updates?
Been running debian stable on a few hundred servers for 25 ish years.
And I always install and enable unattended upgrades. And it have never been a problem. Not even once.
When you boot up for a meeting and have to wait 10 minutes for updates to finish. Too much like Windows.
I am capable of running updates myself and I'd rather choose when they happen
Also, Nvidia
This is why I love ostree distributions so much for my laptop. Not only can I safely update in class, I once switched distributions twice in one day of classes with only like 30s of total downtime, I just waited for the professor to go off on a tangent I didn't need to take notes about so I could reboot.
I do the same with nix, unless I'm fucking with the bootloader I'll do risky updates because I can always just boot a previous generation
Not everyone has that luxury though
True, I still think it's fair to criticize the package managers and distros for not anticipating this common scenario and having the ability to roll back easily. How many millions of Linux users have experienced this issue? I'll bet a few.
Debian, Gentoo come from another generation and sometimes it shows, I mean snapshots weren't even a thing yet AFAIK.
Actually, I don't think you could break a system in quite this way in Gentoo these days. Portage generally doesn't remove packages during upgrades (certainly not unrelated ones that would break the depgraph!). It would have exited with (in this case) a message about version conflicts before changing any packages and left it for the user to sort out. Modern versions of portage do a pretty good job of keeping you from shooting yourself in the foot by accident, while leaving you with a lot of leeway for doing so on purpose.
This is one of the reasons I love nix. Most of the time if I break it I just roll back, if I really fuck it up I just reinstall, rebuild my config and I'm back
I used to update my laptop in class because my school's WiFi was so much faster than my home internet.