Today I am MATI. Poettering fucking did it. I could tolerate most of the other bullshit, but my system not booting
at all is the last straw.
So what happened? Poettering currently has a massive hard-on for everything secure boot and TPM. While fixing some TPM shit for ARM VMs with broken firmware, one of the other contributors added a call to GetActiveBanks() in systemd-boot. So far so good, ARM garbage fixed. Too bad this call doesn't fucking exist on older x86 UEFI implementations, and because UEFI is a great standard, this hangs the machine.
This gets noticed while systemd 258 is in RC phase. Normally, one would assume this would be a massive release blocker. There's probaly lots of Linux users with old Thinkpads which are not getting UEFI updates. Unfortunately, systemd 258 gets released without a fix.
Yesterday, I update my laptop, reboot and boom: Nothing. Black screen.
So I start digging, and find these issues/PRs:
https://github.com/systemd/systemd/issues/38932,
archive
https://github.com/systemd/systemd/pull/39034,
archive
https://github.com/systemd/systemd/pull/39089,
archive
At first they deny even causing this, ignoring that systemd 257 works and 258 does not. After finding out it
is their fault, they come up with a workaround: Disable TPM. How one is supposed to find out about this workaround without their machine booting is beyond me. Then a systemd contributor comes up with a fix and opens a PR. Poettering steps in. Struggle sessions ensues. Poettering fixes it himself.
His fix? It fucking breaks TPM on affected machines.
At least it boots.