
Using Linux on Apple Silicon
Image: Tom’s Hardware Guide
I bought an M3 MacBook Air last fall to experiment with AI tools and LLMs that were available for use on Apple Silicon. The M3 had more RAM than the M2 it replaced and a larger NVME drive. Those were important considerations. I wanted to install Fedora Asahi Linux on it eventually. To my dismay, I learned that the M3 was not supported. The Asahi Project is still working on support for M3 and M4 macOS machines. That news bummed me out when I read it. Recently, I discovered another way to run Linux on an M3 MacBook Air using UTM.
UTM is a virtualization software that can be installed on an M3, and there are a number of Linux virtual machines that can be downloaded and run at near-normal speeds on the M3. According to the project website, “UTM employs Apple’s Hypervisor virtualization framework to run ARM64 operating systems on Apple Silicon at near-native speeds.” This was great news, and I was eager to install it. I decided to use Homebrew to install the software.
% brew install --cask utm
Once the software was installed, I was ready to try it out. A dialog box appears, and you are invited to “Create a New Virtual Machine” or “Browse UTM Gallery,” a tab for the User Guide and one for support. I decided to browse the gallery and was pleasantly surprised to find several prebuilt Linux ARM64 machines ready to run.
At its core, UTM operates on QEMU—a robust and versatile emulation software that has stood the test of time as a free and open-source solution. Despite its capabilities, QEMU’s extensive array of command-line options and settings can make it challenging to navigate and configure. UTM simplifies this process by offering the same robust functionality as QEMU while eliminating complexity, making it accessible to users without requiring expert-level setup.
I chose Debian 11 XFCE from one of the prebuilt machines, downloaded it quickly, and booted it up. The Debian machine has 1 gigabyte of RAM, a 20 GB disk drive, a VGA console, and an ARM64 architecture.
The project’s documentation is excellent and extensive. It is open source with an Apache 2.0 license, and the code is available on Github. I’m still exploring and learning each time I use it. It’s fun to use Linux on Apple Silicon at near-native speeds.