Quickly create and run optimised Windows, macOS and Linux desktop virtual machines.
Go to file
Martin Wimpress 32701815f9 feat: add quickreport; gather information for bug reports. close #1163 2024-05-09 16:58:30 +01:00
.github ci: update the issue template 2024-05-09 16:39:58 +01:00
build-docs@bfd2e4ba57 chore: align sub-project 2024-05-05 09:36:41 +01:00
debian feat: add quickreport; gather information for bug reports. close #1163 2024-05-09 16:58:30 +01:00
docs chore: drop macos high-sierra; recovery server is no longer available 2024-05-09 01:43:50 +01:00
.editorconfig Update .editorconfig with correct spacing for quickget (4) and quickemu (2) 2022-02-23 11:50:31 +00:00
.envrc feat: add flake.nix to assist local development 2024-04-16 16:57:06 +01:00
.gitignore feat: add flake.nix to assist local development 2024-04-16 16:57:06 +01:00
.gitmodules add build-doc submodule (#371) 2022-02-25 23:04:10 +00:00
LICENSE Initial commit 2020-03-15 23:11:48 +00:00
README.md chore: drop macos high-sierra; recovery server is no longer available 2024-05-09 01:43:50 +01:00
chunkcheck fix: add #! to chunkcheck and correct skipVerification for macOS 2024-04-17 03:54:38 +01:00
devshell.nix chore: drop lsb_release from NIx devshell and package 2024-05-05 12:48:54 +01:00
flake.lock chore: update flake.lock 2024-05-02 17:07:02 +01:00
flake.nix refactor: update flake.nix to use devshell.nix and package.nix 2024-05-02 17:07:02 +01:00
package.nix feat: add quickreport; gather information for bug reports. close #1163 2024-05-09 16:58:30 +01:00
quickemu fix: resolve shellcheck SC2002 and SC2207 2024-05-09 16:39:58 +01:00
quickget style: wrap more variables in braces 2024-05-09 16:39:58 +01:00
quickreport feat: add quickreport; gather information for bug reports. close #1163 2024-05-09 16:58:30 +01:00
windowskey Add script to retrieve Windows product keys 2022-08-18 09:44:43 +01:00

README.md

Quickemu

Quickemu

Quickly create and run optimised Windows, macOS and Linux virtual machines:

Made with 💝 for Tux (Linux)

 Discord   Mastodon   Twitter   LinkedIn 

Introduction

Quickemu is a wrapper for the excellent QEMU that attempts to automatically "do the right thing", rather than expose exhaustive configuration options. You decide what operating system you want to run, and Quickemu will figure out the best way to do it for you.

The original objective of the project was to enable quick testing of Linux distributions where the virtual machine configurations can be stored anywhere (such as external USB storage or your home directory) and no elevated permissions are required to run the virtual machines.

Today, Quickemu includes comprehensive support for macOS, Windows, most of the BSDs, novel non-Linux operating systems such as FreeDOS, Haiku, KolibriOS, OpenIndiana, ReactOS, and more.

Features

  • macOS Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave
  • Windows 10 and 11 including TPM 2.0
  • Ubuntu and all the official Ubuntu flavours
  • Nearly 1000 operating system editions are supported!
  • Full SPICE support including host/guest clipboard sharing
  • VirtIO-webdavd file sharing for Linux and Windows guests
  • VirtIO-9p file sharing for Linux and macOS guests
  • QEMU Guest Agent support; provides access to a system-level agent via standard QMP commands
  • Samba file sharing for Linux, macOS and Windows guests (if smbd is installed on the host)
  • VirGL acceleration
  • USB device pass-through
  • Smartcard pass-through
  • Automatic SSH port forwarding to guests
  • Network port forwarding
  • Full duplex audio
  • Braille support
  • EFI (with or without SecureBoot) and Legacy BIOS boot
  • Graphical user interfaces available

Quick start

Once Quickemu is installed, there are two simple steps to create and run a virtual machine:

  • quickget automatically downloads the ISO image for the operating system you want to run and creates a configuration file for the virtual machine.
quickget nixos unstable
  • quickemu starts the virtual machine using the configuration file created by quickget.
quickemu --vm nixos-unstable.conf
  • Execute quickget (with no arguments) to see a list of all the supported operating systems.

Demo

Documentation

The wiki describes how to get up and running with Quickemu and also covers more advanced configuration and usage.

Contributing

We welcome contributions to Quickemu.