Introduction
After some time of silence on my blog I want to share with you some cool stuff I was figuring out the last weeks and months. Let me give you a short background first though, just to set the context right…
Over the last 2 years I was heavily involved in a novel product from my employer. Working from the specs to a PoC and then having the first users on the system was really challenging and time consuming, but on the other hand a lot of fun… and I’ve learned a lot also in regards to developing, distributing and running complex software on embedded devices.
As part of this I recently rewrote part of the on-device software in Rust. As more complex Rust projects tend to consume a lot of compile time (even for debug builds), and I was on the turn to get a new laptop from my company anyway, I voted for a 14“ M1Pro MacBook Pro. Compile times in Rust have reduced dramatically on that machine and it is really fun to have this huge power available in such a mobile form factor…
Nevertheless I also was eager to check out if and how I may be able to run my beloved Manjaro ARM Sway system on the device with the help of a virtual machine manager such as UTM.
This is how it all turned out…
Requirements
This guide assumes that you are using an Apple Silicon based Mac - so either M1, M1 Pro, M1 Max or M2, which is having the same CPU architecture as the Manjaro ARM images (aarch64). Even though the UTM software is utilizing Qemu behind the scenes and it might be possible to emulate the aarch64 processor on an x86_64 PC as well, I haven’t tested this setup (yet) and would expect a much slower experience of the virtual machine.
Beside the hardware you should have a decent macOS operating system installed, and have downloaded and installed the UTM virtualizer.
Hint: if you want to support the developers of the UTM application you should buy the version from the Mac App Store ($9.95 at the moment).
Also having the QEMU tools installed on the system helps with management and support of the created VMs from the commandline / scripts. You can easily install QEMU via HomeBrew or MacPorts.
