(DIR) Home
(DIR) Blog posts
Emulating Debian on a Mac
24 February, 2025
QUOTE
This post was translated from HTML, inevitably some things will have changed or no longer apply - July 2025
END QUOTE
After failing to get any distro to run on this T2 security chipped Mac last January I mostly put my Linux ambitions on hold for a bit.
All year I emulated different Linux setups as servers on the box, SSHing in to them & happily plodding away, but for some reason it never occurred to me to try doing that for a desktop.
I tried QEMU, & it seemed like a fun way to play with some different hardware options, but I couldn't get it to (I think) stop emulating the hardware as well, & it was just too slow. I'm not entirely sure I was using the best set of options, or even a working set of options, but that seems like the nature of that particular beastie.
(HTM) QEMU
Then I stumbled onto some Apple sample code that seemed like it could be what I wanted. Firing up Xcode & using Swift... to escape Xcode & Swift.
(HTM) Apple sample code
It worked. Mostly. Whatever VZVirtualMachine's doing it's doing it faster than QEMU.
I had to switch from KDE to Gnome. I don't remember KDE being that much more resource intensive, but whatever it's needing this emulated box doesn't have it. It was slow, & copying between the Mac & Linux wouldn't work. So Gnome, though I also haven't been able to make sound work yet. Which is a shame, because radio tends to involve quite a bit of sound. It may be that sound requires a capability I can't give the program because I don't have a developer account, or a permission I need to set somewhere, or it may be something else. But I'll get there.
Rust installed fine. Zed works, though it complains about the emulated graphics card. Projects I built on the Mac build just as happily on Debian. (Phew). Mostly it works.
Eventually I hope I'll solve the problem with a new box, but for now: this. With a bit of work still to do.
Sometimes the rabbit holes find you.