Not everyone buys a Mac just to run macOS. The bad news is that native Linux support on Apple Silicon will not be possible as of November 2021. Progress is made, however, so let’s take a look at the history of Linux on Apple Silicon so far.
Linux on Apple Silicon: An uphill battle
Prior to November 2020, Apple was using 64-bit x86 Intel processors in all of its Mac computers. These used the same architecture as most commercially available Windows and Linux machines. This had perks like Boot Camp, which enabled macOS and Windows to dual-boot, and native support for x86 Linux distributions.
But in the second half of 2020, Apple decided to go for a new type of architecture, similar to that used in its smartphones, tablets, watches, and smart speakers. The results spoke for themselves, with the M1 chip that debuted in the MacBook Air, Macbook Pro, and Mac mini blasting previous generation Intel Macs in both benchmarks and real-world performance.
Apple Silicon uses a completely different architecture. It is based on ARM, which requires a different instruction set, and that means software written for x86 is not natively compatible. For native Mac applications, Apple has revived the Rosetta transpiler, which translates and compiles x86 apps for the new architecture.
Apple made this switch for a number of reasons, including big increases in power and better power to wattage. In doing so, they also removed the ability to run popular x86 operating systems. Because Apple is silicon POOR–Based, it borrows heavily from ARM, but the software has yet to be specially adapted for it.
In true Apple fashion, these differences are proprietary and closely guarded. They underpin much of the advances Apple has made in its latest Mac models, but this poses a problem for Linux support. There are already Linux distributions designed for “real” ARM-based processors, but Apple Silicon is another beast that requires a new approach.
Apple Silicon is not tied to macOS
The good news is that Apple prevented unsigned kernels from booting on Apple Silicon. The kernel is a central component of an operating system. It is always there in the background and controls how hardware and software communicate with one another. Unsigned kernels are those that are not monitored by Apple.
This means that Apple chose not to tie the hardware to any particular type of software. The bootloader, which runs before the kernel, can load unsigned kernels, which came as a pleasant surprise to many when the M1 chip hit the market.
This is vastly different from the way Apple strictly controls its smartphones and tablets. Apple prevents unsigned kernels from running on iPhone and iPad, and the company could have chosen to do the same on the Mac too. They might still do that in future revisions or firmware updates.
At the moment, Apple Silicon is “open” in the sense that anyone can try to port a custom kernel. Unlike iOS and iPadOS, no “jailbreaking” is required to defeat Apple’s walled garden. Unless code is inherited from Apple’s software, operating systems written for Apple Silicon are perfectly legal.
Of course, this doesn’t mean Apple is helping with porting Linux to the platform. So far, the company has offered no resistance, so efforts to get Linux working on the new platform are making good progress.
The Linux kernel supports Apple Silicon
In June 2021, support for Apple’s M1 chip was added official Linux kernel. This allows the kernel to boot natively on the chip that powers the MacBook Air 2020, Mac mini, and iMac 2021.
Getting the kernel up and running was an important first step, but there are many more drivers that are needed to add support for the various controllers and chips that power Apple Silicon machines. These control all aspects of normal functionality: USB support, audio, power management, the ability to control CPU scaling, and more.
It is a long road from basic kernel support to a fully functional desktop experience, but thanks to the efforts of a few dedicated and experienced programmers, Linux is fast becoming a reality on Apple Silicon.
Enter the Asahi Linux project
the Asahi Linux project is a collaborative effort to bring Linux to Apple’s new desktop platform. The project reached an important milestone in September 2021. Apple computers that use the M1 chip can now be used as desktop Linux computers. The announcement was made in a blog post on the Asahi Linux blog.
A developer, Alyssa RosenzweigShe tweeted about her excitement:
The blog post describes the progress made so far in integrating several key and low-level drivers into the Linux 5.16 kernel. The post notes that while GPU support has not yet been added, “the CPUs of the M1 are so powerful that a software-rendered desktop is actually faster on them” when compared to comparable 64-bit ARM processors.
So far there is only one alpha installer that is aimed directly at developers. In due course the Asahi Linux Project plans a version of Arch Linux ARM for everyone to try. Apple’s M1 chip is the first target, but the Asahi Linux Project notes that “we are in a unique position to try to write drivers that not only work for the M1, but also – unchanged – on future chips will work. ”
This could be great news for MacBook Pro owners who have the upgraded M1 Pro and M1 Max chips, but either way it seems like the Asahi Linux Project is committed to bringing Linux to so many Apple Silicon- Bring equipment as possible.
Remember, this project is led by extremely talented and dedicated enthusiasts who work tirelessly on a passion project. If you are interested, you can start the Asahi Linux Project with a donation, or even devote your own time by contribute to the project direct.
Start using Linux through virtualization today
Even if you can’t run Linux natively yet, you can still do it with a virtual machine (VM). UTM is an app with a free and paid (Mac App Store) version with which you can emulate a variety of processor architectures.
These include ARM64 at near-native speed and x86-64 at much slower speeds. We recommend sticking to ARM64 versions for performance reasons. Read our guide to running Linux on Apple Silicon in a VM for the full details.
Alternatively, consider buying a laptop that already has great Linux support.