i see asahi —
Developers’ work on past M1 hardware is making it easier to support new chips.
Apple Silicon Macs have gotten mostly glowing reviews on Ars and elsewhere for their speed, power efficiency, and the technical achievement they represent—the chips are scaled-up phone processors that can perform as well or better than comparable Intel chips while using less power.
But the move away from x86 hardware has also made the Mac a bit less useful for those who want to run multiple operating systems on their Macs. While you can run ARM versions of Linux and (with caveats and without official support) Windows within virtual machines on Apple Silicon Macs, running alternate operating systems directly on top of the hardware isn’t something Apple supports. Apple doesn’t distribute drivers for other operating systems, and moving away from x86 CPUs and widely supported Intel and AMD GPUs makes it harder for other developers to step in and provide those drivers.
That’s where the Asahi Linux project comes in. For months, a small group of volunteers has worked to get this Arch Linux-based distribution up and running on Apple Silicon Macs, adapting existing drivers and (in the case of the GPU) painstakingly writing their own. And that work is paying off—last week, the team released its first alpha installer to the general public, and as of yesterday, the software supports the new M1 Ultra in the Mac Studio.
In the current alpha, an impressive list of hardware already works, including Wi-Fi, USB 2.0 over the Thunderbolt ports (USB 3.0 only works on Macs with USB-A ports, but USB 3.0 over Thunderbolt is “coming soon”), and the built-in display. But there are still big features missing, including DisplayPort and Thunderbolt, the webcam, Bluetooth, sleep mode, and GPU acceleration. That said, regarding GPU acceleration, the developers say that the M1 is fast enough that a software-rendered Linux desktop feels faster on the M1 than a GPU-accelerated desktop feels on many other ARM chips.
Asahi’s developers don’t think the software will be “done,” with all basic M1-series hardware and functionality supported and working out of the box, “for another year, maybe two.” By then, Apple will probably have introduced another generation or two of M-series chips. But the developers are optimistic that much of the work they’re doing now will continue to work on future generations of Apple hardware with relatively minimal effort.
On both their wiki pages and their status updates, the developers note that Apple is surprisingly committed to backward compatibility with its silicon. Some low-level components like the interrupt controller and UART hardware date all the way back to the original iPhone and PA Semi, a company Apple purchased to kickstart its mobile chipmaking efforts in 2008. Some of that hardware has changed to support the scaled-up M1 Pro/Max/Ultra processors in particular, but the new interfaces shouldn’t have to change again for a long time.
The Asahi team wants its work to travel upstream into the Linux kernel and elsewhere and then trickle back down into other distributions over time. Linux kernel 5.13 added basic M1 Mac support based on the Asahi team’s work, and the M1’s PCIe driver was included in version 5.16 (other bits, including M1 Pro and Max support, have been submitted for review). This means that once Asahi is fully up and running on M1 Macs, other distributions hopefully won’t be far behind.
If you want to try Asahi Linux on an M1 Mac, the current installer is run from the command line and requires “at least 53GB of free space” for an install with a KDE Plasma desktop. Asahi only needs about 15GB, but the installer requires you to leave at least 38GB of free space to the macOS install so that macOS system updates don’t break. From there, dual-booting should work similarly to the process on Intel Macs, with the alternate OS visible from within Startup Disk or the boot picker you can launch when your start your Mac. Future updates should be installable from within your new Asahi Linux installation and shouldn’t require you to reinstall from scratch.