The 41040 update failed for me

An unfortunate thing happened to my Clear Linux installation. I updated from 40750 to 41040 and thought safe to do so as 41040 appears as current. The update involves new GLIBC 2.39 libs. Perhaps I waited too long to update, although 40750 isn’t old.

This is the worst experience I have encountered using Clear Linux. The update broke my Clear Linux installation and unable to boot.

I recovered and will share my notes tomorrow (how-to) for situations like this. The amazing thing is that I did not need to re-install the NVIDIA driver or anything else as if nothing happened. Just that the OS is now at 41040.

Recovery steps: (done as root)

  1. Boot into a live ISO image and mount the broken Clear installation including the boot partition to /mnt and /mnt/boot, respectively. Your partitions may differ from mime.
mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot
  1. Remove any left-over dump files from the efivars partition. Be careful here.
ls /sys/firmware/efi/efivars/dump-*
rm -f /sys/firmware/efi/efivars/dump-*
  1. Run the software repair tool. To not exhaust /var utilization, this requires moving the swupd folder to /tmp and making a symbolic link. For NVIDIA users, also make a symbolic link for the local swupd configuration folder. This is necessary to preserve the NVIDIA installation.
mv /var/lib/swupd /tmp/swupd
ln -s /tmp/swupd /var/lib/swupd
ln -s /mnt/etc/swupd /etc/swupd

swupd repair --version=41040 -Y -x --path=/mnt
  1. Run the boot loader management tool. The repair step may do this, but just in case not.
CBM_DEBUG=1 clr-boot-manager update --path=/mnt
  1. Sync and reboot.
sync && reboot
  1. For NVIDIA users, press the letter “e” at the boot screen and prepend "3 " with a space to the list of kernel arguments. Login and run the check script to refresh the DKMS modules.
cd /path/to/nvidia-driver-on-clear-linux
sync && reboot