Configuring suspend-then-hibernate is a pain on both Fedora and Ubuntu for different reasons: Fedora uses zswap by default and Ubuntu's swap partition is too small.
Last I installed it, Ubuntu actually used a swap file, so configuring hibernation required adding a kernel parameter to your boot arguments specifying what file to resume from.