I did some manual partitioning when installing Kalpa: I added a Swap partition whose capacity I set equal to RAM + 2GB, which got hibernate working.
I think Hibernate is strictly better than Sleep: Why should a computer still use power when it isn't doing anything? And if you could get a desktop to recover its state before a full reboot without using Hibernate, then why would you need Sleep anyway?