

Inconsistent time before sleep is likely the kernel waiting for IO to sync to disk.
Not going to sleep at all implies a serious issue that prevented the kernel from doing so. Check your logs!
Suspend reliability greatly depends on the firmware of your specific device as it controls the wakeup.
On my Framework 16 for instance, it is very reliable these days. I can’t remember the last time it woke up unexpectedly and I’m not sure whether it happened even once since the firmware update that fixed a major oversight in keyboard wakeup (waking when a key was pressed through a closed lid).










There’s https://gitlab.com/android_translation_layer/android_translation_layer which can already run BeatSaber apparently.
I think games specifically might be easier than most other apps as they are probably often little more than a 2D canvas displaying a regular Linux app with quite limited use of android-specific APIs.