Lol at the state of hardware.
Lol at the state of hardware.
For the uninitiated, without S3 closing the laptop lid will either continue to drain battery pretty damned quickly (S1) OR cause the OS to take much longer to resume completely from disk (S4 aka hibernate). As SSDs get bigger/faster/cheaper in comparison to RAM, S4 will start to seem more equivalent, but to make this sensible on an ultrabook you might want to opt for that 1+TB NVME so you can hibernate on lid-shut without eating a significant fraction of your disk on swap.
But that requires pretty heavy power saving code
(It's plenty at that point, but hardly seems to be the yes/no on the whole deal)
my work macbook will close all the network connections/compile/rendering when i close the lid to walk from meeting to meeting (or used to. seems like the universe closed this bug as 'WONT FIX')
I have no decent UX to disable that when i need my network connections/compile time/render time/etc... It's either sleep enabled and i can't risk touching the lid, or complicated arcane steps to break sleep and allow me to carry it.
Amphetamine (for your Mac!)
Every single little obvious feature depend on a shaddy shareware app running on your taskbar.
want to close the lid? amphetamine. Want to copy paste history? copyQ. Want per-window alt-tab? Switch. Want to be able to change the volume? soundflower.
i have some twenty icons there now. And that's not even counting the chrome ones to disable features i don't want on the browser. sigh.
With enough whining (ex: the Thinkpad community), the manufacturer can be convinced to replaced their half baked solution by something slightly better.
If you do not care about TPM, you can also patch your ACPI tables yourself.
First, try disabling TPM (because of a TXT attack from S3), cf https://forums.freebsd.org/threads/acpi-entering-s3-cant-wak... and https://www.darkreading.com/vulnerabilities---threats/new-at...
If S3 is not supported, it is usually due to laziness, to prevent an ACPI GPE storm and causing wakeups in S0ix. People who glue together BIOS code and ACPI tables are not the best and the brightest: instead of using a context dependent EC mask, they simply disable the GPE altogether.
You can add that back with a DSDT patch: all you need is a vector for PRW (power resource wake), making sure the GPE for EC wake interrupt is not masked.