Because the code that’s failing is architecture specific (swsusp_arch_suspend), could you tell us what processor architecture you are using e.g. x86_64.
Sidenote, your hardware-configuration.nix only contains a boot.initrd.luks entry for the root FS. Is your swap unencrypted? If so, that would both leak things that you probably expect to be encrypted as well as make secure boot virtually ineffective.
yes, it is unencrypted for now, i wanted to switch to a dedicated encrypted LUKS swap volume, but I thought that if I needed to fix hibernation on secure boot, it would be easier to test without the added LUKS complexity
Not true. That’s a kernel patch that most distros ship, but mainline has rejected it. Since mainline rejects it, NixOS doesn’t ship it. Lockdown is not automatically enabled when secure boot is enabled. You would have to have lsm=lockdown in your kernel params for lockdown to be in effect.
EDIT: Oh you’re using the cachyos kernel. I guess they might ship that patch, but I have no idea.
EDIT2: Actually, no, I’m still quite sure you’re not using lockdown. Lanzaboote does not implement kernel module signing, and lockdown requires that. If you’re able to load kernel modules at all, lockdown is not enabled. And it’s very unlikely that NixOS would be usable or even bootable without kernel modules loading.