Libffi not found after last failed pacman -Syu


Yesterday when I updated the system it didn’t went through due to a conflict when updating the nss package (if I recall correctly). The error message was something about that the file (which I don’t remember the name of) already exists on the system. I didn’t manage to solve it and just left it.

When I later did a shutdown the system hanged and I had to force turn off the computer with a long-press on the power button. Now it won’t boot anymore.

Is there a way to rescue the installation or do I need to re-install?



What you needed to do with that update yesterday is put

sudo pacman -Syu --overwrite /usr/lib\*/
1 Like

You will need to boot from the live usb and do a repair. The guide @halcek linked is good, just doesn’t cover luks or lvm, which I noticed your using.

First up find out what device and partitions you’ll be working with

lsblk -f

Encrypted partitions will need to be unlocked before they can be mounted, I noticed the name is default “cryptroot” from your pic, this is also needed.

cryptsetup open --type luks /dev/ROOT_PARTITION "cryptroot"

Now mount the root partition (for encryption this needs to use the /dev/mapper/NAME)

mount /dev/mapper/cryptroot /mnt

This next step (mounting boot partition) ONLY applies if you use a seperate boot partition

mount /dev/BOOT_PARTITION /mnt/boot

Once everything is mounted you need to chroot into the system

arch-chroot /mnt

From here you can run an update as @halcek posted, I would also run a couple other commands

pacman -Syu --overwrite /usr/lib\*/

# rebuild initramfs for all installed kernels
mkinitcpio -P

# update grub config -- ONLY if you use grub
grub-mkconfig -o /boot/grub/grub.cfg

Once finished you need to exit the chroot


Then reboot.

Lemme know if I was unclear or if you have any issues.

Thanks a lot for the clear responses. It is now working again. :slight_smile:

1 Like