Use Quickemu to Run Windows, macOS & Linux Virtual Machines

Use Quickemu to Run Windows, macOS & Linux Virtual Machines

Virtualization is one of the most popular technologies utilized by most people and organizations who want to run multiple systems on single server hardware.

Also, most cloud platforms (if not all) use virtual machines to host customer data and services.

Some of the most popular Virtualization platforms are VMware and VirtualBox.

Vmware is a commercial app, and you will need to pay a subscription fee, while the latter is free and open-source.

If you are a Linux user, there is a relatively new software that you can use to spin Virtual machines – Quickkemu.

QuickEmu is a command-line wrapper for the popular Virtualization tool known as Qemu.

Like Virtualbox, Quickemu enables you to create and run virtual machines quickly and fast on your system.

First released in September 2021, Quickemu was meant to provide a single best solution for testing GNU software and Linux distributions.

However, the program has received numerous updates allowing users to spin both macOS and Windows virtual machines.

Quickemu eliminates all the multiple prompts you have to fill when creating a virtual machine by choosing the best system configurations depending on the OS/distribution you are using for your virtual machine.

However, that doesn’t mean you cannot tweak these configurations. Feel free to edit the .conf file and enter your custom settings.

word image 35

Quickemu Features

  • Free and open-source. You can get the whole Quickemu code on Github.
  • Allows downloading the OS image that you wish for your Virtual machines.
  • It supports Samba file sharing. (You will need to have smbd installed on the host OS).
  • EFI and BIOS inherited
  • Supports clipboard sharing (between Guest OS and Host)
  • Supports port forwarding
  • USB device pass-through (makes it easy to connect and disconnect USB drives between the Guest and Host OS).
  • You don’t need elevated privileges to create and run virtual machines.
  • Support for SPICE connections
  • Full-duplex audio
  • VirGL acceleration
  • Braille support

This post will give you a detailed guide on installing Quickemu on Linux and how to create and run Windows, macOS, and Linux Virtual Machines. The Linux distribution we will use for this tutorial is Ubuntu. Let’s dive in.

Install Quickemu on Ubuntu

If you are running Ubuntu or any other Debian-based Linux distribution, you can easily install Quickemu by adding the PPA repository to your system. Execute the commands below.

sudo apt-add-repository ppa:flexiondotorg/quickemu
sudo apt update
sudo apt install quickemu

word image 36

If you are using Arch Linux, you can easily download Quickemu from the AUR repository. For any other Linux distributions, follow the steps described on their official Github page. If the installation completes successfully, you can verify by executing the version command as shown below.

quickemu -version

word image 37

Before we start spinning up virtual machines on our systems, let’s look at some tools that come with Quickemu and how to use them.

Quikemu comes with a special utility known as Quickget, which you can use to download an ISO file for the OS/ distribution you want to use for your Virtual machine. However, you are not restricted. If you have an ISO file already downloaded to your system, you can add the path in the configuration file, as we will look at below. Quickemu, on the other hand, is used to create the configuration file and start the Virtual machine.

1. Create a Linux Virtual Machine with Quickemu.

Up to this point, I believe you have a good understanding of Quickemu and Quickget.

Let’s look at how you can create a Linux virtual machine on your system with Quikemu. For this post, we will create a Debian Bullseye virtual machine. Follow the steps below.

Note All the downloaded ISO files and configuration files are saved in your current working directory. Of course, you can decide to specify another directory, but that will only make you write long commands.

Launch the Terminal and execute the Quickget command below to download the Debian Bullseye ISO file.

quickget debian 11.3.0

word image 38

After a successful download, Quickget will create a configuration file that you will use to launch your virtual machine. In our case, the configuration file generated was named “debian-bullseye.conf.”

Now, run this file with the quickemu command, as shown below.

quickemu --vm debian-bullseye.conf

As shown below, you should see the Debian installation screen if everything is okay. If you see a black screen with the message guest has not initialised display yet(), don’t panic, give it a few seconds, and it will disappear.

word image 39

You can now proceed with the installation from this point. Quite easy, right?

What if you have the Linux ISO file Downloaded already?

If you have the ISO file downloaded to your system, there is no need to download it again. You only need to create a configuration file and set the path to your ISO file. Use the syntax below. To keep things simple and clean, create this configuration file in the directory where you downloaded your ISO file.

guest_os="linux"
disk_img="disk.qcow2"
iso="debian-bullseye-11.3.0-amd64-DVD-1.iso"

Let’s give a detailed look at the above commands.

  • Leave the guest_os="linux" and disk_img="disk.qcow2" as they are.
  • iso="debian-bullseye-11.3.0-amd64-DVD-1.iso": Here, we specify the path to our ISO file.

Save the file (e.g. debian-bullseye.conf) and execute the quickemu command to launch the Virtual machine.

quickemu --vm debian-bullseye.conf

To enhance the performance and capabilities of your virtual machine, install the packages below:

  • Spice Agent: This utility allows bi-directional copy/ paste between the host and the guest OS. It also allows USB redirection. Install Spice Agent with the command below.
    sudo apt install spice-vdagent
  • Spice WebDAV: This utility lets you share files between the host and guest OS. Execute the command below to install SPICE WebDAV.
    sudo apt install spice-webdavd

2. Create a Windows Virtual Machine with Quickemu

Creating a Windows virtual machine with Quickemu is not different from creating a Linux VM. It supports Windows 8.1, 10 and 11. This utility will also install VirtIO drivers for Windows. These drivers enable direct access to devices and connected peripherals for VMs. Follow the steps below.

If you don’t have the ISO file, execute the command below, and Quickget will download it for you. Remember to replace the 10 with the Windows version you want to install.

quickget windows 11

When the download is complete, you will see a configuration file generated by Quickget. In our case, it was windows-11.conf. Run this file using Quickemu, as shown below.

quickemu --vm windows-11.conf

If everything was successfully set up, you should see the Windows installation screen pop-up as shown below.

word image 40

What if you have the Windows ISO file Downloaded already?

If you have the ISO file downloaded to your system, there is no need to download it again. You only need to create a configuration file and set the path to your ISO file. Use the syntax below. To keep things simple and clean, create this configuration file in the directory where you downloaded your ISO file.

guest_os="windows"
disk_img="disk.qcow2"
iso="Win10_EnglishInternational_x64.iso"
fixed_iso="virtio-win.iso"
tpm="on"

Let’s have a quick look at the parameters above:

  • guest_os="windows": This instructs quickemu to use optimisation for Windows systems.
  • iso: Here, you specify the path to your Windows 10 ISO file.
  • fixed_iso="virtio-win.iso": Here, you specify the path to the VirtIO drivers ISO file.
  • tpm="on": This parameter tells quickemu to create a TPM device that is software emulated using swtpm.

Regional Versions

By default, Quickget downloads the English International Windows version. Luckily, you can specify to download other supported languages like Chinese. In that case, your Quickget syntax will be as follows.

quickget windows 10 "Chinese Traditional"

3. Create a macOS Virtual Machine with Quickemu.

Unlike Windows and Linux, where you can download an ISO file separately and create a configuration file, we recommend using Quickget to download the macOS image file. It will automatically download the required OpenCore bootloader and OVMF firmware from OSX-KVM.

The supported macOS releases include

  • High Sierra
  • Mojave
  • Catalina (Recommended).
  • Big Sur Monterey

Use any of the commands below to download the macOS version you want to use for your Virtual machine.

quickget macOS high-sierra
quickget macOS mojave
quickget macOS catalina
quickget macOS big-sur
quickget macOS monterey

In our case, we installed macOS Big Sur.

word image 41

After a successful download, it created a configuration file called macOS-big-sur.conf. To start the Big Sur virtual machine, we will execute the quickemu command below.

quickemu --vm macOS-big-sur.conf

You should see the Big-sur installation pop up on your screen.

There are several features and considerations you need to know when running a macOS virtual machine with Quickemu.

  • Although Quickemu optimizes the VM to run macOS, it doesn’t support GPU acceleration.
  • You can only change the display resolution from the macOS System preferences
  • Full Duplex audio is only available for macOS High Sierra, Mojave and Catalina. As of writing this post, Big Sur and Monterey have no audio.
  • File sharing between host and guest is made possible using VirtIO-9p and SPICE WebDAVD.
  • It doesn’t support Copy/ Paste using SPICE.

Let’s Checkout Quickgui

Quickgui is a third-party Graphical User Interface (GUI) for Quickemu developed in Flutter. However, you need to have Quickemu and Quickget installed in your system before using this tool.

If you are running Ubuntu or any other Ubuntu-based distribution like Pop!_OS, you can easily install Quickgui as a standard package. First, add the Quickgui repository to your system using the command below.

sudo add-apt-repository ppa:yannick-mauray/quickgui

When done, update the system and install Quickgui with the commands below.

sudo apt update
sudo apt install quickgui

When done, you can launch Quickgui from your applications menu or from the Terminal by executing the command below.

quickgui

word image 42

The Quickgui UI is quite fascinating as it also supports a dark mode feature. If you want to create a new virtual machine, click the Create new machines button and you will see a dropdown option to select the OS and OS version that you want to use for your virtual machine. Additionally, if you want to manage existing virtual machines, click on the Manage existing machines and you will see a list of all the Quickemu virtual machines on your system.

Wrapping Up

Quickemu seems to be a perfect alternative if you are looking for a simple and free Virtualization software other than VirtualBox.

If you plan to create a Linux or Windows Virtual machine, we recommend downloading the ISO file separately and writing the configuration file. However, if you want to create a macOS VM, use Quickget to download the image.

If you find the Quickemu command-line interface a little complicated, you can opt for Quickgui. What do you think about Quickemu compared to other Virtualization software? Please feel free to share your experience with our readers in the comments below.

0 Shares:
Subscribe
Notify of
guest
Receive notifications when your comment receives a reply. (Optional)
Your username will link to your website. (Optional)
0 Comments
Inline Feedbacks
View all comments
You May Also Like
Bash Printf Command
Read More

Bash Printf Command

The bash printf command prints the formatted strings in the shell. It stands for print formatted. The command…
Bash Case Statement
Read More

Bash Case Statement

The bash case statement is used to simplify complex conditionals in a bash script. Bash case statements use…
Usermod Command in Linux
Read More

Usermod Command in Linux

The usermod command allows us to modify an existing user account. With the usermod command, we can make…