It's not really Linux' fault. Most It's Microsoft that forced this, and most vendors don't know how to deal with this and work proper firmware. I think Framework and Valve fixed theirs. I have a GPD and just found out that the reason I kept getting it wake from sleep was some MS related option triggering an ACPI IRQ 9 sleep wake.
On another note, I actually think that the most important things that work better on the Apple devices is the mic and camera, the rest is somewhat unimportant on the go if you work at a desk.