That's not my experience at all. Macs are great on battery, but BSDs are not, they are by far the worst. Linux usually does ok, often better than windows, at least once properly set up. I only run BSD on my "never leave home/stay tethered" laptops because they only get 3-4 hours where Linux will get 8-12.
It seems like the 6.16 and 6.17 kernels should allow for some pretty good improvements on battery and sleep mgt across more hardware from what I understand.
Linux does not play nice with batteries.