I have a legacy root-on-zfs install that was once made by installing to an ext4 / with /boot on a separate ext4 partition, and then moving the contents of / to a ZFS pool.
I had various *BSD installations on the same disk which never caused any trouble but now I'm considering to do a Devuan install on an unused partition. To be more precise: copy an already set-up install from another machine (that uses XFS) to a fresh pool on the partition in question.
I'll want to stick to the approach with a /boot on its own partition and think I'd better not use a single /boot for both distros. So, two /boot partitions.
I've never done this before, not even without ZFS in the equation. How will this work with grub, esp. given they will be 2 different versions and each distro will at some point want to generate a new grub config? Will it figure out which boot partition goes with what pool based on matching the kernels (on the boot) with the kernel modules (on the pool), or will I have to verify the concordance manually (in grub.cfg) after each grub update? I see that grub.cfg just references the UUID of the partition holding /boot, plus the name of the pool as a kernel argument.
FWIW, the machine this would be on does have UEFI support but doesn't seem to give me an option to boot off the EFI partition (into rEFInd for instance), possibly because the grub bootloader is also installed.
I wouldn't have an issue with having to step through a few hoops to boot the secondary distro.