How to install Ubuntu on a Mac with M1 processor?

I am looking for a detailed instructions to install Ubuntu on a Mac with the new ARM based M1 processor, in particular the Mac Mini.


The answer to this question comes from Linus Torvalds himself - put simply, it's "you can't". But more specifically:

The main problem with the M1 for me is the GPU and other devices around it, because that's likely what would hold me off using it because it wouldn't have any Linux support unless Apple opens up... [that] seems unlikely, but hey, you can always hope.

Source: https://www.zdnet.com/article/linus-torvalds-would-like-to-use-an-m1-mac-for-linux-but/ - an Interview with Linus by ZDNet

The core problem here is that the Linux kernel itself does not support the M1, and without core Linux support in the core Linux kernel for M1 chips and architectures and devices, there is not going to be a way to install Ubuntu. And without Apple releasing information on the support for the chipset and such, it will not likely see any Linux support in the future.

Purportedly, there are developers working on supporting the M1 chip however there is NO eta on this, and unless Apple starts releasing more information and code for their chipsets it's likely to take A Long Time. And until such support is figured out through the 'trial and error' approach to code hacking and developing support and such, there is no way to install Ubuntu (or any Linux variant) on M1 chips.


Disclaimer: This answer is based on a post in Corellium Blog. Visit that link for more details. I have not verified this procedure, so proceed at your own risk.

Also, the GPU is not supported yet.

The Corellium Team has ported Ubuntu 20.10 to the Mac Mini M1. This is how to install it.

  1. Download Ubuntu root file system. This is based on the Raspberry Pi's image for Ubuntu
  2. Extract the image with the following command.
tar -xjvf ubuntu-20.10-preinstalled-desktop-arm64+raspi.img.bz2

Now write the image to a USB drive (minimum 16 GB space required)

sudo dd if=ubuntu-20.10-preinstalled-desktop-arm64+raspi.img of=/dev/USBDISK bs=1m

Note: you will have to replace the /dev/USBDISK with the path of your USB disk, which may be something like /dev/sdb1.

To find the path of your usb Drive, enter the command sudo blkid.

  1. Connect the USB drive to the Mac using an adapter, via the USB C port (The USB A port is not supported yet).

  2. Load one true recovery OS (1TR) - Turn of the Mac, and hold power button until you see "loading options". Once it loads, you can select the Terminal option from the top menu bar.

  3. To install the custom kernel, enter the command

/bin/bash -c "$(curl -fsSL https://downloads.corellium.info/linuxsetup.sh)"

It will fetch the script online. The script will ask for your username and password. Once you see "Kernel Installed" you can reboot.

  1. After you reboot, the Mac should boot into Ubuntu. The default username is "pi" and password is "raspberry" (the root password is also "raspberry"). It is highly recommended that you change the password.

Reverting back to MacOS

If you want to revert back to MacOS, open 1TR, and enter the command bputil -n.