About --- If your Xen system is based on UEFI with the ESP mounted on /boot/efi, you will get a linking error when trying to install a hypervisor like: xen-hypervisor-4.20-amd64_4.20.0-1+deb12u3.8_amd64.deb Your ESP mount is similar to below: UUID=26F1-4BDA /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2 Workaround --- This trick proposes to manually install the included *.efi into /boot/efi, unmount the ESP (boot/efi), do a normall install, finally remount ESP. to extract the *.efi from the hypervisor package: // ar, install binutils apt install binutils man ar mkdir zztemp && cd $_ dpkg -x ../xen-hypervisor-4.20-amd64_4.20.0-1+deb12u3.8_amd64.deb ./ above works, but it extracts the whole package to curdir. A more compact way is to use ar (with the hypervisor above): ar -xv ../xen-hypervisor-4.20-amd64_4.20.0-1+deb12u3.8_amd64.deb x - debian-binary x - control.tar.xz x - data.tar.xz the *.deb are in data.tar.xz, and we can access precisely the *.efi like this: tar -xf data.tar.xz --wildcards */*efi --strip-components 5 xen-4.20-amd64.efi xen-4.20-xsm.efi While the ESP is mounted to /boot/efi : sudo cp -p *.efi /boot/efi/EFI/debian To continue with the install of the new xen release, we have to unmount the ESP sudo unmount /boot/efi sudo apt install ./*.deb After above succeeds: sudo mount /boot/efi sudo systemctl daemon-reload Author --- PryMar56 June 2025