Most of the switching posts are from frustrated windows users making the jump. I’m already a Linux user on my server (Ubuntu for now, going Debian at some point) and a 2014 iMac for tinkering/testing (KDE Neon), and a couple of raspberry pis (raspberry pi os headless) but our main household computer is an M1 Mac mini that my wife and I both use.
Lately I’ve been super frustrated with macOS.
- First, macOS just refuses to mount my USB 3 drives. I have a 1T seagate ssd and a 3T WD hdd (both exFat) and it just flat out refuses to see them. The same drives are visible and mount just fine on my server and the KDE iMac. On macOS, they’re invisible. They don’t auto mount, and they don’t show up in disk utility (gui or shell), which is really fucking annoying when I’m trying to move large files between machines
- I use Cryptomator to encrypt data on macOS, and because of their whole walled garden shtick and how they continue to lock out system extensions, macfuse routinely breaks, rendering it impossible to access my data on macOS. Again, on the KDE iMac, everything just works as it should. On the Mac It’ll throw me the enable the extension warning, so I enable it. Then it tells me I have to re-boot to actually use the extension. I reboot, and it throws the enable extension warning again. Fucking infuriating.
I hadn’t already pulled the trigger on Asahi because my wife uses the m1 more than I do, and I didn’t want to break anything she does. However today was the last straw as a task that should have taken me maybe 15 minutes took two hours of fighting with macOS. After talking with her she gave me the go ahead to install Asahi. It helps that she does most everything in the browser and that the install is a dual boot setup with macOS still available.
I used to love macOS. It felt so intuitive and while it was never flawless, it mostly just got the fuck out of my way so I could do the things I wanted and needed to do. I still love a lot about Apple hardware, but fuck that shit os. I’m happy to be running Linux on all of the computers in the house.
Now I just have to learn the Fedora differences, having used Debian derivatives up until this point.
Huh, I thought it was ARM enough to work with existing other distros, but I guess not. I learned something new today, thanks!
It’s not that simple. The biggest issue is that Apple Silicon uses 16K memory page sizes instead of the 4K pages used by pretty much every other architecture out there. This means you’d need a kernel patched for 16K pages - but that would also cause an issue with drivers and other apps designed with 4K pages in mind. So there’s a lot of work done in that area to get both the kernel and apps working. Even then, some apps may never work, and so you’d have to resort to using hacks like microVMs to run a 4K kernel and then run the app on top of it, but that introduces it’s own set of issues of course.
Then there’s the issue of hardware components - of course Apple hasn’t open-sourced any of their firmware/drivers, so most of the Asahi drivers were developed by reverse engineering. The GPU was the biggest piece of work, the reverse engineering done to get it to a workable state by the Asahi team was nothing short of genius. In fact the current state of the OpenGL driver is so good that it’s far, far more compliant to the spec compared to macOS itself - macOS only supports OpenGL upto 4.1 and is not certified either (and technically no longer supported by Apple), whereas Asahi supports up till 4.6 - and it’s still being improved. See: https://arstechnica.com/gadgets/2024/02/asahi-linux-projects-opengl-support-on-apple-silicon-officially-surpasses-apples/
Similarly, a lot of wizardry was done to get the sound going, and not only did they get it going - they even improved the DSP so it sounds even better than macOS! (Scroll down to the speakers section here: https://asahilinux.org/2024/01/fedora-asahi-new/).
But in spite of all that, there’s still a lot of work to be done, such as getting Thunderbolt and DisplayPort going, as well as improving compatibility with x86 apps (using krun and FEX) and more GPU improvements etc and support for the M3 and newer chips… Even then, Asahi is already in a usable daily-driver state for many users, and it’s improving at a rapid pace.
So long story short, the Asahi team had to do a ton of work to get it all going on a complex, closed piece of hardware like Apple Silicon - and it’s genius levels of work, the level of which I can barely comprehend - and isn’t something any random distro can pull off.
Wow, that’s really impressive! And they’re not being paid by Apple either…
The project has a Patreon page. I’d encourage anyone who’s interested to consider supporting their work. I’ve been a subscriber since the Patreon started and I don’t even use Asahi. I installed it once to kick the tires and it was very impressive, but I like the Apple ecosystem. I just also like choice.
Apple M1 isn’t just a CPU, is a SoC which holds a CPU and a GPU.
I thought there would be lots of Linux distros designed for SoCs since they’re somewhat common for laptops.
It’s not just about the SoC itself and GPU needs drivers to work.
Edit:
If you would like to know more about adding support for a new SoC on Linux, check out Asahi Linux blog.
This is not really “ARM” but Apple Silicon. All of the low level functions are Apple firmware calls.
Generally yes, but you still need hardware support (mostly kernel and mesa). They upstream - but generally you currently want packages built from their git for that.
Also the installer is very mac hardware specific.
@radix @MrSoup yeah … Apple didn’t release any specs for their stuff so the @AsahiLinux team had to reverse engineer everything.