(I'm sure linux is in theory just as power efficient as MacOS or Windows, but distros are just usually not very concerned or capable of tuning it well enough.)
I used to fiddle forever but this gets like 80% of the wins. Things like "do we reduce power state of sata links" used to be extremely conservatively set, for fear of really old hardware from the beginning of sata era that behaved badly, but was an obvious &bhige win for 99.999999% of folk. Linux has finally started turning a bunch of these baseline expected tuning on by default, across the past few years (rather than powertop doing it), so the out of box experience is finally much more reasonable.
It's been like this forever but people love throwing shade. I had a Transmeta Crusoe laptop (p1120) amd yes, at first battery life was worde. But I did low hanging fruit optimizations, and Linux got better, and soon I had like an hour more runtime on Linux.
Mac famously has a trashburger IO subsystem, so not having that boat anchor hanging off the side should probably let the system hurry-up-and-idle better, saving power.
Ideally there would also be a way to omit certain device or subsystem tunings from auto-tune as well.
Personally I think it'd be fun to mess around with more advanced schemes, where we dynamically alter powersaving behaviors based on user behavior. What we have now seems somewhat unresponsive. It'd be fun to dive into.
Not 100% the same, but the Asahi members reported something like 8 hours on a M1 Macbook, so that's better than most/all x86 laptops with Linux
VMs and games (crossover) also bring my battery life down to 4-6 hours.
My old intel MBP would get around the same battery life when doing the same workloads (games under bootcamp Windows), it would get worse battery life sitting idle or for optimised workloads (like video playback).
Mixed workloads, I get maybe 2-3 hours more with my M1 laptop. That's not nothing, but it's not the crazy 18 hours battery life in the marketing material
The question is, what's the battery life when you're doing kernel compiles or GPGPU.
And not to beat the already long dead horse any more, but toss in some electron apps running in the background, I probably average somewhere around ~7 hours or so. I'm not convinced the 10+ hour lifetime is possible if you've got stuff like Discord/Slack/VS Code open.
But in terms of when I am doing truly evil things to it, I am surprised it lasts as long as it does, be it max CPU compiling or all of this morning when I was toying around with stable diffusion, it gets around ~4 hours or so.
Which of course should be expected. My M1 probably gets about 18-20 hours when I am just web browsing. If I am compiling Xcode projects, half that. Messing around in C in Emacs, probably 14-16 hours battery life.
It is makes no sense to compare an $1k/$2k M1 Macbook with random laptops. Those laptops exist because people want to run MS Word or Excel for $400. That's the feature.
Various System76 laptops, Thinkpads (among many other laptops recommended by Linux users) give you battery life comparable to macOS on the M1.
that is a lie. system76 and thinkpads are nowhere close to giving you a full day of battery life on Linux.
And I'm no Apple fanboy, the only Apple device I've ever used has been an ipad 5 years ago and my M1 macbook.
Apple’s numbers are equally unrealistic. They rate my m1 air for 15 hours, but in practice it gets to around 8 hours.
Of course if its a day where I'm compiling often and have several tasks running its going to be lower, but thats not the usecase they advertise
Maybe Asahi Linux will improve things, since they only target a very small number of hardware configurations.
Also presumably if Apple wants this to happen, they as a single vendor can provide a single definitive answer on what they are doing for each configuration. Eventually...
In the x86 world, there is Intel, AMD and like 50 different manufacturers each with a particular HW implementation/BIOS customization, leading to IntelAMDHardware_Vendor_customizations^50 permutations that'd need to be validated.
Never has there been any effort taken within Linux to apply a generalstic ‘small speaker EQ’ to anything with detected internal speakers.
Similarly, the Linux kernel by default is optimized for server style workloads (throughput) instead of smoothness. It would be so easy to check for an internal battery and if true apply a few kernel parameters so your laptop stays smooth under load.
Linux as a desktop (well, laptop) OS is terrible not because it is incapable of being great at it, but because people don’t seem to care for the death-by-a-thousand-cuts issues.
The real trouble is that you get some wireless chip which isn't popular enough for anybody to reverse engineer it but the manufacturer didn't provide any documentation, so the driver for it sucks or doesn't exist.
There is plenty of well-supported hardware so the solution is, don't buy the bad one. But some poor sucker who already did and now they want to run Linux on it may have a bad time.
Just clearing some FUD if people consider Linux bad for everyday use, that's mostly shit if you run Wayland and like sharing your screen (Jitsi or obs+virtualcam works well too).
Edit: remember Android runs on the Linux kernel-ish
This used to be different when I first installed Asahi, but the GPU driver and other improvements have made battery life something I don't really worry about anymore.
One thing which bothers me a lot as it makes the laptop hardly useable for me at night: display brightness cannot be adjusted, it is either off or 100%. Some user claim this can be accomplished by installing the asahi-edge kernel, which does not even boot for me.
And this also bothers me lot: why are things checked in/distributed which do not work at all in Asahi Arch?!?! If you install e.g. a dev kernel which does not boot because the NVME driver is broken and you do not have a fallback kernel you are doomed. You cannot mount the partition in macOS to fix this manually.
Fuse is infuriating on MacOS - why is it not included by default??
Why would it be "included by default"?
FUSE is nowhere near that.
Asahi is still in Alpha. Expect things to be a bit rough.
While I prefer the feel of Linux, macOS is more than sufficient for almost any development I do (which also involves a lot of container/VM development and I’ve never felt this was slow).
It's also impossible to work with anything KVM related on macOS, which would require a vm inside a vm and is not supported on any M1 or M2 hypervisor.
There's stuff like iTunes opening every time I connected BT headphones, and regular attempts to nag me into using Safari. Then there's a boat load of issues I found workarounds for: The window manager with its fullscreen mode and lack of tiling (Spectacle makes that bearable), the unique modifier keys that don't work well out of the box with readline shortcuts in the terminal and such, the often still manual process of installing and updating apps (maybe I could have used Brew or MacPorts more heavily), the inability to debug and fix any OS problems, and a literal hundred small things I can't even remember from the top of my head.
These things are all individually so small that I didn't event think about it, but when I realised the sheer quantity, I felt like I was in a codependent relationship with my main tool. Apple doesn't seem to care even remotely about users like me, and that's perfectly within their rights. The logical thing for me was to use something else.
> There's stuff like iTunes opening every time I connected BT headphones, and regular attempts to nag me into using Safari.
I don't know if these are legacy concerns, but this has not happened to me ever in the past 3 years.
> The window manager with its fullscreen mode and lack of tiling (Spectacle makes that bearable)
Yabai solves this very well.
> the often still manual process of installing and updating apps (maybe I could have used Brew or MacPorts more heavily)
I recommend Nix and Homebrew.
> the inability to debug and fix any OS problems,
How often do you run into this? I just don't really. I remember in my earlier days I did a bit because of some pinned package versions prevalent in macOS but when I switched to using Nix this went away, so I haven't run into any OS issues since... I think Catalina.
> Apple doesn't seem to care even remotely about users like me, and that's perfectly within their rights. The logical thing for me was to use something else.
That's totally fair. I love my MacBook, but I also have not run into the same struggles. I think my experience has been the complete opposite - once I configured it properly, it not only "just works", but I've yet to find a laptop that connects other aspects so seamlessly (AirPods, FaceTime, iMessage, Notes are all killer features in my day-to-day). Additionally, since switching to the M1, I have yet to find a laptop comparable in battery life (speed is generally matched when considering prices).
That said, if your workflow is to run everything containerized already, then running macOS as the base layer works just fine.
Some would consider this a feature. Unfortunately it does have launchd, essentially the model from whence systemd sprung... so joy for those folks would likely be short lived.
It is not an OS that is made for power users. The UX is for non-technical people mostly, with vague errors that try (and usually succeed) to hide any details from you, making many things thoroughly undebuggable. When something doesn't work, best case scenario is "try turning it off and on again" (e.g. if iPad screen extending doesn't work and there is absolutely no information anywhere on why, what prerequisite you're failing. The button just isn't there and that's it, deal with it. I had to restart both devices for it to work; another fun one is "a USB device is consuming too much power and has been shut down, replug it" without saying which device and without any way to detect which device (they all still worked)).
Also the lacking facilities around basic stuff for developer productivity like window management and containers.
This isn't true, though? Just use yabai.
For example, I've run into a couple of occasions where I've needed to build some third-party thing that happens to also need something like QEMU, but the build scripts only run on Linux. Annoying, but whatever, setup a Linux VM/"container" and good to go, right? ... except there is no nested virtualization support on the M1 macs.
Outside of those sort of issues and other ARM-specific problems, while it doesn't usually impact my workflow too much, I wish I had more control over the system. I wish, for example, it could boot off of something other than APFS, etc. I don't want to have to deal with Time Machine when I've already got snapshots everywhere else, etc.
Everything is relatively minor, but there is always some new thing that makes me annoyed every week or two.
FYI, MacFUSE has a user-space library (`libfuse`). The kernel extension also works fine on macOS 13 if you can persuade your IT department to allow it.
Unfortunately, MacBooks are limited to being in "restricted" security mode which disallows kernel extensions from being loaded.
We are not allowed to use "Permissive" security mode
This is why I couldn't justify continuing spending money on Apple (computer) hardware, I don't want to feel like a second-rate citizen on the platform I spend most of my time on. I used and loved MacBooks for a long time, but eventually I got tired of fighting against the one I'm giving money to for hardware, and had to switch away.
I'm gonna be honest and say that recent M2 laptops from Apple almost got me to buy one yet again, after a couple of years of hiatus from Apple laptops, but my wife reasonably reminded me about how much I bitched about various things last time I used their laptops for work. Ended up with another Carbon X1, and everything works as expected, battery works OK and so on.
But a side of me would love a laptop, but I need the maker to actually want to support me, not make it feel like sometimes they work against me.
Take a look at the Framework - a friend got it and is very happy with it.
I did battery life tests running the same Linux distro natively vs in a VM on MacOS. What I found surprised me: battery life was better with the VM than native, so I stayed with the VM.
When a VM is used, driver issues are effectively absent as Apple drivers handle most devices. (USB devices can be passed through to the VM.) The touch pads are properly calibrated and gestures work. Things like external displays just work. GPU access is not the same as from native Linux but the basic OpenGL support in VMWare Fusion was good enough for what I wanted to do. (That's not true any more though.)
Historically I've been more of a Linux user (and developer) on other laptops but it became interesting to get to know the MacOS world as well while still using Linux for dev work.
Just to be clear, is that an arm64 linux? Because emulating x86-64-linux still seems to be not very good.
Since TFA says "everything works" atm, including GPU, Bluetooth, Audio, USB, etc, what's stopping you from doing it now?
I asked and they said currently they don't permit it
Native GPU support with support for Vulkan APIs and some games running would also go a long way towards making the switch as I'm permitted to dual boot MacOS and Asahi - allowing me to once again use one device for "work and play".
Right now I dual boot Asahi and it's "work and experiment"
All things that should be fixed soon.
curl https://alx.sh | sh
to install asahi linux Dual boot on m1 or m2 MacBook apple silicon
so seems safe to me
*Thinkpad 560X! It was worse than a machine 17 years younger. I'm not sure which version the 560X had.
For clarification --- the trackpoint broke, right? Not the whole damn keyboard?
Glad you found something that works for you.
I also had it configured to move significantly faster on strong input, and slow down with gentle input.
Id be impressed if the speed at which you can select text accurately is higher on the trackpad than a mouse. I have seen lots of developers at work on their macbooks do the standard select text->copy->paste, and everyone is way slower at this then people who use mouse.
Maybe its my FPS gaming days that make me better at this, but then again, nobody really plays FPS seriously using trackpads
What seems missing from all this is the notion of gestures. The two finger scroll, single finger pointer move, pinch/zoom, etc - the trackpad is flexible in ways a trackpoint thing just can't be.
"I have seen lots of developers at work on their macbooks do the standard select text->copy->paste, and everyone is way slower at this then people who use mouse."
Not really sure what you're getting at. Selecting with a... trackpoint can be faster than using a mouse? Maybe, for some people. I'm constantly surprised by mouse-using/GUI people who always do so much more with a mouse than you need to. But I'm not sure that takes away any argument from the mac trackpad.
Pretty sure they're saying that mouse accuracy trumps trackpad for cut/paste operations.
> What seems missing from all this is the notion of gestures. The two finger scroll, single finger pointer move, pinch/zoom, etc - the trackpad is flexible in ways a trackpoint thing just can't be.
Yeah, these are great. You can get the best of both worlds on a Magic Mouse, though.
Personally I do alright with a trackpad, but I also lean heavily on the keyboard regardless of auxiliary input devices. In particular, I don't do pointer-heavy workloads like e.g. image editing.
Swipe left, swipe right, terminal, editor, browser, etc.
Swipe up, see all open windows.
Before long I am using a single laptop monitor about as effectively as a multi monitor desktop setup.
In general though, companies tend to issue laptops. So even if you have a desktop setup with multi monitors, keyboard, mouse (which I do and use daily), it will be backed by a laptop on a dock.
Personally, I like being able to work out and about. I work from cafes, planes, poolsides, my couch, my bed. That style of work limits your hardware choices
This is an interesting topic. I found a surprising amount of games available that run on my new MBA just fine.
I'm not sure this is true anymore. I download source and run "make" and the Xcode compilers all do their thing and entitlements are applied and so on. I haven't tried to do any store submissions or anything but it all seems like Apple are aware that CI systems are a thing, now
I don't believe it. My M2 Max maxes at around 40W. x86 just isn't that power efficient. You can idle with only one/few economy core turned on running at the lowest power state for longer battery life but x86 is simply very hungry when running high loads and it can't be magically improved. The arch is just obsolete and legacy.
I have been using x86 laptops in the past (terrible clickpad and speakers like a cheap handheld radio from '90 but whatever, I ignored the overpriced Intel Macs). But M2 is something which I couldn't ignore anymore, bought and I am very happy. They are awesome (unless you buy lowest spec 8GB RAM version)! My only complaint is the soldered SSD and apple pricing on SSD. Having a slot there would make so much sense...
It exists already - https://threedots.ovh/blog/2022/06/quick-look-at-user-mode-f... - it is just that Apple hasn’t made the API public, and (AFAIK) won’t give you the entitlements necessary to use it. But, both are issues Apple could fix relatively easily - if they wanted to - and here’s to hoping the fix is coming soon
However, there is an alternative that works right now - have your user-space filesystem process act as an NFS or SMB server, and mount that. From what I’ve heard - https://lists.nfs-ganesha.org/archives/list/[email protected]... - macOS even supports mounting NFS filesystems over Unix domain sockets, which has performance and security advantages over IP loopback
20 years ago, Apple cared about macOS as a Unix, they were interested in putting in features that developers and sysadmins wanted, like this.
Sadly, today's Apple has a rather different attitude towards that sort of thing
Worked without problems for sshfs when I tested it briefly.
A UNIX descendent of NextSTEP tooling, versus the distribution of the month in GNU/Linux world, preaching they will get the desktop this year, for 20 plus years, and the road for gaming relies on pretending to be Windows.
Treat macOS as Mac OS, not as a Linux distribution.
A proper set of UI frameworks, not stuck in pre-history C and C++ workloads or even worse Electron, a 3D graphics API that doesn't require one to become a graphics driver programmer to draw a triangle, proper attention to UI/UX,...
"They said a Unix weenie was code for software engineers who hated what we were doing to Unix (the operating system we licensed)—putting a graphical user interface on it to dumb it down for grandmothers. They heckled Steve about his efforts to destroy it. His nightmare would be to speak to a crowd of them."
https://web.archive.org/web/20180628214613/https://www.cake....
WSL 2 is a Hyper V VM for running Linux distributions, while WSL emulated Linux syscalls.
Surely some of that salary can be used to make OEMs selling Linux hardware happy, instead of buying Apple and then complaining macOS isn't yet another Linux distribution.
If you want WSL like experience on Mac, VMWare is happy to provide it to you.
It is like complaining using Playstation SDK isn't fit to target Nintendo Switch, go figure!
The comparison to the console world is apt as it mirrors Apple's attempts to lock their platform down, much like the console ecosystem. Thankfully the bootloader is unlocked and it's unlikely that's going to change.
Remember that the MacBook pro is a device marketed at professionals looking to do the work of their profession on their laptops. By "professional", it appears that Apple means "multimedia editors". If you are a software engineer, you are no longer the target audience for the MBP lineup.
Developer !== Linux.
Oh, and Macs have a hide and minimise feature, wow! Just a cluster fuck entirely. Gazillion different ways of installing applications and then managing all those updates separately (a lot like Windows in that regard). These are all issues I face on a regular basis, haven't even dived into developer experience.
Why do you expect alt+tab to perform identically to the Windows version such?e
> window tiling is trash
How's the built-in window tiling on Windows?
> applications need to be "quit"
...okay? yes?
> but some apps quit when their last window is closed, weird
Within Apple's own programs, you see this behavior? Or are you speaking of third-party apps that may be disrespecting the established paradigm?
> Oh, and Macs have a hide and minimise feature, wow! Just a cluster fuck entirely.
Yes, and I love the hide feature.
Seriously, there's plenty to complain about in Mac land these days. There's a definite trajectory and I don't at all like where it's headed. But all of your complaints (other than possibly the one regarding iTunes), essentially boil down to "this isn't Windows". That's fine, go use what you want. What's baffling is when you call something garbage, because it doesn't match your preferences especially when it matches those of others.
If you are a software engineer developing for Linux.
Seriously. I don't get the sentiment here, at all. It's like buying a (insert non-microsoft platform here) computer and complaining it sucks to develop Windows apps on it.
???
If only. It was not my choice to make, it was my employer’s.
On my desktop with 32GB RAM I rarely get above 12GB with a ridiculous amount of applications.
Indeed macOS is the weakest part when working on Apple Silicon.
Sure it’s quite pretty but it stumbles over itself with terrible quality of life features. macOS looks modern but feels around ten years behind other desktops now.
Apple love to talk about how professionals and power users can get so much work done with the amazing Apple Silicon but ignore the fact window management is garbage. The UI still frequently stutters/judders when just resizing a window. There is no true virtual desktop management. Etc.
I do love macOS but Windows and Linux desktop environments are evolving much faster to excellent quality of life and productivity improvements that macOS badly needs but Apple ignore and instead over engineer other “solutions” with things like Stage Manager.
Honestly who at Apple signed off on Stage Manager before basic window snapping?!
My money is that the iPad team are steering a lot of these decisions as part of a broader strategy to converge their desktop and mobile platforms.
Or UX testing. I gave it a try for a week. Gave up. It’s one of those few features that is not intuitive at all.
And it was supposed to help with productivity. Epic fail.
I believe the reason they don't bring window snapping and better overall window management to macOS is because it is something Windows and every Linux DE does and has done for years so they will be seen as copying and being "late".
One of the good things about the changes in Windows 11 is the new snap assistant that pops out at the top of the screen when you move a window. It's simple and clear how to use it and makes sense visible only when appropriate.
Windows, Gnome, KDE, etc. have all these things for years. Perhaps even over a decade by now?
Microsoft even go one further with Fancy Zones in their PowerToys pack which is fantastic on very large/wide monitors.
I wish Apple would add the functionality of apps like Rectangle/Magnet/Fancy Zones with some additional options such as layouts. That would be far more useful than whatever they were trying to achieve with Stage Manager on macOS.
But Stage Manager is what I actually wanted all along: let me group windows together, and then when I switch to one of them, bring the others along. For my typical workday I have my "slack, mail, mastodon" stage, a stage with a couple of browser windows, a stage with VScode and a couple of terminal windows, a stage with Obsidian and Omnifocus, and then ad-hoc stages as I need them. I add a terminal window to stages as I need.
I end up with the same benefits of two-dimensional TotalSpaces spaces, without having to care about the spaces' relative positions anymore! When I cmd-tab to VScode, I get my VScode "stuff", and when I cmd-tab to slack or mail, I get that "stuff", and so on. I wish I could make the transition faster, but with "Reduce Motion" turned on to skip the animation, it's not so bad.
All I can say is that I'm flabbergasted by this statement. Expose was lightyears ahead of Windows window management at the time (10.4!), and it took Microsoft until Windows 10 to include it in Windows (same for virtual desktop functionality).
> no true virtual desktop management
Not sure what you consider "true" virtual desktops; OS X 10.5 had classic workspaces with Spaces; Mission control later localized workspaces to monitors. Both approaches have their pros and cons.
What exactly is it that has Windows 10 years ahead of MacOS in window management?
> before basic window snapping
I can snap two windows side by side in a fullscreen split (the most common use case for snapping). I would certainly call that "basic window snapping".
> Does nobody at Apple have an ultrawide monitor? macOS is painful to work with on anything not 16:9 (or :10).
I don't know. They don't sell any, right? Apple designs their user experience for their own hardware. It's just table stakes with them.
tl;dr -- these are your opinions. They differ from those of others. That's how Apple can ignore the fact that their window management is "garbage" --- they likely don't see it that way.
Resident Evil Village, Baldur's Gate 3.
> and never happening for old titles
World of Warcraft.
Probably they care more about iOS since iPhone is their money maker. They might release iOS on MacBooks, too.
LOL. There was a time when mac/macos was the premium choice for a development environment, but I think that time has gone. Apple spent too much focus on iOS.
Is it just hardware that helps extend battery life or is it the combination of hardware and software? One advantage for Apple is that they are both the hardware and software designer hence they can optimise both to take advantage of each other.
They’re faster and cheaper and more compatible and better software support.
I can understand people who want a Mac laptop, but seems weird to choose a slower, more expensive, less mainstream machine for desktop.
Crazy fast hardware, great high refresh screen, insane battery life, fantastic touchpad, gestures and keyboard.
There is the potential that Windows games could run on it with some combination of x86 translation and Proton.
Using MacOS on it feels like I have a ferrari with square wheels.
Want to play games? Not unless the developers use Apple graphics APIs (not happening for new titles and never happening for old titles).
Want to run containerized workloads? Enjoy a cumbersome, slow, virtualized experience.
Want to use FUSE? Not on your work computer locked to high-sec mode as you cannot install kernel extensions (where is our user space FS Apple?).
Want to write a program that targets MacOS? Expect a cumbersome CI/CD experience because Apple expects you to manually compile distributables.
I could go on but as someone who has used MacOS for years and generally appreciates it, Apple really doesn't care much for developers. Other than its POSIX shell, MacOS doesn't have much going for it.
At least with my Intel MBP I could dual boot Windows so I could carry one laptop and switch between work and play. Now I have to carry around two computers when I travel for extended periods if I want to game.