Quickemu: Quickly create and run optimised Win-10,11/macOS/Linux on Linux

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • quickemu

    Quickly create and run optimised Windows, macOS and Linux desktop virtual machines.

  • Took a little while to find the magic words in there: https://github.com/wimpysworld/quickemu/blob/af26f41440d63a0...

  • hotplugger

    VirtIO (VFIO) USB Port passthrough helper

  • Neat. Something not to forget is that USB devices (host) passthrough can be tricky, as it's a passthrough of the device, not the port. In difficult situations, https://github.com/darkguy2008/hotplugger comes handy.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • reactos

    A free Windows-compatible Operating System

  • virtualbox-org-svn-vbox-trunk

    *UNOFFICIAL* mirror of the repository at http://www.virtualbox.org/svn/vbox/trunk (the first 30569 commits are courtesy of https://gitorious.org/virtualbox/mainlinemirror); Please **DO NOT** open pull requests against this repo

  • So my understanding – if you run VirtualBox on macOS, and you choose macOS as Guest OS type when creating your VM, it automatically turns GetKeyFromRealSMC on. That means you are using option (2) by default. You can always switch to option (1) instead if you want to, but if you are virtualising macOS-on-macOS, there is little reason to.

    From reading the VirtualBox source code [0] – it also automatically enables GetKeyFromRealSMC if it detects Apple hardware, even if the host OS isn't macOS. So, if you install Windows on your Mac, and then create a macOS VM in VirtualBox, it will automatically select option (2) as well. (I think, they actually include the code to talk to the Apple SMC in their Windows and Linux kernel drivers too.)

    (Note I haven't actually tried doing this myself, this is just what I gather from the source.)

    [0] https://github.com/mdaniel/virtualbox-org-svn-vbox-trunk/blo...

  • homebrew-qemu-virgl

    A homebrew tap for qemu with support for 3d accelerated guests

  • I didn't use this, but a similar/related project that is for MacOS, https://github.com/knazarov/homebrew-qemu-virgl

    Vagrant is an orthogonal tool to this, it is a VM orchestrator not an actual VM. What does this do: well, qemu doesn't have virgl support merged yet, so you need to go to some lengths to compile it for yourself.

    All of the other stuff (spice, virtio) is for "it should be a nice user experience" above and beyond simply fast. In other words, you should be able to copy and paste between the host OS and the guest. You should be able to slide your mouse across the border of the VM window and do some clicking around then simply slide it back out and use your mouse with native host-OS windows again.

    These things are all not granted when you use qemu out of the box. I have this intense 25-lines "qemu" script for invoking qemu-system properly. It was enlightening but I'm not sure how much I was enriched by the process of actually figuring all this out.

    Quickemu is for making this easier (and on Linux.)

  • dot

    Dotfiles (by kingdonb)

  • Yes! https://github.com/kingdonb/dot/blob/ubuntu-vm/bin/qemu

    This expects you're using the special qemu from the prior link, compiled with homebrew. (else I think there will be no virtio-vga-gl video driver?)

    The guest OS is an Ubuntu VM. I think the instructions say to use a recent Fedora/Silverblue for a reason (there are some things that don't quite work right around window resizing.)

    Each time I start the VM, it shows up with tiny tiny pixels and the menubar does not work. I switch to another app, switch back, go to the menu and enable "zoom to fit" and it's off to the races. Other things to be aware of, if you resize the window it actually scales the pixels, (which is OK and doesn't even have any noticeable perf impact because OpenGL, I guess)

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts