

On the first boot I did get thrown into the UEFI shell as described in the UTM instructions Troubleshooting section. In the Network tab, configure port forwarding so that an arbitrary port on the host (I picked 2200) gets forwarded to port 22 on the guest virtual machine.Under Display set console access only (I don’t need the GUI as I’ll be SSHing into the box).

I picked 8 GB memory as hinted at by the the illustration in step 6.I essentially followed the UTM instructions to set up the virtual machine, with a few minor differences. The Ubuntu site tends to take you to the Intel version, so make sure you grab an ARM download. Download the Ubuntu Server ISO image for the version you’re interested in (I used 20.10).Download and install UTM - you can get a free version, or pay a small amount for it to get updates and to its support development.Here’s what I did to get myself up-and-running with an Ubuntu virtual machine running on UTM, editing code with VScode’s Remote-SSH extension. But a bit of searching led me to UTM as a MacOS hypervisor that would support the M1 processor. For a couple of minutes I seriously entertained the idea of returning this machine and getting another Intel-based one. I recently got a MacBookPro built on Apple’s M1 ARM CPU, and my usual set-up is impossible because VirtualBox doesn’t (yet) support ARM processors. Using VScode to SSH “remotely” into these VMs is a great set-up for development, for me. On my Intel-based Macs I have been using VirtualBox and Vagrant to run Linux virtual machines for years. Linux VMs on an M1-based Mac with VScode and UTM
