If you want to boot off of snapshots you should just use Grub.
There are users who are booting off of snapshots with systemd-boot by setting up custom tooling for it, like in this post for example: SystemD boot + secure boot + TPM2 unlocking + UKI + Dual boot (windows) + Dracut + BTRFS + LUKS2 + boot from Snapshots - #6 by Svartis. It’s obviously not as easy to set up as just installing a couple packages like it is with Grub.
If you want to you can set up a custom.cfg
file with Grub to add custom settings, menu entries, scripts, etc which can extend and customize the bootloader’s behavior beyond what systemd-boot supports. Grub can be configured in kind of a modular way with the /etc/grub.d
directory as well, for tying in scripts or other processes with the boot routine.
Grub can also chainload bootloaders; I’m not sure if systemd-boot supports that. There are also difference with how the two bootloaders handle encrypted setups or rescue mode (I’m not sure if systemd-boot has a dedicated rescue mode per se).
systemd-boot is in general a much leaner, simpler bootloader so does not have quite as many features available. Features are nice, but many people do not need all the features Grub offers. Plus Grub has a long and storied history of breaking when people do not properly handle its maintenance.
Still: if booting off of Btrfs snapshots is important to you I would recommend you just use Grub.