@amosbatto mentioned suspend to RAM as an important feature for battery life for early Evergreen builds. While that situation persists, is there any way for an app that wants to issue a user notification to be woken up at a specific time known in advance?
I’m guessing the answer is “no” so presumably an app like this would have to wait until battery life has improved sufficiently that suspend to RAM is no longer a necessity?
I don’t have a answer to any of these questions, but have some reflection about it.
If you want to wake a process at a specific time you can tell that to the kernel with timers, but they will not wake up from sleep. The real time clock can wake up the processor at a specific time from suspend with for example the rtcwake command, something like that in combination with a timer might work but not sure. It would be nice with some userspace service with an API (DBus?) that makes this easier to do for developers.
I think you have this the wrong way round. Suspend-to-RAM (standby / sleep state XYZ) is necessary in order to achieve a higher time-between-charges.
Regardless, the app tells the operating system that the app would like to be woken at time T and it is up to the operating system to make that happen, no matter what the running / sleep state of the computer is.
Like the previous post, I don’t have specific detailed answers but typically, if an operating system is going to put the computer into a sleep state, it would look at the timer that is due to expire soonest and arrange for an external hardware wakeup at that time e.g. using some kind of ultra low power real time clock chip.
i’m pretty sure this was alredy brought up at SOME point here on the Purism Fora but i’m still confused about it … does the L5 HAVE such a HARDWARE chip ?
Note that this is a different scenario from a vanilla desktop. They typically have a battery-backed-up chip that is capable of maintaining wall clock time while power is completely cut to the computer.
The imagined scenario for the Librem 5 only requires a chip that is capable of causing a wakeup X seconds in the future and while there is power available to the RAM to store most other information. There is no strict need for a chip that can maintain wall clock time in this scenario.