2022-09-01 00:01:49 +00:00
|
|
|
.\" Automatically generated by Pandoc 2.19.2
|
2022-02-25 23:03:58 +00:00
|
|
|
.\"
|
2022-07-30 06:56:23 +00:00
|
|
|
.\" Define V font for inline verbatim, using C font in formats
|
|
|
|
.\" that render this, and otherwise B font.
|
|
|
|
.ie "\f[CB]x\f[]"x" \{\
|
|
|
|
. ftr V B
|
|
|
|
. ftr VI BI
|
|
|
|
. ftr VB B
|
|
|
|
. ftr VBI BI
|
|
|
|
.\}
|
|
|
|
.el \{\
|
|
|
|
. ftr V CR
|
|
|
|
. ftr VI CI
|
|
|
|
. ftr VB CB
|
|
|
|
. ftr VBI CBI
|
|
|
|
.\}
|
2022-09-19 10:41:22 +00:00
|
|
|
.TH "QUICKEMU" "1" "September 19, 2022" "quickemu" "Quickemu User Manual"
|
2022-02-25 23:03:58 +00:00
|
|
|
.hy
|
|
|
|
.SH NAME
|
|
|
|
.PP
|
|
|
|
quickemu - A quick VM builder and manager
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.PP
|
|
|
|
\f[B]quickemu\f[R] [\f[I]OPTION\f[R]]\&...
|
|
|
|
.SH DESCRIPTION
|
|
|
|
.PP
|
|
|
|
\f[B]quickemu\f[R] will create and run highly optimised desktop virtual
|
|
|
|
machines for Linux, macOS and Windows
|
|
|
|
.SH OPTIONS
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]vm\f[R]
|
|
|
|
vm configuration file
|
|
|
|
.PP
|
|
|
|
You can also pass optional parameters
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]braille\f[R]
|
|
|
|
Enable braille support.
|
|
|
|
Requires SDL.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]delete\f[R]
|
|
|
|
Delete the disk image.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]display\f[R]
|
|
|
|
Select display backend.
|
|
|
|
`sdl' (default), `gtk', `none' or `spice'
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]fullscreen\f[R]
|
|
|
|
Starts VM in full screen mode (Ctl+Alt+f to exit)
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]ignore-msrs-always\f[R]
|
|
|
|
Configure KVM to always ignore unhandled machine-specific registers
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]screen <screen>\f[R]
|
|
|
|
Use specified screen to determine the window size.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]shortcut\f[R]
|
|
|
|
Create a desktop shortcut
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]snapshot apply <tag>\f[R]
|
|
|
|
Apply/restore a snapshot.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]snapshot create <tag>\f[R]
|
|
|
|
Create a snapshot.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]snapshot delete <tag>\f[R]
|
|
|
|
Delete a snapshot.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]snapshot info\f[R]
|
|
|
|
Show disk/snapshot info.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]status-quo\f[R]
|
|
|
|
Do not commit any changes to disk/snapshot.
|
|
|
|
.TP
|
|
|
|
\f[B]\[en]version\f[R]
|
|
|
|
Print version
|
|
|
|
.SH EXAMPLES
|
|
|
|
.TP
|
2022-08-19 19:10:21 +00:00
|
|
|
\f[B]quickemu \[en]vm ubuntu-mate-22.04.conf\f[R]
|
|
|
|
Launches the VM specified in the file \f[I]ubuntu-mate-22.04.conf\f[R]
|
2022-02-25 23:03:58 +00:00
|
|
|
.SS Introduction
|
|
|
|
.PP
|
|
|
|
Quickly create and run highly optimised desktop virtual machines for
|
|
|
|
Linux, macOS and Windows; with just two commands.
|
|
|
|
You decide what operating system you want to run and Quickemu will
|
|
|
|
figure out the best way to do it for you.
|
|
|
|
For example:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
2022-07-30 06:56:23 +00:00
|
|
|
quickget ubuntu-mate 22.04
|
2022-08-19 19:10:21 +00:00
|
|
|
quickemu --vm ubuntu-mate-22.04.conf
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
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.
|
|
|
|
\f[B]Quickemu now also includes comprehensive support for macOS and
|
|
|
|
Windows\f[R].
|
|
|
|
.SS Features
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[B]macOS\f[R] Monterey, Big Sur, Catalina, Mojave & High Sierra
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[B]Windows\f[R] 8.1, 10 and 11 including TPM 2.0
|
|
|
|
.IP \[bu] 2
|
|
|
|
Ubuntu (https://ubuntu.com/desktop) and all the \f[B]official Ubuntu
|
|
|
|
flavours (https://ubuntu.com/download/flavours)\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[B]Over 360 operating system editions are supported!\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
Full SPICE support including host/guest clipboard sharing
|
|
|
|
.IP \[bu] 2
|
|
|
|
VirtIO-webdavd file sharing for Linux and Windows guests
|
|
|
|
.IP \[bu] 2
|
|
|
|
VirtIO-9p file sharing for Linux and macOS guests
|
|
|
|
.IP \[bu] 2
|
|
|
|
QEMU Guest Agent support (https://wiki.qemu.org/Features/GuestAgent);
|
|
|
|
provides access to a system-level agent via standard QMP commands
|
|
|
|
.IP \[bu] 2
|
|
|
|
Samba file sharing for Linux, macOS and Windows guests (\f[I]if
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[VI]smbd\f[I] is installed on the host\f[R])
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
VirGL acceleration
|
|
|
|
.IP \[bu] 2
|
|
|
|
USB device pass-through
|
|
|
|
.IP \[bu] 2
|
|
|
|
Smartcard pass-through
|
|
|
|
.IP \[bu] 2
|
|
|
|
Automatic SSH port forwarding to guests
|
|
|
|
.IP \[bu] 2
|
|
|
|
Network port forwarding
|
|
|
|
.IP \[bu] 2
|
|
|
|
Full duplex audio
|
|
|
|
.IP \[bu] 2
|
|
|
|
Braille support
|
|
|
|
.IP \[bu] 2
|
|
|
|
EFI (with or without SecureBoot) and Legacy BIOS boot
|
|
|
|
.IP \[bu] 2
|
|
|
|
Graphical user interfaces available
|
|
|
|
.PP
|
|
|
|
Quickemu is a wrapper for the excellent QEMU (https://www.qemu.org/)
|
|
|
|
that attempts to automatically \f[I]\[lq]do the right thing\[rq]\f[R],
|
|
|
|
rather than expose exhaustive configuration options.
|
|
|
|
.PP
|
|
|
|
We have a Discord for this project:
|
|
|
|
[IMAGE: Discord (https://img.shields.io/discord/712850672223125565?color=0C306A&label=WimpysWorld%20Discord&logo=Discord&logoColor=ffffff&style=flat-square)] (https://discord.gg/sNmz3uw)
|
|
|
|
.PP
|
|
|
|
See this (old) video where I explain some of my motivations for creating
|
|
|
|
Quickemu.
|
|
|
|
.PP
|
|
|
|
[IMAGE: Replace VirtualBox with Bash &
|
|
|
|
QEMU (https://img.youtube.com/vi/AOTYWEgw0hI/0.jpg)] (https://www.youtube.com/watch?v=AOTYWEgw0hI)
|
|
|
|
.SS Requirements
|
|
|
|
.IP \[bu] 2
|
|
|
|
QEMU (https://www.qemu.org/) (\f[I]6.0.0 or newer\f[R]) \f[B]with GTK,
|
|
|
|
SDL, SPICE & VirtFS support\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
bash (https://www.gnu.org/software/bash/) (\f[I]4.0 or newer\f[R])
|
|
|
|
.IP \[bu] 2
|
|
|
|
Coreutils (https://www.gnu.org/software/coreutils/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
EDK II (https://github.com/tianocore/edk2)
|
|
|
|
.IP \[bu] 2
|
|
|
|
grep (https://www.gnu.org/software/grep/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
jq (https://stedolan.github.io/jq/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
LSB (https://wiki.linuxfoundation.org/lsb/start)
|
|
|
|
.IP \[bu] 2
|
|
|
|
procps (https://gitlab.com/procps-ng/procps)
|
|
|
|
.IP \[bu] 2
|
|
|
|
python3 (https://www.python.org/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
macrecovery (https://github.com/acidanthera/OpenCorePkg/tree/master/Utilities/macrecovery)
|
|
|
|
.IP \[bu] 2
|
|
|
|
mkisofs (http://cdrtools.sourceforge.net/private/cdrecord.html)
|
|
|
|
.IP \[bu] 2
|
|
|
|
usbutils (https://github.com/gregkh/usbutils)
|
|
|
|
.IP \[bu] 2
|
|
|
|
util-linux (https://github.com/karelzak/util-linux)
|
|
|
|
.IP \[bu] 2
|
|
|
|
sed (https://www.gnu.org/software/sed/)
|
|
|
|
.IP \[bu] 2
|
2022-09-19 10:41:22 +00:00
|
|
|
socat (http://www.dest-unreach.org/socat/)
|
|
|
|
.IP \[bu] 2
|
2022-02-25 23:03:58 +00:00
|
|
|
spicy (https://gitlab.freedesktop.org/spice/spice-gtk)
|
|
|
|
.IP \[bu] 2
|
|
|
|
swtpm (https://github.com/stefanberger/swtpm)
|
|
|
|
.IP \[bu] 2
|
|
|
|
Wget (https://www.gnu.org/software/wget/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
xdg-user-dirs (https://www.freedesktop.org/wiki/Software/xdg-user-dirs/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
xrandr (https://gitlab.freedesktop.org/xorg/app/xrandr)
|
|
|
|
.IP \[bu] 2
|
|
|
|
zsync (http://zsync.moria.org.uk/)
|
2022-03-01 11:06:05 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
unzip (http://www.info-zip.org/UnZip.html)
|
2022-07-30 06:56:23 +00:00
|
|
|
.SS Installing Requirements
|
|
|
|
.PP
|
|
|
|
For Ubuntu, Arch and nixos systems the
|
|
|
|
ppa (https://launchpad.net/~flexiondotorg/+archive/ubuntu/quickemu),
|
|
|
|
AUR (https://aur.archlinux.org/packages/quickemu) or
|
|
|
|
nix (https://github.com/NixOS/nixpkgs/tree/master/pkgs/development/quickemu)
|
|
|
|
packaging will take care of the dependencies.
|
|
|
|
For other host distributions or operating systems it will be necessary
|
|
|
|
to install the above requirements or their equivalents.
|
|
|
|
.PP
|
|
|
|
These examples may save a little typing
|
|
|
|
.PP
|
|
|
|
Debian:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
sudo apt install qemu bash coreutils ovmf grep jq lsb procps python3 genisoimage usbutils util-linux sed spice-client-gtk swtpm wget xdg-user-dirs zsync unzip
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
Fedora:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
sudo dnf install qemu bash coreutils edk2-tools grep jq lsb procps python3 genisoimage usbutils util-linux sed spice-gtk-tools swtpm wget xdg-user-dirs xrandr unzip
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
MacOS:
|
|
|
|
.PP
|
|
|
|
This is a work in progress (see issue
|
|
|
|
248 (https://github.com/quickemu-project/quickemu/issues/248) for other
|
|
|
|
steps and changes that may enable running on MacOS)
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
brew install qemu bash coreutils grep jq python\[at]3.10 cdrtools gnu-sed spice-gtk wget zsync
|
|
|
|
\f[R]
|
|
|
|
.fi
|
2022-02-25 23:03:58 +00:00
|
|
|
.SH Usage
|
|
|
|
.SS Graphical User Interfaces
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
While \f[V]quickemu\f[R] and \f[V]quickget\f[R] are designed for the
|
2022-02-25 23:03:58 +00:00
|
|
|
terminal, a graphical user interface is also available:
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[B]Quickgui (https://github.com/quickgui/quickgui)\f[R] by Mark
|
|
|
|
Johnson (https://github.com/marxjohnson) and Yannick
|
|
|
|
Mauray (https://github.com/ymauray).
|
|
|
|
.PP
|
|
|
|
Many thanks to Luke Wesley-Holley (https://github.com/Lukewh) and
|
|
|
|
Philipp Kiemle (https://github.com/daPhipz) for creating the
|
|
|
|
\f[B]Quickemu icons (https://github.com/Lukewh/quickemu-icons)\f[R]
|
|
|
|
\[u1F3A8]
|
|
|
|
.SS Quickgui for Ubuntu
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
sudo add-apt-repository ppa:yannick-mauray/quickgui
|
|
|
|
sudo apt update
|
|
|
|
sudo apt install quickgui
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.SS Ubuntu Guest
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickget\f[R] will automatically download an Ubuntu release and
|
2022-02-25 23:03:58 +00:00
|
|
|
create the virtual machine configuration.
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
2022-07-30 06:56:23 +00:00
|
|
|
quickget ubuntu 22.04
|
|
|
|
quickemu --vm ubuntu-22.04.conf
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
|
|
|
Complete the installation as normal.
|
|
|
|
.IP \[bu] 2
|
|
|
|
Post-install:
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-09-19 10:41:22 +00:00
|
|
|
Install the SPICE agent (\f[V]spice-vdagent\f[R]) in the guest to enable
|
|
|
|
copy/paste and USB redirection
|
2022-02-25 23:03:58 +00:00
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]sudo apt install spice-vdagent\f[R]
|
2022-02-25 23:03:58 +00:00
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
2022-09-19 10:41:22 +00:00
|
|
|
Install the SPICE WebDAV agent (\f[V]spice-webdavd\f[R]) in the guest to
|
|
|
|
enable file sharing.
|
2022-02-25 23:03:58 +00:00
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]sudo apt install spice-webdavd\f[R]
|
2022-02-25 23:03:58 +00:00
|
|
|
.RE
|
|
|
|
.RE
|
|
|
|
.SS Ubuntu devel (daily-live) images
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickget\f[R] can also download/refresh devel images via
|
|
|
|
\f[V]zsync\f[R] for Ubuntu developers and testers.
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickget ubuntu devel
|
|
|
|
quickemu --vm ubuntu-devel.conf
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
You can run \f[V]quickget ubuntu devel\f[R] to refresh your daily
|
2022-02-25 23:03:58 +00:00
|
|
|
development image as often as you like, it will even automatically
|
|
|
|
switch to a new series.
|
|
|
|
.SS Ubuntu Flavours
|
|
|
|
.PP
|
|
|
|
All the official Ubuntu flavours are supported, just replace
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntu\f[R] with your preferred flavour.
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]kubuntu\f[R] (Kubuntu)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]lubuntu\f[R] (Lubuntu)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntu-budgie\f[R] (Ubuntu Budgie)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntukylin\f[R] (Ubuntu Kylin)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntu-mate\f[R] (Ubuntu MATE)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntustudio\f[R] (Ubuntu Studio)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ubuntu\f[R] (Ubuntu)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]xubuntu\f[R] (Xubuntu)
|
2022-02-25 23:03:58 +00:00
|
|
|
.SS Other Operating Systems
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickget\f[R] also supports:
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]alma\f[R] (Alma Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]alpine\f[R] (Alpine Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]android\f[R] (Android x86)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]archlinux\f[R] (Arch Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]arcolinux\f[R] (Arco Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]batocera\f[R] (Batocera)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]cachyos\f[R] (CachyOS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]centos-stream\f[R] (CentOS Stream)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]debian\f[R] (Debian)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]deepin\f[R] (Deepin)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]devuan\f[R] (Devuan)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]dragonflybsd\f[R] (DragonFlyBSD)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]elementary\f[R] (elementary OS)
|
2022-03-01 11:06:05 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]endeavouros\f[R] (EndeavourOS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]fedora\f[R] (Fedora)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]freebsd\f[R] (FreeBSD)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]freedos\f[R] (FreeDOS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]garuda\f[R] (Garuda Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]gentoo\f[R] (Gentoo)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]ghostbsd\f[R] (GhostBSD)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]haiku\f[R] (Haiku)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]kali\f[R] (Kali)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]kdeneon\f[R] (KDE Neon)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]kolibrios\f[R] (KolibriOS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]linuxmint\f[R] (Linux Mint)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]lmde\f[R] (Linux Mint Debian Edition)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]manjaro\f[R] (Manjaro)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]mxlinux\f[R] (MX Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]netboot\f[R] (netboot.xyz)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]netbsd\f[R] (NetBSD)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]nixos\f[R] (NixOS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]openbsd\f[R] (OpenBSD)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]opensuse\f[R] (openSUSE)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]oraclelinux\f[R] (Oracle Linux)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]popos\f[R] (Pop!_OS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-08-19 19:10:21 +00:00
|
|
|
\f[V]reactos\f[R] (ReactOS)
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]rockylinux\f[R] (Rocky Linux)
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[V]slackware\f[R] (Slackware)
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[V]solus\f[R] (Solus)
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[V]tails\f[R] (Tails)
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[V]void\f[R] (Void Linux)
|
|
|
|
.IP \[bu] 2
|
|
|
|
\f[V]zorin\f[R] (Zorin OS)
|
2022-02-25 23:03:58 +00:00
|
|
|
.PP
|
|
|
|
Or you can download a Linux image and manually create a VM
|
|
|
|
configuration.
|
|
|
|
.IP \[bu] 2
|
|
|
|
Download a .iso image of a Linux distribution
|
|
|
|
.IP \[bu] 2
|
|
|
|
Create a VM configuration file; for example
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]debian-bullseye.conf\f[R]
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
guest_os=\[dq]linux\[dq]
|
|
|
|
disk_img=\[dq]debian-bullseye/disk.qcow2\[dq]
|
|
|
|
iso=\[dq]debian-bullseye/firmware-11.0.0-amd64-DVD-1.iso\[dq]
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
Use \f[V]quickemu\f[R] to start the virtual machine:
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickemu --vm debian-bullseye.conf
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
|
|
|
Complete the installation as normal.
|
|
|
|
.IP \[bu] 2
|
|
|
|
Post-install:
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-09-19 10:41:22 +00:00
|
|
|
Install the SPICE agent (\f[V]spice-vdagent\f[R]) in the guest to enable
|
|
|
|
copy/paste and USB redirection.
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-09-19 10:41:22 +00:00
|
|
|
Install the SPICE WebDAV agent (\f[V]spice-webdavd\f[R]) in the guest to
|
|
|
|
enable file sharing.
|
2022-02-25 23:03:58 +00:00
|
|
|
.RE
|
|
|
|
.SS macOS Guest
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickget\f[R] automatically downloads a macOS recovery image and
|
2022-02-25 23:03:58 +00:00
|
|
|
creates a virtual machine configuration.
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickget macos catalina
|
|
|
|
quickemu --vm macos-catalina.conf
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
macOS \f[V]high-sierra\f[R], \f[V]mojave\f[R], \f[V]catalina\f[R],
|
|
|
|
\f[V]big-sur\f[R] and \f[V]monterey\f[R] are supported.
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
Use cursor keys and enter key to select the \f[B]macOS Base System\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
From \f[B]macOS Utilities\f[R]
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
Click \f[B]Disk Utility\f[R] and \f[B]Continue\f[R]
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
On macOS Catalina, Big Sur & Monterey
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
Select \f[V]Apple Inc. VirtIO Block Media\f[R] from the list and click
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[B]Erase\f[R].
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
On macOS Mojave and High Sierra
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
Select \f[V]QEMU HARDDISK Media\f[R] (\[ti]103.08GB) from the list and
|
2022-02-25 23:03:58 +00:00
|
|
|
click \f[B]Erase\f[R].
|
|
|
|
.RE
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
Enter a \f[V]Name:\f[R] for the disk and click \f[B]Erase\f[R].
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
Click \f[B]Done\f[R].
|
|
|
|
.IP \[bu] 2
|
|
|
|
Close Disk Utility
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
From \f[B]macOS Utilities\f[R]
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
Click \f[B]Reinstall macOS\f[R] and \f[B]Continue\f[R]
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
Complete the installation as you normally would.
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
On the first reboot use cursor keys and enter key to select \f[B]macOS
|
|
|
|
Installer\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
On the subsequent reboots use cursor keys and enter key to select the
|
|
|
|
disk you named
|
|
|
|
.RE
|
|
|
|
.PP
|
|
|
|
The default macOS configuration looks like this:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
guest_os=\[dq]macos\[dq]
|
|
|
|
img=\[dq]macos-catalina/RecoveryImage.img\[dq]
|
|
|
|
disk_img=\[dq]macos-catalina/disk.qcow2\[dq]
|
|
|
|
macos_release=\[dq]catalina\[dq]
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]guest_os=\[dq]macos\[dq]\f[R] instructs Quickemu to optimise for
|
2022-02-25 23:03:58 +00:00
|
|
|
macOS.
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]macos_release=\[dq]catalina\[dq]\f[R] instructs Quickemu to
|
2022-02-25 23:03:58 +00:00
|
|
|
optimise for a particular macOS release.
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
For example VirtIO Network and Memory Ballooning are available in Big
|
|
|
|
Sur and newer, but not previous releases.
|
|
|
|
.IP \[bu] 2
|
|
|
|
And VirtIO Block Media (disks) are supported/stable in Catalina and
|
|
|
|
newer.
|
|
|
|
.RE
|
|
|
|
.SS macOS compatibility
|
|
|
|
.PP
|
|
|
|
There are some considerations when running macOS via Quickemu.
|
|
|
|
.IP \[bu] 2
|
|
|
|
Supported macOS releases:
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
High Sierra
|
|
|
|
.IP \[bu] 2
|
|
|
|
Mojave
|
|
|
|
.IP \[bu] 2
|
|
|
|
Catalina \f[B](Recommended)\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
Big Sur
|
|
|
|
.IP \[bu] 2
|
|
|
|
Monterey
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickemu\f[R] will automatically download the required
|
2022-02-25 23:03:58 +00:00
|
|
|
OpenCore (https://github.com/acidanthera/OpenCorePkg) bootloader and
|
|
|
|
OVMF firmware from OSX-KVM (https://github.com/kholia/OSX-KVM).
|
|
|
|
.IP \[bu] 2
|
|
|
|
Optimised by default, but no GPU acceleration is available.
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
Host CPU vendor is detected and guest CPU is optimised accordingly.
|
|
|
|
.IP \[bu] 2
|
|
|
|
VirtIO Block
|
|
|
|
Media (https://www.kraxel.org/blog/2019/06/macos-qemu-guest/) is used
|
|
|
|
for the system disk where supported.
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
VirtIO \f[V]usb-tablet\f[R] (http://philjordan.eu/osx-virt/) is used for
|
2022-02-25 23:03:58 +00:00
|
|
|
the mouse.
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
VirtIO Network (\f[V]virtio-net\f[R]) is supported and enabled on macOS
|
|
|
|
Big Sur and newer but previous releases use \f[V]vmxnet3\f[R].
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
VirtIO Memory Ballooning is supported and enabled on macOS Big Sur and
|
|
|
|
newer but disabled for other support macOS releases.
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
USB host and SPICE pass-through is:
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
UHCI (USB 2.0) on macOS Catalina and earlier.
|
|
|
|
.IP \[bu] 2
|
|
|
|
XHCI (USB 3.0) on macOS Big Sur and newer.
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
Display resolution can only be changed via macOS System Preferences.
|
|
|
|
.IP \[bu] 2
|
2022-08-19 19:10:21 +00:00
|
|
|
\f[B]Full Duplex audio requires VoodooHDA
|
|
|
|
OC (https://github.com/chris1111/VoodooHDA-OC) or pass-through a USB
|
|
|
|
audio-device to the macOS guest VM\f[R].
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
2022-08-19 19:10:21 +00:00
|
|
|
NOTE!
|
|
|
|
Gatekeeper (https://disable-gatekeeper.github.io/) and System Integrity
|
|
|
|
Protection
|
|
|
|
(SIP) (https://developer.apple.com/documentation/security/disabling_and_enabling_system_integrity_protection)
|
|
|
|
need to be disabled to install VoodooHDA OC
|
2022-02-25 23:03:58 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
File sharing between guest and host is available via
|
|
|
|
virtio-9p (https://wiki.qemu.org/Documentation/9psetup) and SPICE
|
|
|
|
webdavd (https://gitlab.gnome.org/GNOME/phodav/-/merge_requests/24).
|
|
|
|
.IP \[bu] 2
|
|
|
|
Copy/paste via SPICE agent is \f[B]not available on macOS\f[R].
|
2022-08-19 19:10:21 +00:00
|
|
|
.SS macOS App Store
|
|
|
|
.PP
|
|
|
|
If you see \f[I]\[lq]Your device or computer could not be
|
|
|
|
verified\[rq]\f[R] when you try to login to the App Store, make sure
|
|
|
|
that your wired ethernet device is \f[V]en0\f[R].
|
|
|
|
Use \f[V]ifconfig\f[R] in a terminal to verify this.
|
|
|
|
.PP
|
|
|
|
If the wired ethernet device is not \f[V]en0\f[R], then then go to
|
|
|
|
\f[I]System Preferences\f[R] -> \f[I]Network\f[R], delete all the
|
|
|
|
network devices and apply the changes.
|
|
|
|
Next, open a terminal and run the following:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
Now reboot, and the App Store should work.
|
2022-02-25 23:03:58 +00:00
|
|
|
.SS Windows 8.1, 10 & 11 Guests
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]quickget\f[R] can automatically download Windows 8.1, Windows
|
2022-02-25 23:03:58 +00:00
|
|
|
10 (https://www.microsoft.com/en-gb/software-download/windows10ISO) and
|
|
|
|
Windows 11 (https://www.microsoft.com/en-gb/software-download/windows11)
|
|
|
|
along with the VirtIO drivers for
|
|
|
|
Windows (https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/)
|
|
|
|
and creates a virtual machine configuration.
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickget windows 11
|
|
|
|
quickemu --vm windows-11.conf
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
|
|
|
Complete the installation as you normally would.
|
|
|
|
.IP \[bu] 2
|
|
|
|
All relevant drivers and services should be installed automatically.
|
2022-08-01 10:15:07 +00:00
|
|
|
.IP \[bu] 2
|
|
|
|
A local adminstrator user account is automatically created, with these
|
|
|
|
credentials:
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
Username: \f[V]Quickemu\f[R]
|
|
|
|
.IP \[bu] 2
|
|
|
|
Password: \f[V]quickemu\f[R]
|
|
|
|
.RE
|
2022-02-25 23:03:58 +00:00
|
|
|
.SS Regional versions
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
By default \f[V]quickget\f[R] will download the \f[I]\[lq]English
|
2022-02-25 23:03:58 +00:00
|
|
|
International\[rq]\f[R] release, but you can optionally specify one of
|
|
|
|
the supported languages: For example:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickget windows 11 \[dq]Chinese (Traditional)\[dq]
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
The default Windows 11 configuration looks like this:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
guest_os=\[dq]windows\[dq]
|
|
|
|
disk_img=\[dq]windows-11/disk.qcow2\[dq]
|
|
|
|
iso=\[dq]windows-11/Win11_EnglishInternational_x64.iso\[dq]
|
|
|
|
fixed_iso=\[dq]windows-11/virtio-win.iso\[dq]
|
|
|
|
tpm=\[dq]on\[dq]
|
2022-07-30 06:56:23 +00:00
|
|
|
secureboot=\[dq]on\[dq]
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]guest_os=\[dq]windows\[dq]\f[R] instructs \f[V]quickemu\f[R] to
|
2022-02-25 23:03:58 +00:00
|
|
|
optimise for Windows.
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]fixed_iso=\f[R] specifies the ISO image that provides VirtIO
|
2022-02-25 23:03:58 +00:00
|
|
|
drivers.
|
|
|
|
.IP \[bu] 2
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]tpm=\[dq]on\[dq]\f[R] instructs \f[V]quickemu\f[R] to create a
|
|
|
|
software emulated TPM device using \f[V]swtpm\f[R].
|
2022-02-25 23:03:58 +00:00
|
|
|
.SH All the options
|
|
|
|
.PP
|
|
|
|
Here are the usage instructions:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
Usage
|
|
|
|
quickemu --vm ubuntu.conf
|
|
|
|
|
|
|
|
You can also pass optional parameters
|
2022-07-30 06:56:23 +00:00
|
|
|
--braille : Enable braille support. Requires SDL.
|
|
|
|
--delete-disk : Delete the disk image and EFI variables
|
|
|
|
--delete-vm : Delete the entire VM and it\[aq]s configuration
|
2022-08-01 09:11:56 +00:00
|
|
|
--display : Select display backend. \[aq]sdl\[aq] (default), \[aq]gtk\[aq], \[aq]none\[aq], \[aq]spice\[aq] or \[aq]spice-app\[aq]
|
2022-07-30 06:56:23 +00:00
|
|
|
--fullscreen : Starts VM in full screen mode (Ctl+Alt+f to exit)
|
|
|
|
--ignore-msrs-always : Configure KVM to always ignore unhandled machine-specific registers
|
|
|
|
--screen <screen> : Use specified screen to determine the window size.
|
|
|
|
--shortcut : Create a desktop shortcut
|
|
|
|
--snapshot apply <tag> : Apply/restore a snapshot.
|
|
|
|
--snapshot create <tag> : Create a snapshot.
|
|
|
|
--snapshot delete <tag> : Delete a snapshot.
|
|
|
|
--snapshot info : Show disk/snapshot info.
|
|
|
|
--status-quo : Do not commit any changes to disk/snapshot.
|
|
|
|
--viewer <viewer> : Choose an alternative viewer. \[at]Options: \[aq]spicy\[aq] (default), \[aq]remote-viewer\[aq], \[aq]none\[aq]
|
|
|
|
--ssh-port <port> : Set ssh-port manually
|
|
|
|
--spice-port <port> : Set spice-port manually
|
|
|
|
--public-dir <path> : expose share directory. \[at]Options: \[aq]\[aq] (default: xdg-user-dir PUBLICSHARE), \[aq]<directory>\[aq], \[aq]none\[aq]
|
|
|
|
--monitor <type> : Set monitor connection type. \[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], \[aq]none\[aq]
|
|
|
|
--monitor-telnet-host <ip/host> : Set telnet host for monitor. (default: \[aq]localhost\[aq])
|
|
|
|
--monitor-telnet-port <port> : Set telnet port for monitor. (default: \[aq]4440\[aq])
|
|
|
|
--monitor-cmd <cmd> : Send command to monitor if available. (Example: system_powerdown)
|
|
|
|
--serial <type> : Set serial connection type. \[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], \[aq]none\[aq]
|
|
|
|
--serial-telnet-host <ip/host> : Set telnet host for serial. (default: \[aq]localhost\[aq])
|
|
|
|
--serial-telnet-port <port> : Set telnet port for serial. (default: \[aq]6660\[aq])
|
|
|
|
--keyboard <type> : Set keyboard. \[at]Options: \[aq]usb\[aq] (default), \[aq]ps2\[aq], \[aq]virtio\[aq]
|
|
|
|
--keyboard_layout <layout> : Set keyboard layout.
|
|
|
|
--mouse <type> : Set mouse. \[at]Options: \[aq]tablet\[aq] (default), \[aq]ps2\[aq], \[aq]usb\[aq], \[aq]virtio\[aq]
|
|
|
|
--usb-controller <type> : Set usb-controller. \[at]Options: \[aq]ehci\[aq] (default), \[aq]xhci\[aq], \[aq]none\[aq]
|
|
|
|
--extra_args <arguments> : Pass additional arguments to qemu
|
|
|
|
--version : Print version
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.SS Desktop shortcuts
|
|
|
|
.PP
|
|
|
|
Desktop shortcuts can be created for a VM, the shortcuts are saved in
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]\[ti]/.local/share/applications\f[R].
|
2022-02-25 23:03:58 +00:00
|
|
|
Here is an example of how to create a shortcut.
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
2022-07-30 06:56:23 +00:00
|
|
|
quickemu --vm ubuntu-22.04-desktop.conf --shortcut
|
2022-02-25 23:03:58 +00:00
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.SS Screen and window size (Linux guests only)
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
\f[V]qemu\f[R] will always default to the primary monitor to display the
|
2022-02-25 23:03:58 +00:00
|
|
|
VM\[cq]s window.
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
Without the \f[V]--screen\f[R] option, \f[V]quickemu\f[R] will look for
|
2022-02-25 23:03:58 +00:00
|
|
|
the size of the smallest monitor, and use a size that fits on said
|
|
|
|
monitor.
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
The \f[V]--screen\f[R] option forces \f[V]quickemu\f[R] to use the size
|
2022-02-25 23:03:58 +00:00
|
|
|
of the given monitor to compute the size of the window.
|
|
|
|
\f[B]It won\[cq]t use that monitor to display the VM\[cq]s window if
|
|
|
|
it\[cq]s not the primary monitor\f[R].
|
|
|
|
This is useful if the primary monitor if not the smallest one, and if
|
|
|
|
the VM\[cq]s window doesn\[cq]t need to be moved around.
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
The \f[V]--screen\f[R] option is also useful with the
|
|
|
|
\f[V]--fullscreen\f[R] option, again because \f[V]qemu\f[R] will always
|
2022-02-25 23:03:58 +00:00
|
|
|
use the primary monitor.
|
|
|
|
In order for the fullscreen mode to work properly, the resolution of the
|
|
|
|
VM\[cq]s window must match the resolution of the screen.
|
|
|
|
.PP
|
|
|
|
To know which screen to use, type:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
xrandr --listmonitors | grep -v Monitors
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
The command will output something like this:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
0: +*HDMI-0 2560/597x1440/336+1920+0 HDMI-0
|
|
|
|
1: +DVI-D-0 1920/527x1080/296+0+0 DVI-D-0
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
2022-07-30 06:56:23 +00:00
|
|
|
The first number is what needs to be passed to the \f[V]--screen\f[R]
|
2022-02-25 23:03:58 +00:00
|
|
|
option.
|
|
|
|
.PP
|
|
|
|
For example:
|
|
|
|
.IP
|
|
|
|
.nf
|
|
|
|
\f[C]
|
|
|
|
quickemu --vm vm.conf --screen 0
|
|
|
|
\f[R]
|
|
|
|
.fi
|
|
|
|
.PP
|
|
|
|
The above uses the 2560x1440 screen to compute the size of the window,
|
|
|
|
which Quickemu sizes to 2048x1152.
|
2022-07-30 06:56:23 +00:00
|
|
|
Without the \f[V]--screen\f[R] option, Quickemu would have used the
|
2022-02-25 23:03:58 +00:00
|
|
|
1920x1080 monitor which results in a window size of 1664x936.
|
|
|
|
.SH References
|
|
|
|
.PP
|
|
|
|
Useful reference that assisted the development of Quickemu.
|
|
|
|
.IP \[bu] 2
|
|
|
|
General
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
QEMU\[cq]s documentation! (https://qemu.readthedocs.io/en/latest/)
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://pve.proxmox.com/wiki/Qemu/KVM_Virtual_Machines>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.kraxel.org/blog/2020/01/qemu-sound-audiodev/>
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
macOS
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.nicksherlock.com/2020/06/installing-macos-big-sur-on-proxmox/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://passthroughpo.st/mac-os-adds-early-support-for-virtio-qemu/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://github.com/kholia/OSX-KVM>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://github.com/thenickdude/KVM-Opencore>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://github.com/acidanthera/OpenCorePkg/tree/master/Utilities/macrecovery>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.kraxel.org/blog/2017/09/running-macos-as-guest-in-kvm/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.nicksherlock.com/2017/10/passthrough-of-advanced-cpu-features-for-macos-high-sierra-guests/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<http://philjordan.eu/osx-virt/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://github.com/Dids/clover-builder>
|
|
|
|
.IP \[bu] 2
|
|
|
|
OpenCore Configurator (https://mackie100projects.altervista.org)
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
Windows
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://leduccc.medium.com/improving-the-performance-of-a-windows-10-guest-on-qemu-a5b3f54d9cf5>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://frontpagelinux.com/tutorials/how-to-use-linux-kvm-to-optimize-your-windows-10-virtual-machine/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://turlucode.com/qemu-command-line-args/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://github.com/pbatard/Fido>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.catapultsystems.com/blogs/create-zero-touch-windows-10-iso/>
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
TPM
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://qemu-project.gitlab.io/qemu/specs/tpm.html>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.tecklyfe.com/how-to-create-a-windows-11-virtual-machine-in-qemu/>
|
|
|
|
.RE
|
|
|
|
.IP \[bu] 2
|
|
|
|
9p & virtiofs
|
|
|
|
.RS 2
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://wiki.qemu.org/Documentation/9p>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://wiki.qemu.org/Documentation/9psetup>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://www.kraxel.org/blog/2019/06/macos-qemu-guest/>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://superuser.com/questions/628169/how-to-share-a-directory-with-the-host-without-networking-in-qemu>
|
|
|
|
.IP \[bu] 2
|
|
|
|
<https://virtio-fs.gitlab.io/>
|
|
|
|
.RE
|
|
|
|
.SH AUTHORS
|
|
|
|
.PP
|
|
|
|
Written by Martin Wimpress.
|
|
|
|
.SH BUGS
|
|
|
|
.PP
|
|
|
|
Submit bug reports online at:
|
|
|
|
<https://github.com/quickemu-project/quickemu/issues>
|
|
|
|
.SH SEE ALSO
|
|
|
|
.PP
|
|
|
|
Full sources at: <https://github.com/quickemu-project/quickemu>
|
|
|
|
.PP
|
|
|
|
quickemu_conf(1), quickget(1), quickgui(1)
|
|
|
|
.SH AUTHORS
|
|
|
|
Martin Wimpress.
|