I figured it out. It turns out I could still boot into Linux from grub even after I uninstalled the grub packages! efibootmgr
shows that my BootOrder starts with “Linux Boot Manager HD UUID/\EFI\systemd\systemd-bootx64.efi” and then “Fedora HD UUID/\EFI\fedora\shimx64.efi” that I think is the grub boot loader, so I should get systemd-boot.
However, /EFI/systemd/systemd-bootx64.efi and other parts of systemd-boot aren’t signed according to the sbverify
tool. After I disabled secure boot in my BIOS, I get a flash of text instead of the grub menu and then Fedora starts, and now bootctl status
says “Current Boot Loader: Product: systemd-boot 255.6-1.fc40”.
Getting secure boot to work with systemd-boot seems daunting, see Full UEFI secure boot on Fedora using signed initrd and systemd-boot.