4 ms·
Talking about emulation/VMs, I have recently played with multipass (from canonical) to run ubuntu VMs on my Apple M1. It works like a charm! In the past I have
by tkiolp4 4y ago
Talking about emulation/VMs, I have recently played with multipass (from canonical) to run ubuntu VMs on my Apple M1. It works like a charm! In the past I have tried VMware and Vagrant, and while they somehow work, I’m always running into issues. More recently I tried qemu, and I spent many days trying to figure out the correct set of command line parameters to run linux.
The bad thing about multipass is that it only runs Ubuntu VMs. The good thing (besides working out of the box) is that mutipass uses qemu behind the curtains, and as part of the logs multipass spits out, one can see the complete set of command line parameters that was used to spin up the VM (so that can be used as a blueprint to run other VMs besides Ubuntu)
- shoo_pl 4y agoHave you seen https://github.com/lima-vm/lima https://github.com/lima-vm/lima ? Runs linux VMs and can run x64 via quemu or even using rosetta2 & apple virtualization framework
- dicknuckle 4y agoI've used that and can confirm it works great. I just use it to run Arm64 Linux on my M1 chip at work for speed.
- yonz 4y agoTIL Adroid Emulator is Qemu https://android.googlesource.com/platform/external/qemu/+/2db80f7c1921a6f5d48b998378e3792e16c968a4/README.md https://android.googlesource.com/platform/external/qemu/+/2d... It saddens me that so many of these open source projects barely get any monetary love.
- nousermane 4y ago> tried qemu, and spent many days trying to figure out the correct set of parameters It's really not that hard, once you get used to it. Or, if you rather not spend that precious time, there is a GUI tool that would configure those parameters for you: https://virt-manager.org/ https://virt-manager.org/ Bonus: once started with virt-manager, run "ps ax | grep qemu", et voila - you have your qemu parameters, ready to copy-paste, should you wish to run exact same VM later from a script, or something...
- moondev 4y agoDoes virt-manager run on aarch64 macOS? I thought it needed libvirtd.
- ekianjo 4y ago> Talking about emulation/VMs, Box86 / Box64 is however not emulation or VM. It translates X86 and X86_64 cpu code to ARM code. If anything it's very close to what Rosetta2 does on Mac.
- kayamon 4y ago...that's an emulator.
- vbezhenar 4y agoOne issue with those "shortcuts" is that you'll end up with crazy arg strings consisting of 20+ cryptic parameters. qemu actually has sane defaults, so it's not that hard to launch a VM, if you don't need all fancy features (chances you don't). I'm not sure if it's really worth it to spend time reading qemu manuals. I did it and I'm using shell scripts to start VMs which is easier for me than learning another qemu wrapper. And I know that I'm using bare minimum which I like.
- rcarmo 4y agoIt uses _parts_ of QEMU, but not the whole thing.
- jweir 4y agoWe migrated from Vagrant/VirtualBox to Mutlipass and Mutagen.io for file sync. The only thing I miss is the private networking options of VirtualBox. So we pull the ip from Multipass and put it in etc/hosts for name registration.
- apatheticonion 4y agoIf you want a MacOS frontend for QEMU (also supports Apple's native Virt framework) look at UTM https://mac.getutm.app/ https://mac.getutm.app/
- pridkett 4y agoUTM had me at “here’s a pre-built Solaris image”. It’s also how I sadly learned that M1/M2 chips don’t support nested virtualization. So no WSL on Windows on Arm under Mac OS Ventura. At least I could never get it to work.
- moondev 4y agoYou are correct, no nested virt support on macOS or Asahi. The rumor is this could be coming eventually to Asahi on M2, and maybe a future macOS release - but until it actually does it's a pretty huge drawback of apple silicon that is rarely mentioned.
- shoo_pl 4y ago"huge"? Am I missing something? I know of this limitation but I dont understand why would anyone need this. What's the goal or running Windows on Mac to run WSL on it?
- moondev 4y agoDoing anything involving virtualization on Linux or Windows. This also applies to macOS vms, so you can't run Docker Desktop inside a macOS vm.