I cannot wait for Linux to be fully usable on my Apple Silicon MBP. That is going to be such a killer environment to develop on.
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.
I'm wondering if an M1 MacBook would actually have such a good battery life on linux. The processor is very power efficient, but I'd (naively) assume that MacOS's power management probably has a big influence too. In the same way that Linux laptops usually have a bad battery life compared to the same hardware on Windows. How good is Asahi when running similar workloads? And is it possible that it could reach parity with "stock" MacOS?
(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.)
> Using MacOS on it feels like I have a ferrari with square wheels.
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 with excellent quality of life and productivity improvements that macOS badly needs but Apple ignore or worse over engineer other “solutions” such as Stage Manager.
Honestly who at Apple signed off on Stage Manager before 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 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.
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.
> 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?).
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
On my x86 MBP, I run GNU/Linux in VMWare Fusion, full screen. That gives me a combination of both worlds, which I can easily switch between with 4-finger swipe.
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.
I would consider myself quite the power user and use both macOS and Linux daily…
I don’t really understand, from the developer perspective, your concerns about macOS?
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).
"Using MacOS on it feels like I have a ferrari with square wheels."
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.
I seem to be in the minority, but I honestly don't get how people can develop productively on a laptop. The lack of full size keyboard, screen real estate, and uncomfortable touchpad compared to a mouse just feels horrible to me.
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.
How can this possibly be true when Asahi Linux is still in alpha?
A quick trip to the project page shows lots of hardware features that are still not supported. [1]
It’s not a knock against Asahi Linux - it’s amazing what they have accomplished with a small team. It just seems so misleading for the author to claim that everything works perfectly.
Thunderbolt, DP Alt Mode, Video Decoder/Encoder, SEP, Neural Engine, internal Speaker
Thunderbolt seems like the main missing feature. It's easy to see how someone could live a fulfilling life without running into the lack of any of those features. E.g. is there even anything on the Linux desktop that could take advantage of the Neural Engine or Secure Enclave?
I've got an M2 Air. It is very usable, but its far from everything working perfectly.
Builtin speaker support is still a work in progress. It works if you know what you are doing and are not afraid to damage your speakers if you make a mistake. There's been progress on this though, so I expect this to be resolved sooner than later.
There's no builtin speakers in the author's mac studio though, so I'll give them a pass for this one.
Bluetooth and wifi both work, but their drivers are still buggy. I see a lot of errors in dmseg from these drivers and occasionally things stop working and require a reboot to fix.
GPU acceleration works, but there is still a lot of work to do on that driver.
External displays over the thunderbolt ports don't work yet.
Other things that don't work on the laptops: webcam, touch-id / Secure Enclave, some miscellaneous software.
Don't get me wrong, I've been able to daily drive linux only on my m2 air since August. I love the hardware and the current state of Asahi meets my needs. And its been steadily improving over the course of time. But its far from "work[ing] perfectly" yet.
Not everything will work.
Once upon time I tried to make CTF with M2 Pro, and I seriously wished that I had x86_64 Linux instead.
Many of the penetration testing tools are not mainstream and they include pre-build x86_64 binaries, or are configured just to not compile with ARM, for reason unknown.
And there is no time to figure out what is wrong.
I know this might be a niche scenario, but still...
It's not obvious if you skim the post, but they mention getting the Mini in the first paragraph, but later mention they got a tricked out mac studio. so just be aware the fawning notes are about the Studio, not the Mini (although the mini does rock I love it)
Not having to deal with an entire custom laptop (i.e. getting a lot of standard peripherals for "free" after only getting USB to work) also helps a whole lot, and note the article specifically talks about a desktop mac.
Not that hard to believe when you consider the hardware specs for Apple machines are so heavily locked down to a very specific set of mobo, cpu, and only variability in core count, ram amount, hard drive size, etc.
It's not like PC world of mix and match everything.
> In some cases, it is too fast. When I installed K3s, all of the containers in the kube-system namespace kept entering the dreaded CrashLoopBackOff state [..] After some investigation, I found out that the Mac Studio was just too fast for the Kubernetes resource timing
I’d like to understand what the issue here is. Sounds counterintuitive to me.
Just so that I understand this correctly: he bought a $6000+ Mac Studio with a 20-core M1 Ultra processor and 128GB of RAM. But all these cores, ram, bandwidth, storage are not important, but rather the fact it is an "ARM64" workstation is what was the game changer.
Seriously? Would a $6000+ x64 workstation be noticeably slower?
> Asahi is a Linux distribution that can run natively on Apple Silicon-based Macs due to some slick reverse engineering provided by members of the open source community. Moreover, running Asahi is perfectly legal because Apple formally allows booting non-macOS operating systems on their Apple Silicon platform.
Umm how would it ever be not legal? Even if Apple doesn't formally allow it, you're free too so with your own hardware whatever you want.
I don't get the hype around apple silicon for desktop computers. I sort of understand the power efficiency argument for laptops (although it is often overstated IMO, I could work for >10h straight with my X1 carbon 6 years ago), but for Desktop it is trivial to build a PC that runs significantly faster, with much more upgradability and flexibility for a fraction of the price. So if I want performance on a Linux system why would I choose Apple silicon?
#snarc beats /s anyday. On a serious note. If you want to save on the power bill. Arm anything wins against my 1000 watt xeon workstation. I can heat several rooms with that monster.
> Everything - and I mean everything - is unbelievably fast.
As a long time Linux user and someone forced to use MacOS, my hands are itching to buy a 2nd M1/M2 mac and install Asahi linux on it. I've never felt such excitement since the days of Compiz.
Is anything interesting happening for non-Apple desktop/laptop Arm?
At the moment building for aarch64 pretty much means embedded, Mac users on the team, or Graviton/other Arm servers.
Are we going to reach a point where there's a meaningful mix of architectures, but it doesn't point to the brand of device? Of course Apple will continue with only one thing, but that Lenovo might have options from Arm licensees as well as Intel/AMD?
It's cool that Arm64 chips are catching up in speed, but the software support has been there for a long time.
When I bought my Raspberry Pi several years back, I was able to comfortably develop using Emacs, gcc, and SBCL Common Lisp - the same software I use on my AMD desktop. Everything I needed "just worked"; compiling just wasn't very fast.
P.S: the 3440x1440 screenshot in TFA looks gorgeous on my system. Everything is using subpixel AA (terminals, code editor, browser, except for the URL, for whatever reason) but not the file manager. I wonder why that is.
Blanket statements of "everything works" always leave me a little suspicious. But if sleep/wake, DPMS, power consumption, fans, and those kinds of irritants, which are omnipresent even on x86 Linux, are all good under Asahi that is pretty cool.
We need more devs to use linux. It is a better experience IMHO. I've been donating to the asahi project every month hoping apple hardware gets finally liberated.
Pop!OS is worth looking at if you like Ubuntu but don't like where Ubuntu is going.
Plain debian is fine though - unless you have a recent laptop and need nvidia drivers. You can make it work, but it's fiddly and the Pop! guys already figured everything out for you. I use debian on an old HP deskside server as a workstation and it's been fantastic.
That said, I really wish someone other than Apple would release something like an ARM64 NUC, with good Linux compat. Even something on par with the SD Gen 2 should be plenty to run a desktop day to day.
I'm not trying to invalidate your specific use case, but in general, there's not really any practical difference between ARM64 and x86 for desktop use. ARM is generally perceived as being more power efficient, but the latest x86 mobile processors from AMD (and probably also Intel) are very efficient. The Apple M series does have very tightly coupled RAM and onboard ML & video encode accelerators, but when it comes to plain old compute power & efficiency, AMD and Intel have pretty much caught up afaik.
There were recently a couple of new NUC-type devices based on the outgoing generation AMD mobile processors. I have the Minisforum UM690, based on the Ryzen 6900HX, and it's been working great as my new desktop computer. The iGPU is pretty good too. The Ryzen 6800U (U = efficient variant, 25 W TDP) is about the same as the M2 for performance and power consumption. The 6900HX in this device is the high power variant, default TDP is 45 W but you can lower it to 25 W in the BIOS which should make it about identical to a 6800U. The newer ones with the latest gen Ryzen chips should be much more efficient.
I was really tempted to try this out: https://news.ycombinator.com/item?id=34027280 but the 16GB of RAM was too tiny for my day-to-day. It seemed to be a common trend in arm64 things one can buy nowadays
Not a NUC, but there is the ThinkPad X13s. Linux support seems to be shaping up decently, with some hope that it might be supported by stock ubuntu in ubuntu 23.04.
Asahi Linux is amazing and pretty usable at this point. However, last I tried I couldn't get stuff like Slack and Spotify to work on it because there are no Arm packages for those. Has anyone found a way around that?
[+] [-] apatheticonion|3 years ago|reply
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.
[+] [-] mardifoufs|3 years ago|reply
(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.)
[+] [-] satysin|3 years ago|reply
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 with excellent quality of life and productivity improvements that macOS badly needs but Apple ignore or worse over engineer other “solutions” such as Stage Manager.
Honestly who at Apple signed off on Stage Manager before basic window snapping?!
Does nobody at Apple have an ultrawide monitor? macOS is painful to work with on anything not 16:9 (or :10).
[+] [-] capableweb|3 years ago|reply
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.
[+] [-] skissane|3 years ago|reply
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
[+] [-] jlokier|3 years ago|reply
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.
[+] [-] ar_lan|3 years ago|reply
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).
[+] [-] jacknews|3 years ago|reply
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.
[+] [-] ActorNightly|3 years ago|reply
[+] [-] _448|3 years ago|reply
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.
[+] [-] freetime2|3 years ago|reply
How can this possibly be true when Asahi Linux is still in alpha?
A quick trip to the project page shows lots of hardware features that are still not supported. [1]
It’s not a knock against Asahi Linux - it’s amazing what they have accomplished with a small team. It just seems so misleading for the author to claim that everything works perfectly.
[1] https://github.com/AsahiLinux/docs/wiki/Feature-Support
[+] [-] kalleboo|3 years ago|reply
Thunderbolt, DP Alt Mode, Video Decoder/Encoder, SEP, Neural Engine, internal Speaker
Thunderbolt seems like the main missing feature. It's easy to see how someone could live a fulfilling life without running into the lack of any of those features. E.g. is there even anything on the Linux desktop that could take advantage of the Neural Engine or Secure Enclave?
[+] [-] eatonphil|3 years ago|reply
> To quote Hamlet, Act 3, Scene 3, Line 87: “No.”
> Everything works… and works perfectly.
That is impressive and really hard to believe! I guess I'll have to find an M1 mac Mini to try myself!
[+] [-] psanford|3 years ago|reply
Builtin speaker support is still a work in progress. It works if you know what you are doing and are not afraid to damage your speakers if you make a mistake. There's been progress on this though, so I expect this to be resolved sooner than later.
There's no builtin speakers in the author's mac studio though, so I'll give them a pass for this one.
Bluetooth and wifi both work, but their drivers are still buggy. I see a lot of errors in dmseg from these drivers and occasionally things stop working and require a reboot to fix.
GPU acceleration works, but there is still a lot of work to do on that driver.
External displays over the thunderbolt ports don't work yet.
Other things that don't work on the laptops: webcam, touch-id / Secure Enclave, some miscellaneous software.
Don't get me wrong, I've been able to daily drive linux only on my m2 air since August. I love the hardware and the current state of Asahi meets my needs. And its been steadily improving over the course of time. But its far from "work[ing] perfectly" yet.
[+] [-] nicce|3 years ago|reply
Many of the penetration testing tools are not mainstream and they include pre-build x86_64 binaries, or are configured just to not compile with ARM, for reason unknown. And there is no time to figure out what is wrong.
I know this might be a niche scenario, but still...
[+] [-] rmorey|3 years ago|reply
[+] [-] eqvinox|3 years ago|reply
Not having to deal with an entire custom laptop (i.e. getting a lot of standard peripherals for "free" after only getting USB to work) also helps a whole lot, and note the article specifically talks about a desktop mac.
[+] [-] sys_64738|3 years ago|reply
[+] [-] gbN025tt2Z1E2E4|3 years ago|reply
It's not like PC world of mix and match everything.
[+] [-] cjdrake|3 years ago|reply
[+] [-] UncleOxidant|3 years ago|reply
[+] [-] matheusmoreira|3 years ago|reply
[+] [-] znpy|3 years ago|reply
[+] [-] tbrock|3 years ago|reply
[+] [-] rkunde|3 years ago|reply
I’d like to understand what the issue here is. Sounds counterintuitive to me.
[+] [-] diffeomorphism|3 years ago|reply
Seriously? Would a $6000+ x64 workstation be noticeably slower?
[+] [-] wkat4242|3 years ago|reply
Umm how would it ever be not legal? Even if Apple doesn't formally allow it, you're free too so with your own hardware whatever you want.
[+] [-] matheusmoreira|3 years ago|reply
[+] [-] blihp|3 years ago|reply
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] leidenfrost|3 years ago|reply
[+] [-] ip26|3 years ago|reply
Linux 2023: Sleep support doesn’t work quite yet, but it’s being worked on right now
[+] [-] jjtheblunt|3 years ago|reply
[+] [-] cycomanic|3 years ago|reply
[+] [-] waingake|3 years ago|reply
How nice of Apple. #snarc
[+] [-] ngold|3 years ago|reply
[+] [-] andrewstuart|3 years ago|reply
I do understand that people want the Mac for the build quality of the laptop, not just for speed.
[+] [-] FlyingSnake|3 years ago|reply
As a long time Linux user and someone forced to use MacOS, my hands are itching to buy a 2nd M1/M2 mac and install Asahi linux on it. I've never felt such excitement since the days of Compiz.
[+] [-] OJFord|3 years ago|reply
At the moment building for aarch64 pretty much means embedded, Mac users on the team, or Graviton/other Arm servers.
Are we going to reach a point where there's a meaningful mix of architectures, but it doesn't point to the brand of device? Of course Apple will continue with only one thing, but that Lenovo might have options from Arm licensees as well as Intel/AMD?
[+] [-] jlarocco|3 years ago|reply
When I bought my Raspberry Pi several years back, I was able to comfortably develop using Emacs, gcc, and SBCL Common Lisp - the same software I use on my AMD desktop. Everything I needed "just worked"; compiling just wasn't very fast.
[+] [-] TacticalCoder|3 years ago|reply
P.S: the 3440x1440 screenshot in TFA looks gorgeous on my system. Everything is using subpixel AA (terminals, code editor, browser, except for the URL, for whatever reason) but not the file manager. I wonder why that is.
[+] [-] jeffbee|3 years ago|reply
[+] [-] hernantz|3 years ago|reply
[+] [-] karmakaze|3 years ago|reply
Debian seemed to be a natural default but I'm leaning toward an Arch distro so would prepare me if I should switch to ARM down the road.
[+] [-] smackeyacky|3 years ago|reply
Plain debian is fine though - unless you have a recent laptop and need nvidia drivers. You can make it work, but it's fiddly and the Pop! guys already figured everything out for you. I use debian on an old HP deskside server as a workstation and it's been fantastic.
[+] [-] silisili|3 years ago|reply
That said, I really wish someone other than Apple would release something like an ARM64 NUC, with good Linux compat. Even something on par with the SD Gen 2 should be plenty to run a desktop day to day.
[+] [-] the_pwner224|3 years ago|reply
There were recently a couple of new NUC-type devices based on the outgoing generation AMD mobile processors. I have the Minisforum UM690, based on the Ryzen 6900HX, and it's been working great as my new desktop computer. The iGPU is pretty good too. The Ryzen 6800U (U = efficient variant, 25 W TDP) is about the same as the M2 for performance and power consumption. The 6900HX in this device is the high power variant, default TDP is 45 W but you can lower it to 25 W in the BIOS which should make it about identical to a 6800U. The newer ones with the latest gen Ryzen chips should be much more efficient.
[+] [-] mdaniel|3 years ago|reply
[+] [-] wongarsu|3 years ago|reply
[+] [-] emilsedgh|3 years ago|reply