@stefano @whynothugo
For linux on ZFS, I recommend ZFSBootMenu. It really simplifies pretty much any deployment scenario.
On my laptop, I have 2 partitions, one for EFI and one for the ZFS pool. The EFI partition contains only the ZFSBootMenu file. Everything else, including the /boot files, are in a ZFS dataset. Everything is encrypted (with ZFS ecnryption on the default dataset).
ZFSBootMenu will ask for the password at boot time, and the loaded linux kernel will load the key from a file (added to the initial filesystem via update-initramfs or dracut).
And you can pick from quite a few distributions listed on the ZFSBootMenu site.
I'll add a screenshot with my current setup - partitions, zpool, datasets and encryption.