I will need to get a laptop in the foreseeable future, and I really want to stick to Linux. However, I may need to be out-of-home for 12+ hours straight in a day. After some research, it seems people are generally not that impressed with battery life on Linux?
The laptop does not need to do anything heavy duty, as I will remote back into my already very beefy desktop back home.
I guess a common solution to this light use case is M2 MacBook if one wants to completely throw battery concern out of the window. Well… let’s just say it’s a love-hate relationship.
It depends on a few factors. Stock laptop experience with no power management software will likely result in poor battery life. You will need some kind of power management like TLP, auto-cpufreq, or powertop to handle your laptop’s power management settings.
Second is the entire issue of dedicated GPUs and hybrid graphics in laptops, which can be a real issue for Linux laptops. In my own laptop with a dGPU, I am reasonably certain that the dGPU simply never turns off. I have yet to figure out a working solution for this, and so my battery life seems to be consistently worse than the Windows install dual-booted with it on the same machine.
If your dGPU supports rtd3 power management, it should (almost) completely power off when not in use. For me the battery life changes a lot: is something like 2 hr vs 10hr battery life with the GPU off, which is very noticeable.
In everything I have seen, there has been no way to turn it off fully (laptop with a GTX 1060). Nvidia x server settings shows no option for a power saver mode, and even Optimus-manager set to integrated graphics only does not seem to have changed it. It seems to continuously idle at the minimum clock speed at around 5W of draw, according to programs like nvtop.
On my Linux laptop with a Nvidia card, there is a Nvidia program which lets you switch between dedicated or on-board graphics, or on-demand where applications can request the graphics card. Before that the dedicated card was always on. I’m on mobile at the moment, but there is an official Nvidia website with drivers and other programs to control this. I assume the same for AMD, but I haven’t checked.