From 46ac98ed00d53bd86b4ca04adf70f393c7c8edcc Mon Sep 17 00:00:00 2001 From: Phil Clifford Date: Thu, 31 Jul 2025 16:23:15 +0100 Subject: [PATCH] docs: update to reflect currently supported OSes Also reflect tweaks to wiki since native support in Debian Trixie, Ubuntu Plucky and Fedora 41 onwards. A lot of pandoc-generated changes to man page source style --- README.md | 10 +- build-docs | 2 +- docs/quickemu.1 | 661 ++++++++++++++++++++-------------------- docs/quickemu.1.md | 17 +- docs/quickemu_conf.5 | 216 ++++++------- docs/quickemu_conf.5.md | 2 +- docs/quickget.1 | 360 +++++++++++----------- docs/quickget.1.md | 5 +- 8 files changed, 638 insertions(+), 635 deletions(-) diff --git a/README.md b/README.md index 358adb7..8eeda6a 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ required to run the virtual machines. # Features - Host support for **Linux and macOS** -- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave +- **macOS** Sequoia, Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave - **Windows** 10 and 11 including TPM 2.0 - **Windows Server** 2022 2019 2016 - [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu @@ -66,9 +66,11 @@ required to run the virtual machines. The presenters of Linux Matters 🐧🎙️ are the creators of each of the principal Quickemu projects. We discussed Quickemu's 2024 reboot in [Episode 30 - Quickemu Rising From the Bashes](https://linuxmatters.sh/30).
- Linux Matters Podcast -
- Linux Matters Podcast + +Linux Matters Podcast +
+Linux Matters Podcast +
# Quick start diff --git a/build-docs b/build-docs index 3125ddc..c5907ea 160000 --- a/build-docs +++ b/build-docs @@ -1 +1 @@ -Subproject commit 3125ddc21a91440cd6f1f70aa40081d760c10a4e +Subproject commit c5907eae9c0bd9364b4a91a3f449f1d1dbbc58c9 diff --git a/docs/quickemu.1 b/docs/quickemu.1 index e74c237..da9fbd1 100644 --- a/docs/quickemu.1 +++ b/docs/quickemu.1 @@ -1,6 +1,6 @@ -.\" Automatically generated by Pandoc 3.6.1 +.\" Automatically generated by Pandoc 3.7.0.2 .\" -.TH "QUICKEMU" "1" "December 30, 2024" "quickemu" "Quickemu User Manual" +.TH "QUICKEMU" "1" "July 31, 2025" "quickemu" "Quickemu User Manual" .SH NAME quickemu \- A quick VM builder and manager .SH SYNOPSIS @@ -17,7 +17,7 @@ You can also pass optional parameters .TP \f[B]\-\-access\f[R] Enable remote spice access support. -\[aq]local\[aq] (default), \[aq]remote\[aq], \[aq]clientipaddress\[aq] +\(aqlocal\(aq (default), \(aqremote\(aq, \(aqclientipaddress\(aq .TP \f[B]\-\-braille\f[R] Enable braille support. @@ -31,8 +31,8 @@ Delete the entire VM and its configuration .TP \f[B]\-\-display\f[R] Select display backend. -\[aq]sdl\[aq] (default), \[aq]gtk\[aq], \[aq]none\[aq], \[aq]spice\[aq] -or \[aq]spice\-app\[aq] +\(aqsdl\(aq (default), \(aqgtk\(aq, \(aqnone\(aq, \(aqspice\(aq or +\(aqspice\-app\(aq .TP \f[B]\-\-fullscreen\f[R] Starts VM in full screen mode (Ctl+Alt+f to exit) @@ -66,14 +66,14 @@ Do not commit any changes to disk/snapshot. .TP \f[B]\-\-viewer \f[R] Choose an alternative viewer. -\[at]Options: \[aq]spicy\[aq] (default), \[aq]remote\-viewer\[aq], -\[aq]none\[aq] +\(atOptions: \(aqspicy\(aq (default), \(aqremote\-viewer\(aq, +\(aqnone\(aq .TP \f[B]\-\-width \f[R] -Set VM screen width; requires \[aq]\-\-height\[aq] +Set VM screen width; requires \(aq\-\-height\(aq .TP \f[B]\-\-height \f[R] -Set VM screen height; requires \[aq]\-\-width\[aq] +Set VM screen height; requires \(aq\-\-width\(aq .TP \f[B]\-\-ssh\-port \f[R] Set SSH port manually @@ -83,21 +83,20 @@ Set SPICE port manually .TP \f[B]\-\-public\-dir \f[R] Expose share directory. -\[at]Options: \[aq]\[aq] (default: xdg\-user\-dir PUBLICSHARE), -\[aq]\[aq], \[aq]none\[aq] +\(atOptions: \(aq\(aq (default: xdg\-user\-dir PUBLICSHARE), \(aq\(aq, +\(aqnone\(aq .TP \f[B]\-\-monitor \f[R] Set monitor connection type. -\[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], -\[aq]none\[aq] +\(atOptions: \(aqsocket\(aq (default), \(aqtelnet\(aq, \(aqnone\(aq .TP \f[B]\-\-monitor\-telnet\-host \f[R] Set telnet host for monitor. -(default: \[aq]localhost\[aq]) +(default: \(aqlocalhost\(aq) .TP \f[B]\-\-monitor\-telnet\-port \f[R] Set telnet port for monitor. -(default: \[aq]4440\[aq]) +(default: \(aq4440\(aq) .TP \f[B]\-\-monitor\-cmd \f[R] Send command to monitor if available. @@ -105,37 +104,36 @@ Send command to monitor if available. .TP \f[B]\-\-serial \f[R] Set serial connection type. -\[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], -\[aq]none\[aq] +\(atOptions: \(aqsocket\(aq (default), \(aqtelnet\(aq, \(aqnone\(aq .TP \f[B]\-\-serial\-telnet\-host \f[R] Set telnet host for serial. -(default: \[aq]localhost\[aq]) +(default: \(aqlocalhost\(aq) .TP \f[B]\-\-serial\-telnet\-port \f[R] Set telnet port for serial. -(default: \[aq]6660\[aq]) +(default: \(aq6660\(aq) .TP \f[B]\-\-keyboard \f[R] Set keyboard. -\[at]Options: \[aq]usb\[aq] (default), \[aq]ps2\[aq], \[aq]virtio\[aq] +\(atOptions: \(aqusb\(aq (default), \(aqps2\(aq, \(aqvirtio\(aq .TP \f[B]\-\-keyboard_layout \f[R] -Set keyboard layout: \[aq]en\-us\[aq] (default) +Set keyboard layout: \(aqen\-us\(aq (default) .TP \f[B]\-\-mouse \f[R] Set mouse. -\[at]Options: \[aq]tablet\[aq] (default), \[aq]ps2\[aq], \[aq]usb\[aq], -\[aq]virtio\[aq] +\(atOptions: \(aqtablet\(aq (default), \(aqps2\(aq, \(aqusb\(aq, +\(aqvirtio\(aq .TP \f[B]\-\-usb\-controller \f[R] Set usb\-controller. -\[at]Options: \[aq]ehci\[aq] (default), \[aq]xhci\[aq], \[aq]none\[aq] +\(atOptions: \(aqehci\(aq (default), \(aqxhci\(aq, \(aqnone\(aq .TP \f[B]\-\-sound\-card \f[R] Set sound card. -\[at]Options: \[aq]intel\-hda\[aq] (default), \[aq]ac97\[aq], -\[aq]es1370\[aq], \[aq]sb16\[aq], \[aq]none\[aq] +\(atOptions: \(aqintel\-hda\(aq (default), \(aqac97\(aq, \(aqes1370\(aq, +\(aqsb16\(aq, \(aqnone\(aq .TP \f[B]\-\-extra_args \f[R] Pass additional arguments to qemu @@ -151,15 +149,15 @@ Launches the VM specified in the file \f[I]ubuntu\-mate\-22.04.conf\f[R] .UR https://www.qemu.org/ QEMU .UE \c -\ that automatically \f[I]\[dq]does the right thing\[dq]\f[R] when +\ that automatically \f[I]\(dqdoes the right thing\(dq\f[R] when creating virtual machines. No requirement for exhaustive configuration options. You decide what operating system you want to run and Quickemu takes care of the rest 🤖 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]quickget\f[R] \f[B]automatically downloads the upstream OS\f[R] and creates the configuration 📀 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]quickemu\f[R] enumerates your hardware and launches the virtual machine with the \f[B]optimum configuration best suited to your computer\f[R] ⚡️ @@ -183,15 +181,16 @@ Windows \f[R], most of the BSDs, novel non\-Linux operating systems such as FreeDOS, Haiku, KolibriOS, OpenIndiana, ReactOS, and more. .SH Features -.IP \[bu] 2 +.IP \(bu 2 Host support for \f[B]Linux and macOS\f[R] -.IP \[bu] 2 -\f[B]macOS\f[R] Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave -.IP \[bu] 2 +.IP \(bu 2 +\f[B]macOS\f[R] Sequoia, Sonoma, Ventura, Monterey, Big Sur, Catalina & +Mojave +.IP \(bu 2 \f[B]Windows\f[R] 10 and 11 including TPM 2.0 -.IP \[bu] 2 +.IP \(bu 2 \f[B]Windows Server\f[R] 2022 2019 2016 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://ubuntu.com/desktop Ubuntu @@ -201,38 +200,38 @@ Ubuntu official Ubuntu flavours .UE \c \f[R] -.IP \[bu] 2 +.IP \(bu 2 \f[B]Nearly 1000 operating system editions are supported!\f[R] -.IP \[bu] 2 +.IP \(bu 2 Full SPICE support including host/guest clipboard sharing -.IP \[bu] 2 +.IP \(bu 2 VirtIO\-webdavd file sharing for Linux and Windows guests -.IP \[bu] 2 +.IP \(bu 2 VirtIO\-9p file sharing for Linux and macOS guests -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://wiki.qemu.org/Features/GuestAgent QEMU Guest Agent support .UE \c ; provides access to a system\-level agent via standard QMP commands -.IP \[bu] 2 +.IP \(bu 2 Samba file sharing for Linux, macOS and Windows guests (\f[I]if \f[CI]smbd\f[I] is installed on the host\f[R]) -.IP \[bu] 2 +.IP \(bu 2 VirGL acceleration -.IP \[bu] 2 +.IP \(bu 2 USB device pass\-through -.IP \[bu] 2 +.IP \(bu 2 Smartcard pass\-through -.IP \[bu] 2 +.IP \(bu 2 Automatic SSH port forwarding to guests -.IP \[bu] 2 +.IP \(bu 2 Network port forwarding -.IP \[bu] 2 +.IP \(bu 2 Full duplex audio -.IP \[bu] 2 +.IP \(bu 2 Braille support -.IP \[bu] 2 +.IP \(bu 2 EFI (with or without SecureBoot) and Legacy BIOS boot .SS As featured on \c .UR https://linuxmatters.sh @@ -240,8 +239,8 @@ Linux Matters .UE \c \ podcast! The presenters of Linux Matters 🐧🎙️ are the creators of each of the -principle Quickemu projects. -We discussed Quickemu\[aq]s 2024 reboot in \c +principal Quickemu projects. +We discussed Quickemu\(aqs 2024 reboot in \c .UR https://linuxmatters.sh/30 Episode 30 \- Quickemu Rising From the Bashes .UE \c @@ -251,132 +250,133 @@ Episode 30 \- Quickemu Rising From the Bashes .PP When installing from source, you will need to install the following requirements manually: -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.qemu.org/ QEMU .UE \c \ (\f[I]6.0.0 or newer\f[R]) \f[B]with GTK, SDL, SPICE & VirtFS support\f[R] -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.gnu.org/software/bash/ bash .UE \c \ (\f[I]4.0 or newer\f[R]) -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.gnu.org/software/coreutils/ Coreutils .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://curl.se/ curl .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/tianocore/edk2 EDK II .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.gnu.org/software/gawk/ gawk .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.gnu.org/software/grep/ grep .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://gitlab.freedesktop.org/mesa/demos glxinfo .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://stedolan.github.io/jq/ jq .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://wiki.linuxfoundation.org/lsb/start LSB .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/pciutils/pciutils pciutils .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://gitlab.com/procps-ng/procps procps .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.python.org/ python3 .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://cdrtools.sourceforge.net/private/cdrecord.html mkisofs .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/gregkh/usbutils usbutils .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/karelzak/util-linux util\-linux .UE \c ; including \f[CR]uuidgen\f[R] -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.gnu.org/software/sed/ sed .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://www.dest-unreach.org/socat/ socat .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://gitlab.freedesktop.org/spice/spice-gtk spicy .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/stefanberger/swtpm swtpm .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.freedesktop.org/wiki/Software/xdg-user-dirs/ xdg\-user\-dirs .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://gitlab.freedesktop.org/xorg/app/xrandr xrandr .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://zsync.moria.org.uk/ zsync .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://www.info-zip.org/UnZip.html unzip .UE \c .PP -For Ubuntu, Arch and NixOS hosts, the \c +For Ubuntu, Debian, Fedora, Arch and NixOS hosts the native packaging or +\c .UR https://launchpad.net/~flexiondotorg/+archive/ubuntu/quickemu ppa .UE \c @@ -394,12 +394,15 @@ to install the above requirements or their equivalents. .PP These examples may save a little typing: .SS Install requirements on Debian hosts -This also applies to derivatives: +These should be handled by dependencies in Trixie and later. +For earlier versions (and their derivatives): .IP .EX sudo apt\-get install bash coreutils curl genisoimage grep jq mesa\-utils ovmf pciutils procps python3 qemu sed socat spice\-client\-gtk swtpm\-tools unzip usbutils util\-linux xdg\-user\-dirs xrandr zsync .EE .SS Install requirements on Fedora hosts +These are handled natively for Fedora 41 on. +For earlier versions: .IP .EX sudo dnf install bash coreutils curl edk2\-tools genisoimage grep jq mesa\-demos pciutils procps python3 qemu sed socat spice\-gtk\-tools swtpm unzip usbutils util\-linux uuidgen\-runtime xdg\-user\-dirs xrandr zsync @@ -410,27 +413,27 @@ instead of \f[CR]sys\-firmware/edk2\-ovmf\-bin\f[R] \- depending on how your system is configured. .IP .EX -sudo emerge \-\-ask \-\-noreplace app\-emulation/qemu \[rs] - app\-shells/bash \[rs] - sys\-apps/coreutils \[rs] - net\-misc/curl \[rs] - sys\-firmware/edk2\-ovmf\-bin \[rs] - sys\-apps/gawk \[rs] - sys\-apps/grep \[rs] - x11\-apps/mesa\-progs \[rs] - app\-misc/jq \[rs] - sys\-apps/pciutils \[rs] - sys\-process/procps \[rs] - app\-cdr/cdrtools \[rs] - sys\-apps/usbutils \[rs] - sys\-apps/util\-linux \[rs] - sys\-apps/sed \[rs] - net\-misc/socat \[rs] - app\-emulation/spice \[rs] - app\-crypt/swtpm \[rs] - x11\-misc/xdg\-user\-dirs \[rs] - x11\-apps/xrandr \[rs] - net\-misc/zsync \[rs] +sudo emerge \-\-ask \-\-noreplace app\-emulation/qemu \(rs + app\-shells/bash \(rs + sys\-apps/coreutils \(rs + net\-misc/curl \(rs + sys\-firmware/edk2\-ovmf\-bin \(rs + sys\-apps/gawk \(rs + sys\-apps/grep \(rs + x11\-apps/mesa\-progs \(rs + app\-misc/jq \(rs + sys\-apps/pciutils \(rs + sys\-process/procps \(rs + app\-cdr/cdrtools \(rs + sys\-apps/usbutils \(rs + sys\-apps/util\-linux \(rs + sys\-apps/sed \(rs + net\-misc/socat \(rs + app\-emulation/spice \(rs + app\-crypt/swtpm \(rs + x11\-misc/xdg\-user\-dirs \(rs + x11\-apps/xrandr \(rs + net\-misc/zsync \(rs app\-arch/unzip .EE .SS Install requirements on macOS hosts @@ -453,7 +456,7 @@ Alternative Frontends .SS Quickgui While \f[CR]quickemu\f[R] and \f[CR]quickget\f[R] are designed for the terminal, a graphical user interface is also available: -.IP \[bu] 2 +.IP \(bu 2 \f[B]\c .UR https://github.com/quickemu-project/quickgui Quickgui @@ -498,23 +501,23 @@ create the virtual machine configuration. quickget ubuntu 22.04 quickemu \-\-vm ubuntu\-22.04.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as normal. -.IP \[bu] 2 +.IP \(bu 2 Post\-install: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE agent (\f[CR]spice\-vdagent\f[R]) in the guest to enable copy/paste and USB redirection .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]sudo apt install spice\-vdagent\f[R] .RE -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE WebDAV agent (\f[CR]spice\-webdavd\f[R]) in the guest to enable file sharing. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]sudo apt install spice\-webdavd\f[R] .RE .RE @@ -539,29 +542,29 @@ The project \c wiki .UE \c \ may have further information. -.IP \[bu] 2 +.IP \(bu 2 \f[CR]edubuntu\f[R] (Edubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kubuntu\f[R] (Kubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]lubuntu\f[R] (Lubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-budgie\f[R] (Ubuntu Budgie) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntucinnamon\f[R] (Ubuntu Cinnamon) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntukylin\f[R] (Ubuntu Kylin) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-mate\f[R] (Ubuntu MATE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-server\f[R] (Ubuntu Server) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntustudio\f[R] (Ubuntu Studio) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\f[R] (Ubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-unity\f[R] (Ubuntu Unity) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]xubuntu\f[R] (Xubuntu) .PP You can also use \f[CR]quickget\f[R] with advanced options : @@ -604,173 +607,171 @@ wiki .UE \c .SS Other Operating Systems \f[CR]quickget\f[R] also supports: -.IP \[bu] 2 +.IP \(bu 2 \f[CR]alma\f[R] (AlmaLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]alpine\f[R] (Alpine Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]android\f[R] (Android x86) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]antix\f[R] (Antix) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]archcraft\f[R] (Archcraft) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]archlinux\f[R] (Arch Linux) -.IP \[bu] 2 -\f[CR]arcolinux\f[R] (Arco Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]artixlinux\f[R] (Artix Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]athenaos\f[R] (Athena OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]batocera\f[R] (Batocera) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bazzite\f[R] (Bazzite) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]biglinux\f[R] (BigLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]blendos\f[R] (BlendOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bodhi\f[R] (Bodhi) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bunsenlabs\f[R] (BunsenLabs) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]cachyos\f[R] (CachyOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]centos\-stream\f[R] (CentOS Stream) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]chimeralinux\f[R] (Chimera Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]crunchbang++\f[R] (Crunchbangplusplus) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]debian\f[R] (Debian) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]deepin\f[R] (Deepin) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]devuan\f[R] (Devuan) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]dragonflybsd\f[R] (DragonFlyBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]easyos\f[R] (EasyOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]elementary\f[R] (elementary OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]endeavouros\f[R] (EndeavourOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]endless\f[R] (Endless OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]fedora\f[R] (Fedora) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]freebsd\f[R] (FreeBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]freedos\f[R] (FreeDOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]garuda\f[R] (Garuda Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]gentoo\f[R] (Gentoo) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ghostbsd\f[R] (GhostBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]gnomeos\f[R] (GNOME OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]guix\f[R] (Guix) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]haiku\f[R] (Haiku) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]holoiso\f[R] (HoloISO) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kali\f[R] (Kali) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kdeneon\f[R] (KDE Neon) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kolibrios\f[R] (KolibriOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]linuxlite\f[R] (Linux Lite) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]linuxmint\f[R] (Linux Mint) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]lmde\f[R] (Linux Mint Debian Edition) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]maboxlinux\f[R] (Mabox Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]mageia\f[R] (Mageia) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]manjaro\f[R] (Manjaro) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]mxlinux\f[R] (MX Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]netboot\f[R] (netboot.xyz) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]netbsd\f[R] (NetBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nitrux\f[R] (Nitrux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nixos\f[R] (NixOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nwg\-shell\f[R] (nwg\-shell) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]openbsd\f[R] (OpenBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]openindiana\f[R] (OpenIndiana) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]opensuse\f[R] (openSUSE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]oraclelinux\f[R] (Oracle Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]parrotsec\f[R] (Parrot Security) -.IP \[bu] 2 +.IP \(bu 2 +\f[CR]pclinuxos\f[R] (PCLinuxOS) +.IP \(bu 2 \f[CR]peppermint\f[R] (PeppermintOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]popos\f[R] (Pop!_OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]porteus\f[R] (Porteus) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]primtux\f[R] (PrimTux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]proxmox\-ve\f[R] (Proxmox VE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]pureos\f[R] (PureOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]reactos\f[R] (ReactOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]rebornos\f[R] (RebornOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]rockylinux\f[R] (Rocky Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]siduction\f[R] (Siduction) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slackware\f[R] (Slackware) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slax\f[R] (Slax) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slint\f[R] (Slint) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slitaz\f[R] (SliTaz) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]solus\f[R] (Solus) -.IP \[bu] 2 -\f[CR]sparkylinux\f[R] (SparkyLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]spirallinux\f[R] (SpiralLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tails\f[R] (Tails) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tinycore\f[R] (Tiny Core Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]trisquel\f[R] (Trisquel\-) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]truenas\-core\f[R] (TrueNAS Core) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]truenas\-scale\f[R] (TrueNAS Scale) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tuxedo\-os\f[R] (Tuxedo OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]vanillaos\f[R] (Vanilla OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]void\f[R] (Void Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]vxlinux\f[R] (VX Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]zorin\f[R] (Zorin OS) .SS \c .UR https://github.com/quickemu-project/quickemu/wiki/02-Create-Linux-virtual-machines#manually-create-linux-guests @@ -778,32 +779,32 @@ Custom Linux guests .UE \c Or you can download a Linux image and manually create a VM configuration. -.IP \[bu] 2 +.IP \(bu 2 Download a .iso image of a Linux distribution -.IP \[bu] 2 +.IP \(bu 2 Create a VM configuration file; for example \f[CR]debian\-bullseye.conf\f[R] .IP .EX -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] +guest_os=\(dqlinux\(dq +disk_img=\(dqdebian\-bullseye/disk.qcow2\(dq +iso=\(dqdebian\-bullseye/firmware\-11.0.0\-amd64\-DVD\-1.iso\(dq .EE -.IP \[bu] 2 +.IP \(bu 2 Use \f[CR]quickemu\f[R] to start the virtual machine: .IP .EX quickemu \-\-vm debian\-bullseye.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as normal. -.IP \[bu] 2 +.IP \(bu 2 Post\-install: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE agent (\f[CR]spice\-vdagent\f[R]) in the guest to enable copy/paste and USB redirection. -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE WebDAV agent (\f[CR]spice\-webdavd\f[R]) in the guest to enable file sharing. .RE @@ -835,54 +836,54 @@ quickemu \-\-vm macos\-big\-sur.conf macOS \f[CR]mojave\f[R], \f[CR]catalina\f[R], \f[CR]big\-sur\f[R], \f[CR]monterey\f[R], \f[CR]ventura\f[R] and \f[CR]sonoma\f[R] are supported. -.IP \[bu] 2 +.IP \(bu 2 Use cursor keys and enter key to select the \f[B]macOS Base System\f[R] -.IP \[bu] 2 +.IP \(bu 2 From \f[B]macOS Utilities\f[R] .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Disk Utility\f[R] and \f[B]Continue\f[R] .RS 2 -.IP \[bu] 2 -Select \f[CR]QEMU HARDDISK Media\f[R] (\[ti]103.08GB) from the list (on +.IP \(bu 2 +Select \f[CR]QEMU HARDDISK Media\f[R] (\(ti103.08GB) from the list (on Big Sur and above use \f[CR]Apple Inc. VirtIO Block Device\f[R]) and click \f[B]Erase\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Enter a \f[CR]Name:\f[R] for the disk -.IP \[bu] 2 +.IP \(bu 2 If you are installing macOS Mojave or later (Catalina, Big Sur, Monterey, Ventura and Sonoma), choose any of the APFS options as the filesystem. MacOS Extended may not work. .RE -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Erase\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Done\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Close Disk Utility .RE -.IP \[bu] 2 +.IP \(bu 2 From \f[B]macOS Utilities\f[R] .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Reinstall macOS\f[R] and \f[B]Continue\f[R] .RE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as you normally would. .RS 2 -.IP \[bu] 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 +.IP \(bu 2 On the subsequent reboots use cursor keys and enter key to select the disk you named .RE -.IP \[bu] 2 +.IP \(bu 2 Once you have finished installing macOS you will be presented with an the out\-of\-the\-box first\-start wizard to configure various options and set up your username and password -.IP \[bu] 2 +.IP \(bu 2 OPTIONAL: After you have concluded the out\-of\-the\-box wizard, you may want to enable the TRIM feature that the computer industry created for SSD disks. @@ -892,7 +893,7 @@ Virtual Machine. Without this step your macOS disk image will only ever get larger and will not shrink even when you delete lots of data inside macOS. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 To enable TRIM, open the Terminal application and type the following command followed by pressing enter to tell macos to use the TRIM command on the hard disk when files are deleted: @@ -902,21 +903,21 @@ on the hard disk when files are deleted: sudo trimforce enable .EE .PP -You will be prompted to enter your account\[aq]s password to gain the +You will be prompted to enter your account\(aqs password to gain the privilege needed. -Once you\[aq]ve entered your password and pressed enter the command will +Once you\(aqve entered your password and pressed enter the command will request confirmation in the form of two questions that require you to -type y (for a \[dq]yes\[dq] response) followed by enter to confirm. +type y (for a \(dqyes\(dq response) followed by enter to confirm. .PP If you press enter without first typing y the system will consider that -a negative response as though you said \[dq]no\[dq]: +a negative response as though you said \(dqno\(dq: .IP .EX -IMPORTANT NOTICE: This tool force\-enables TRIM for all relevant attached devices, even though such devices may not have been validated for data integrity while using TRIM. Use of this tool to enable TRIM may result in unintended data loss or data corruption. It should not be used in a commercial operating environment or with important data. Before using this tool, you should back up all of your data and regularly back up data while TRIM is enabled. This tool is provided on an \[dq]as is\[dq] basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON\-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THIS TOOL OR ITS USE ALONE OR IN COMBINATION WITH YOUR DEVICES, SYSTEMS, OR SERVICES. BY USING THIS TOOL TO ENABLE TRIM, YOU AGREE THAT, TO THE EXTENT PERMITTED BY APPLICABLE LAW, USE OF THE TOOL IS AT YOUR SOLE RISK AND THAT THE ENTIRE RISK AS TO SATISFACTORY QUALITY, PERFORMANCE, ACCURACY AND EFFORT IS WITH YOU. +IMPORTANT NOTICE: This tool force\-enables TRIM for all relevant attached devices, even though such devices may not have been validated for data integrity while using TRIM. Use of this tool to enable TRIM may result in unintended data loss or data corruption. It should not be used in a commercial operating environment or with important data. Before using this tool, you should back up all of your data and regularly back up data while TRIM is enabled. This tool is provided on an \(dqas is\(dq basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON\-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THIS TOOL OR ITS USE ALONE OR IN COMBINATION WITH YOUR DEVICES, SYSTEMS, OR SERVICES. BY USING THIS TOOL TO ENABLE TRIM, YOU AGREE THAT, TO THE EXTENT PERMITTED BY APPLICABLE LAW, USE OF THE TOOL IS AT YOUR SOLE RISK AND THAT THE ENTIRE RISK AS TO SATISFACTORY QUALITY, PERFORMANCE, ACCURACY AND EFFORT IS WITH YOU. Are you sure you with to proceed (y/N)? .EE .PP -And a second confirmation once you\[aq]ve confirmed the previous one: +And a second confirmation once you\(aqve confirmed the previous one: .IP .EX Your system will immediately reboot when this is complete. @@ -929,44 +930,44 @@ soon as the command completes. The default macOS configuration looks like this: .IP .EX -guest_os=\[dq]macos\[dq] -img=\[dq]macos\- big\-sur/RecoveryImage.img\[dq] -disk_img=\[dq]macos\- big\-sur/disk.qcow2\[dq] -macos_release=\[dq] big\-sur\[dq] +guest_os=\(dqmacos\(dq +img=\(dqmacos\- big\-sur/RecoveryImage.img\(dq +disk_img=\(dqmacos\- big\-sur/disk.qcow2\(dq +macos_release=\(dq big\-sur\(dq .EE -.IP \[bu] 2 -\f[CR]guest_os=\[dq]macos\[dq]\f[R] instructs Quickemu to optimise for +.IP \(bu 2 +\f[CR]guest_os=\(dqmacos\(dq\f[R] instructs Quickemu to optimise for macOS. -.IP \[bu] 2 -\f[CR]macos_release=\[dq] big\-sur\[dq]\f[R] instructs Quickemu to +.IP \(bu 2 +\f[CR]macos_release=\(dq big\-sur\(dq\f[R] instructs Quickemu to optimise for a particular macOS release. .RS 2 -.IP \[bu] 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 +.IP \(bu 2 And VirtIO Block Media (disks) are supported/stable in Catalina and newer. .RE .SH macOS compatibility There are some considerations when running macOS via Quickemu. -.IP \[bu] 2 +.IP \(bu 2 Supported macOS releases: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Mojave -.IP \[bu] 2 +.IP \(bu 2 Catalina -.IP \[bu] 2 +.IP \(bu 2 Big Sur -.IP \[bu] 2 +.IP \(bu 2 Monterey -.IP \[bu] 2 +.IP \(bu 2 Ventura -.IP \[bu] 2 +.IP \(bu 2 Sonoma .RE -.IP \[bu] 2 +.IP \(bu 2 \f[CR]quickemu\f[R] will automatically download the required \c .UR https://github.com/acidanthera/OpenCorePkg OpenCore @@ -976,49 +977,49 @@ OpenCore OSX\-KVM .UE \c \&. -.IP \[bu] 2 +.IP \(bu 2 Optimised by default, but no GPU acceleration is available. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Host CPU vendor is detected and guest CPU is optimised accordingly. -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.kraxel.org/blog/2019/06/macos-qemu-guest/ VirtIO Block Media .UE \c \ is used for the system disk where supported. -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://philjordan.eu/osx-virt/ VirtIO \f[CR]usb\-tablet\f[R] .UE \c \ is used for the mouse. -.IP \[bu] 2 +.IP \(bu 2 VirtIO Network (\f[CR]virtio\-net\f[R]) is supported and enabled on macOS Big Sur and newer, but earlier releases use \f[CR]vmxnet3\f[R]. -.IP \[bu] 2 +.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 +.IP \(bu 2 USB host and SPICE pass\-through is: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 UHCI (USB 2.0) on macOS Catalina and earlier. -.IP \[bu] 2 +.IP \(bu 2 XHCI (USB 3.0) on macOS Big Sur and newer. .RE -.IP \[bu] 2 +.IP \(bu 2 Display resolution can be changed via \f[CR]quickemu\f[R] using \f[CR]\-\-width\f[R] and \f[CR]\-\-height\f[R] command line arguments. -.IP \[bu] 2 +.IP \(bu 2 \f[B]Full Duplex audio requires \c .UR https://github.com/chris1111/VoodooHDA-OC VoodooHDA OC .UE \c \ or pass\-through a USB audio\-device to the macOS guest VM\f[R]. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 NOTE! \c .UR https://disable-gatekeeper.github.io/ @@ -1030,7 +1031,7 @@ System Integrity Protection (SIP) .UE \c \ need to be disabled to install VoodooHDA OC .RE -.IP \[bu] 2 +.IP \(bu 2 File sharing between guest and host is available via \c .UR https://wiki.qemu.org/Documentation/9psetup virtio\-9p @@ -1040,12 +1041,12 @@ virtio\-9p SPICE webdavd .UE \c \&. -.IP \[bu] 2 +.IP \(bu 2 Copy/paste via SPICE agent is \f[B]not available on macOS\f[R]. .SH macOS App Store -If you see \f[I]\[dq]Your device or computer could not be -verified\[dq]\f[R] when you try to login to the App Store, make sure -that your wired ethernet device is \f[CR]en0\f[R]. +If you see \f[I]\(dqYour device or computer could not be +verified\(dq\f[R] when you try to login to the App Store, make sure that +your wired ethernet device is \f[CR]en0\f[R]. Use \f[CR]ifconfig\f[R] in a terminal to verify this. .PP If the wired ethernet device is not \f[CR]en0\f[R], then then go to @@ -1085,7 +1086,7 @@ VirtIO drivers for Windows .UE \c \&. .PP -\f[B]Windows 8.1\f[R] is also supported but doesn\[aq]t feature any +\f[B]Windows 8.1\f[R] is also supported but doesn\(aqt feature any automated installation or driver optimisation. .PP \f[CR]quickget\f[R] can also download \c @@ -1115,17 +1116,17 @@ No automated installation is supported for these releases. quickget windows 11 quickemu \-\-vm windows\-11.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as you normally would. -.IP \[bu] 2 +.IP \(bu 2 All relevant drivers and services should be installed automatically. -.IP \[bu] 2 +.IP \(bu 2 A local administrator user account is automatically created, with these credentials: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Username: \f[CR]Quickemu\f[R] -.IP \[bu] 2 +.IP \(bu 2 Password: \f[CR]quickemu\f[R] .RE .PP @@ -1141,11 +1142,11 @@ Usage quickemu \-\-vm ubuntu.conf Arguments - \-\-access : Enable remote spice access support. \[aq]local\[aq] (default), \[aq]remote\[aq], \[aq]clientipaddress\[aq] + \-\-access : Enable remote spice access support. \(aqlocal\(aq (default), \(aqremote\(aq, \(aqclientipaddress\(aq \-\-braille : Enable braille support. Requires SDL. \-\-delete\-disk : Delete the disk image and EFI variables \-\-delete\-vm : Delete the entire VM and its configuration - \-\-display : Select display backend. \[aq]sdl\[aq] (default), \[aq]cocoa\[aq], \[aq]gtk\[aq], \[aq]none\[aq], \[aq]spice\[aq] or \[aq]spice\-app\[aq] + \-\-display : Select display backend. \(aqsdl\(aq (default), \(aqcocoa\(aq, \(aqgtk\(aq, \(aqnone\(aq, \(aqspice\(aq or \(aqspice\-app\(aq \-\-fullscreen : Starts VM in full screen mode (Ctl+Alt+f to exit) \-\-ignore\-msrs\-always : Configure KVM to always ignore unhandled machine\-specific registers \-\-kill : Kill the VM process if it is running @@ -1156,31 +1157,31 @@ Arguments \-\-snapshot delete : Delete a snapshot. \-\-snapshot info : Show disk/snapshot info. \-\-status\-quo : Do not commit any changes to disk/snapshot. - \-\-viewer : Choose an alternative viewer. \[at]Options: \[aq]spicy\[aq] (default), \[aq]remote\-viewer\[aq], \[aq]none\[aq] - \-\-width : Set VM screen width; requires \[aq]\-\-height\[aq] - \-\-height : Set VM screen height; requires \[aq]\-\-width\[aq] + \-\-viewer : Choose an alternative viewer. \(atOptions: \(aqspicy\(aq (default), \(aqremote\-viewer\(aq, \(aqnone\(aq + \-\-width : Set VM screen width; requires \(aq\-\-height\(aq + \-\-height : Set VM screen height; requires \(aq\-\-width\(aq \-\-ssh\-port : Set SSH port manually \-\-spice\-port : Set SPICE port manually - \-\-public\-dir : Expose share directory. \[at]Options: \[aq]\[aq] (default: xdg\-user\-dir PUBLICSHARE), \[aq]\[aq], \[aq]none\[aq] - \-\-monitor : Set monitor connection type. \[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], \[aq]none\[aq] - \-\-monitor\-telnet\-host : Set telnet host for monitor. (default: \[aq]localhost\[aq]) - \-\-monitor\-telnet\-port : Set telnet port for monitor. (default: \[aq]4440\[aq]) + \-\-public\-dir : Expose share directory. \(atOptions: \(aq\(aq (default: xdg\-user\-dir PUBLICSHARE), \(aq\(aq, \(aqnone\(aq + \-\-monitor : Set monitor connection type. \(atOptions: \(aqsocket\(aq (default), \(aqtelnet\(aq, \(aqnone\(aq + \-\-monitor\-telnet\-host : Set telnet host for monitor. (default: \(aqlocalhost\(aq) + \-\-monitor\-telnet\-port : Set telnet port for monitor. (default: \(aq4440\(aq) \-\-monitor\-cmd : Send command to monitor if available. (Example: system_powerdown) - \-\-serial : Set serial connection type. \[at]Options: \[aq]socket\[aq] (default), \[aq]telnet\[aq], \[aq]none\[aq] - \-\-serial\-telnet\-host : Set telnet host for serial. (default: \[aq]localhost\[aq]) - \-\-serial\-telnet\-port : Set telnet port for serial. (default: \[aq]6660\[aq]) - \-\-keyboard : Set keyboard. \[at]Options: \[aq]usb\[aq] (default), \[aq]ps2\[aq], \[aq]virtio\[aq] - \-\-keyboard_layout : Set keyboard layout: \[aq]en\-us\[aq] (default) - \-\-mouse : Set mouse. \[at]Options: \[aq]tablet\[aq] (default), \[aq]ps2\[aq], \[aq]usb\[aq], \[aq]virtio\[aq] - \-\-usb\-controller : Set usb\-controller. \[at]Options: \[aq]ehci\[aq] (default), \[aq]xhci\[aq], \[aq]none\[aq] - \-\-sound\-card : Set sound card. \[at]Options: \[aq]intel\-hda\[aq] (default), \[aq]ac97\[aq], \[aq]es1370\[aq], \[aq]sb16\[aq], \[aq]usb\-audio\[aq], \[aq]none\[aq] - \-\-sound\-duplex : Set sound card duplex. \[at]Options: \[aq]hda\-micro\[aq] (default: speaker/mic), \[aq]hda\-duplex\[aq] (line\-in/line\-out), \[aq]hda\-output\[aq] (output\-only) + \-\-serial : Set serial connection type. \(atOptions: \(aqsocket\(aq (default), \(aqtelnet\(aq, \(aqnone\(aq + \-\-serial\-telnet\-host : Set telnet host for serial. (default: \(aqlocalhost\(aq) + \-\-serial\-telnet\-port : Set telnet port for serial. (default: \(aq6660\(aq) + \-\-keyboard : Set keyboard. \(atOptions: \(aqusb\(aq (default), \(aqps2\(aq, \(aqvirtio\(aq + \-\-keyboard_layout : Set keyboard layout: \(aqen\-us\(aq (default) + \-\-mouse : Set mouse. \(atOptions: \(aqtablet\(aq (default), \(aqps2\(aq, \(aqusb\(aq, \(aqvirtio\(aq + \-\-usb\-controller : Set usb\-controller. \(atOptions: \(aqehci\(aq (default), \(aqxhci\(aq, \(aqnone\(aq + \-\-sound\-card : Set sound card. \(atOptions: \(aqintel\-hda\(aq (default), \(aqac97\(aq, \(aqes1370\(aq, \(aqsb16\(aq, \(aqusb\-audio\(aq, \(aqnone\(aq + \-\-sound\-duplex : Set sound card duplex. \(atOptions: \(aqhda\-micro\(aq (default: speaker/mic), \(aqhda\-duplex\(aq (line\-in/line\-out), \(aqhda\-output\(aq (output\-only) \-\-extra_args : Pass additional arguments to qemu \-\-version : Print version .EE .SS Desktop shortcuts Desktop shortcuts can be created for a VM, the shortcuts are saved in -\f[CR]\[ti]/.local/share/applications\f[R]. +\f[CR]\(ti/.local/share/applications\f[R]. Here is an example of how to create a shortcut. .IP .EX @@ -1188,132 +1189,132 @@ quickemu \-\-vm ubuntu\-22.04\-desktop.conf \-\-shortcut .EE .SS References Useful reference that assisted the development of Quickemu. -.IP \[bu] 2 +.IP \(bu 2 General .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://qemu.readthedocs.io/en/latest/ -QEMU\[aq]s documentation! +QEMU\(aqs documentation! .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://pve.proxmox.com/wiki/Qemu/KVM_Virtual_Machines .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.kraxel.org/blog/2020/01/qemu-sound-audiodev/ .UE \c .RE -.IP \[bu] 2 +.IP \(bu 2 macOS .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.nicksherlock.com/2020/06/installing-macos-big-sur-on-proxmox/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://passthroughpo.st/mac-os-adds-early-support-for-virtio-qemu/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/kholia/OSX-KVM .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/thenickdude/KVM-Opencore .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://gist.github.com/MCJack123/943eaca762730ca4b7ae460b731b68e7 .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/acidanthera/OpenCorePkg/tree/master/Utilities/macrecovery .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.kraxel.org/blog/2017/09/running-macos-as-guest-in-kvm/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.nicksherlock.com/2017/10/passthrough-of-advanced-cpu-features-for-macos-high-sierra-guests/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://philjordan.eu/osx-virt/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/Dids/clover-builder .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://mackie100projects.altervista.org OpenCore Configurator .UE \c .RE -.IP \[bu] 2 +.IP \(bu 2 Windows .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://leduccc.medium.com/improving-the-performance-of-a-windows-10-guest-on-qemu-a5b3f54d9cf5 .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://frontpagelinux.com/tutorials/how-to-use-linux-kvm-to-optimize-your-windows-10-virtual-machine/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://turlucode.com/qemu-command-line-args/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://github.com/pbatard/Fido .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.catapultsystems.com/blogs/create-zero-touch-windows-10-iso/ .UE \c .RE -.IP \[bu] 2 +.IP \(bu 2 TPM .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://qemu-project.gitlab.io/qemu/specs/tpm.html .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.tecklyfe.com/how-to-create-a-windows-11-virtual-machine-in-qemu/ .UE \c .RE -.IP \[bu] 2 +.IP \(bu 2 9p & virtiofs .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://wiki.qemu.org/Documentation/9p .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://wiki.qemu.org/Documentation/9psetup .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.kraxel.org/blog/2019/06/macos-qemu-guest/ .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://superuser.com/questions/628169/how-to-share-a-directory-with-the-host-without-networking-in-qemu .UE \c -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://virtio-fs.gitlab.io/ .UE \c diff --git a/docs/quickemu.1.md b/docs/quickemu.1.md index 7b7144e..cdf0b99 100644 --- a/docs/quickemu.1.md +++ b/docs/quickemu.1.md @@ -1,6 +1,6 @@ --- author: Martin Wimpress -date: December 30, 2024 +date: July 31, 2025 footer: quickemu header: Quickemu User Manual section: 1 @@ -173,7 +173,8 @@ Haiku, KolibriOS, OpenIndiana, ReactOS, and more. # Features - Host support for **Linux and macOS** -- **macOS** Sonoma, Ventura, Monterey, Big Sur, Catalina & Mojave +- **macOS** Sequoia, Sonoma, Ventura, Monterey, Big Sur, Catalina & + Mojave - **Windows** 10 and 11 including TPM 2.0 - **Windows Server** 2022 2019 2016 - [Ubuntu](https://ubuntu.com/desktop) and all the **[official Ubuntu @@ -198,7 +199,7 @@ Haiku, KolibriOS, OpenIndiana, ReactOS, and more. ## As featured on [Linux Matters](https://linuxmatters.sh) podcast! The presenters of Linux Matters 🐧🎙️ are the creators of each of the -principle Quickemu projects. We discussed Quickemu's 2024 reboot in +principal Quickemu projects. We discussed Quickemu's 2024 reboot in [Episode 30 - Quickemu Rising From the Bashes](https://linuxmatters.sh/30). @@ -240,7 +241,7 @@ requirements manually: - [zsync](http://zsync.moria.org.uk/) - [unzip](http://www.info-zip.org/UnZip.html) -For Ubuntu, Arch and NixOS hosts, the +For Ubuntu, Debian, Fedora, Arch and NixOS hosts the native packaging or [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) @@ -252,7 +253,8 @@ These examples may save a little typing: #### Install requirements on Debian hosts -This also applies to derivatives: +These should be handled by dependencies in Trixie and later. For earlier +versions (and their derivatives): ``` shell sudo apt-get install bash coreutils curl genisoimage grep jq mesa-utils ovmf pciutils procps python3 qemu sed socat spice-client-gtk swtpm-tools unzip usbutils util-linux xdg-user-dirs xrandr zsync @@ -260,6 +262,8 @@ sudo apt-get install bash coreutils curl genisoimage grep jq mesa-utils ovmf pci #### Install requirements on Fedora hosts +These are handled natively for Fedora 41 on. For earlier versions: + ``` shell sudo dnf install bash coreutils curl edk2-tools genisoimage grep jq mesa-demos pciutils procps python3 qemu sed socat spice-gtk-tools swtpm unzip usbutils util-linux uuidgen-runtime xdg-user-dirs xrandr zsync ``` @@ -436,7 +440,6 @@ Further information is available from the project - `antix` (Antix) - `archcraft` (Archcraft) - `archlinux` (Arch Linux) -- `arcolinux` (Arco Linux) - `artixlinux` (Artix Linux) - `athenaos` (Athena OS) - `batocera` (Batocera) @@ -487,6 +490,7 @@ Further information is available from the project - `opensuse` (openSUSE) - `oraclelinux` (Oracle Linux) - `parrotsec` (Parrot Security) +- `pclinuxos` (PCLinuxOS) - `peppermint` (PeppermintOS) - `popos` (Pop!\_OS) - `porteus` (Porteus) @@ -502,7 +506,6 @@ Further information is available from the project - `slint` (Slint) - `slitaz` (SliTaz) - `solus` (Solus) -- `sparkylinux` (SparkyLinux) - `spirallinux` (SpiralLinux) - `tails` (Tails) - `tinycore` (Tiny Core Linux) diff --git a/docs/quickemu_conf.5 b/docs/quickemu_conf.5 index 7155b7d..ca983f2 100644 --- a/docs/quickemu_conf.5 +++ b/docs/quickemu_conf.5 @@ -1,6 +1,6 @@ -.\" Automatically generated by Pandoc 3.6.1 +.\" Automatically generated by Pandoc 3.7.0.2 .\" -.TH "QUICKEMU_CONF" "5" "December 30, 2024" "quickemu_conf" "Quickemu Configuration Manual" +.TH "QUICKEMU_CONF" "5" "July 31, 2025" "quickemu_conf" "Quickemu Configuration Manual" .SH NAME quickemu_conf \- Options and parameters in the quickemu .conf .SH DESCRIPTION @@ -15,72 +15,72 @@ These are the options and defaults for the .conf file .IP .EX # Lowercase variables are used in the VM config file only -boot=\[dq]efi\[dq] -cpu_cores=\[dq]\[dq] -disk_img=\[dq]\[dq] -disk_size=\[dq]\[dq] -display=\[dq]\[dq] -extra_args=\[dq]\[dq] -fixed_iso=\[dq]\[dq] -floppy=\[dq]\[dq] -guest_os=\[dq]linux\[dq] -img=\[dq]\[dq] -iso=\[dq]\[dq] -macaddr=\[dq]\[dq] -macos_release=\[dq]\[dq] -network=\[dq]\[dq] +boot=\(dqefi\(dq +cpu_cores=\(dq\(dq +disk_img=\(dq\(dq +disk_size=\(dq\(dq +display=\(dq\(dq +extra_args=\(dq\(dq +fixed_iso=\(dq\(dq +floppy=\(dq\(dq +guest_os=\(dqlinux\(dq +img=\(dq\(dq +iso=\(dq\(dq +macaddr=\(dq\(dq +macos_release=\(dq\(dq +network=\(dq\(dq port_forwards=() -preallocation=\[dq]off\[dq] -ram=\[dq]\[dq] -secureboot=\[dq]off\[dq] -tpm=\[dq]off\[dq] +preallocation=\(dqoff\(dq +ram=\(dq\(dq +secureboot=\(dqoff\(dq +tpm=\(dqoff\(dq usb_devices=() -viewer=\[dq]spicy\[dq] -ssh_port=\[dq]\[dq] -spice_port=\[dq]\[dq] -public_dir=\[dq]\[dq] -monitor=\[dq]socket\[dq] -monitor_telnet_port=\[dq]4440\[dq] -monitor_telnet_host=\[dq]localhost\[dq] -monitor_cmd=\[dq]\[dq] -serial=\[dq]socket\[dq] -serial_telnet_port=\[dq]6660\[dq] -serial_telnet_host=\[dq]localhost\[dq] +viewer=\(dqspicy\(dq +ssh_port=\(dq\(dq +spice_port=\(dq\(dq +public_dir=\(dq\(dq +monitor=\(dqsocket\(dq +monitor_telnet_port=\(dq4440\(dq +monitor_telnet_host=\(dqlocalhost\(dq +monitor_cmd=\(dq\(dq +serial=\(dqsocket\(dq +serial_telnet_port=\(dq6660\(dq +serial_telnet_host=\(dqlocalhost\(dq # options: ehci(USB2.0), xhci(USB3.0) -usb_controller=\[dq]ehci\[dq] +usb_controller=\(dqehci\(dq # options: ps2, usb, virtio -keyboard=\[dq]usb\[dq] -keyboard_layout=\[dq]en\-us\[dq] +keyboard=\(dqusb\(dq +keyboard_layout=\(dqen\-us\(dq # options: ps2, usb, tablet, virtio -mouse=\[dq]tablet\[dq] +mouse=\(dqtablet\(dq .EE .SH EXAMPLES .IP .EX -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] +guest_os=\(dqlinux\(dq +disk_img=\(dqdebian\-bullseye/disk.qcow2\(dq +iso=\(dqdebian\-bullseye/firmware\-11.0.0\-amd64\-DVD\-1.iso\(dq .EE .PP The default macOS configuration looks like this: .IP .EX -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] +guest_os=\(dqmacos\(dq +img=\(dqmacos\-catalina/RecoveryImage.img\(dq +disk_img=\(dqmacos\-catalina/disk.qcow2\(dq +macos_release=\(dqcatalina\(dq .EE -.IP \[bu] 2 -\f[CR]guest_os=\[dq]macos\[dq]\f[R] instructs Quickemu to optimise for +.IP \(bu 2 +\f[CR]guest_os=\(dqmacos\(dq\f[R] instructs Quickemu to optimise for macOS. -.IP \[bu] 2 -\f[CR]macos_release=\[dq]catalina\[dq]\f[R] instructs Quickemu to -optimise for a particular macOS release. +.IP \(bu 2 +\f[CR]macos_release=\(dqcatalina\(dq\f[R] instructs Quickemu to optimise +for a particular macOS release. .RS 2 -.IP \[bu] 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 +.IP \(bu 2 And VirtIO Block Media (disks) are supported/stable in Catalina and newer. .RE @@ -88,28 +88,28 @@ newer. The default Windows 11 configuration looks like this: .IP .EX -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] -secureboot=\[dq]on\[dq] +guest_os=\(dqwindows\(dq +disk_img=\(dqwindows\-11/disk.qcow2\(dq +iso=\(dqwindows\-11/Win11_EnglishInternational_x64.iso\(dq +fixed_iso=\(dqwindows\-11/virtio\-win.iso\(dq +tpm=\(dqon\(dq +secureboot=\(dqon\(dq .EE -.IP \[bu] 2 -\f[CR]guest_os=\[dq]windows\[dq]\f[R] instructs \f[CR]quickemu\f[R] to +.IP \(bu 2 +\f[CR]guest_os=\(dqwindows\(dq\f[R] instructs \f[CR]quickemu\f[R] to optimise for Windows. -.IP \[bu] 2 +.IP \(bu 2 \f[CR]fixed_iso=\f[R] specifies the ISO image that provides VirtIO drivers. -.IP \[bu] 2 -\f[CR]tpm=\[dq]on\[dq]\f[R] instructs \f[CR]quickemu\f[R] to create a +.IP \(bu 2 +\f[CR]tpm=\(dqon\(dq\f[R] instructs \f[CR]quickemu\f[R] to create a software emulated TPM device using \f[CR]swtpm\f[R]. .SS BIOS and EFI Since Quickemu 2.1.0 \f[CR]efi\f[R] is the default boot option. If you want to override this behaviour then add the following line to you VM configuration to enable legacy BIOS. -.IP \[bu] 2 -\f[CR]boot=\[dq]legacy\[dq]\f[R] \- Enable Legacy BIOS boot +.IP \(bu 2 +\f[CR]boot=\(dqlegacy\(dq\f[R] \- Enable Legacy BIOS boot .SS Tuning CPU cores, RAM & disks By default, Quickemu will calculate the number of CPUs cores and RAM to allocate to a VM based on the specifications of your host computer. @@ -117,15 +117,15 @@ You can override this default behaviour and tune the VM configuration to your liking. .PP Add additional lines to your virtual machine configuration: -.IP \[bu] 2 -\f[CR]cpu_cores=\[dq]4\[dq]\f[R] \- Specify the number of CPU cores +.IP \(bu 2 +\f[CR]cpu_cores=\(dq4\(dq\f[R] \- Specify the number of CPU cores allocated to the VM -.IP \[bu] 2 -\f[CR]ram=\[dq]4G\[dq]\f[R] \- Specify the amount of RAM to allocate to +.IP \(bu 2 +\f[CR]ram=\(dq4G\(dq\f[R] \- Specify the amount of RAM to allocate to the VM -.IP \[bu] 2 -\f[CR]disk_size=\[dq]16G\[dq]\f[R] \- Specify the size of the virtual -disk allocated to the VM +.IP \(bu 2 +\f[CR]disk_size=\(dq16G\(dq\f[R] \- Specify the size of the virtual disk +allocated to the VM .SS Disk preallocation Preallocation mode (allowed values: \f[CR]off\f[R] (default), \f[CR]metadata\f[R], \f[CR]falloc\f[R], \f[CR]full\f[R]). @@ -135,24 +135,24 @@ performance when the image needs to grow. Specify what disk preallocation should be used, if any, when creating the system disk image by adding a line like this to your VM configuration. -.IP \[bu] 2 -\f[CR]preallocation=\[dq]metadata\[dq]\f[R] +.IP \(bu 2 +\f[CR]preallocation=\(dqmetadata\(dq\f[R] .SS CD\-ROM disks If you want to expose an ISO image from the host to guest add the following line to the VM configuration: -.IP \[bu] 2 -\f[CR]fixed_iso=\[dq]/path/to/image.iso\[dq]\f[R] +.IP \(bu 2 +\f[CR]fixed_iso=\(dq/path/to/image.iso\(dq\f[R] .SS Floppy disks -If you\[aq]re like \c +If you\(aqre like \c .UR https://popey.com Alan Pope .UE \c -\ you\[aq]ll probably want to mount a floppy disk image in the guest. +\ you\(aqll probably want to mount a floppy disk image in the guest. To do so add the following line to the VM configuration: -.IP \[bu] 2 -\f[CR]floppy=\[dq]/path/to/floppy.img\[dq]\f[R] +.IP \(bu 2 +\f[CR]floppy=\(dq/path/to/floppy.img\(dq\f[R] .SS File Sharing -All File Sharing options will only expose \f[CR]\[ti]/Public\f[R] (or +All File Sharing options will only expose \f[CR]\(ti/Public\f[R] (or localised variations) for the current user to the guest VMs. .SS Samba 🐧 🍏 🪟 If \f[CR]smbd\f[R] is available on the host, Quickemu will automatically @@ -173,33 +173,33 @@ For example: \- smbd: On guest: smb://10.0.2.4/qemu .EE .PP -If using a Windows guest, right\-click on \[dq]This PC\[dq], click -\[dq]Add a network location\[dq], and paste this address, removing -\f[CR]smb:\f[R] and replacing forward slashes with backslashes (in this -example \f[CR]\[rs]\[rs]10.0.2.4\[rs]qemu\f[R]). +If using a Windows guest, right\-click on \(dqThis PC\(dq, click \(dqAdd +a network location\(dq, and paste this address, removing \f[CR]smb:\f[R] +and replacing forward slashes with backslashes (in this example +\f[CR]\(rs\(rs10.0.2.4\(rsqemu\f[R]). .SS SPICE WebDAV 🐧 🪟 -.IP \[bu] 2 +.IP \(bu 2 TBD .SS VirtIO\-9P 🐧 🍏 -.IP \[bu] 2 +.IP \(bu 2 TBD .SS Networking .SS Port forwarding Add an additional line to your virtual machine configuration. For example: -.IP \[bu] 2 -\f[CR]port_forwards=(\[dq]8123:8123\[dq] \[dq]8888:80\[dq])\f[R] +.IP \(bu 2 +\f[CR]port_forwards=(\(dq8123:8123\(dq \(dq8888:80\(dq)\f[R] .PP In the example above: -.IP \[bu] 2 +.IP \(bu 2 Port 8123 on the host is forwarded to port 8123 on the guest. -.IP \[bu] 2 +.IP \(bu 2 Port 8888 on the host is forwarded to port 80 on the guest. .SS Disable networking To completely disable all network interfaces in a guest VM add this additional line to your virtual machine configuration: -.IP \[bu] 2 -\f[CR]network=\[dq]none\[dq]\f[R] +.IP \(bu 2 +\f[CR]network=\(dqnone\(dq\f[R] .SS Restricted networking You can isolate the guest from the host (and broader network) using the restrict option, which will restrict networking to just the guest and @@ -208,13 +208,13 @@ any virtual devices. This can be used to prevent software running inside the guest from phoning home while still providing a network inside the guest. Add this additional line to your virtual machine configuration: -.IP \[bu] 2 -\f[CR]network=\[dq]restrict\[dq]\f[R] +.IP \(bu 2 +\f[CR]network=\(dqrestrict\(dq\f[R] .SS Bridged networking Connect your virtual machine to a preconfigured network bridge. Add an additional line to your virtual machine configuration: -.IP \[bu] 2 -\f[CR]network=\[dq]br0\[dq]\f[R] +.IP \(bu 2 +\f[CR]network=\(dqbr0\(dq\f[R] .PP If you want to have a persistent MAC address for your bridged network interface in the guest VM you can add \f[CR]macaddr\f[R] to the virtual @@ -223,8 +223,8 @@ QEMU requires that the MAC address is in the range: \f[B]52:54:00:AB:00:00 \- 52:54:00:AB:FF:FF\f[R] .PP So you can generate your own MAC addresses with: -.IP \[bu] 2 -\f[CR]macaddr=\[dq]52:54:00:AB:51:AE\[dq]\f[R] +.IP \(bu 2 +\f[CR]macaddr=\(dq52:54:00:AB:51:AE\(dq\f[R] .SS USB redirection Quickemu supports USB redirection via SPICE pass\-through and host pass\-through. @@ -237,7 +237,7 @@ stopped. Therefore, do not redirect the input devices, such as the keyboard and mouse, as it will be difficult (or impossible) to revert the situation. .SS SPICE redirection (recommended) -Using SPICE for USB pass\-through is easiest as it doesn\[aq]t require +Using SPICE for USB pass\-through is easiest as it doesn\(aqt require any elevated permission: .PP Both \f[CR]spicy\f[R] from \c @@ -250,23 +250,23 @@ spice\-gtk virt\-viewer .UE \c \ (\f[I]File \-> USB device selection\f[R]) support this feature. -.IP \[bu] 2 +.IP \(bu 2 Start Quickemu with \f[CR]\-\-display spice\f[R] and then -.IP \[bu] 2 +.IP \(bu 2 Select \f[CR]Input\f[R] \-> \f[CR]Select USB Device for redirection\f[R] from the menu to choose which device(s) you want to attach to the guest. -.IP \[bu] 2 +.IP \(bu 2 **\f[CR]spicy\f[R] (default) .RS 2 -.IP \[bu] 2 +.IP \(bu 2 **Select \f[CR]Input\f[R] \-> \f[CR]Select USB Device for redirection\f[R] from the menu to choose which device(s) you want to attach to the guest. .RE -.IP \[bu] 2 +.IP \(bu 2 **\f[CR]remote\-viewer\f[R] .RS 2 -.IP \[bu] 2 +.IP \(bu 2 **Select \f[CR]File\f[R] \-> \f[CR]USB device selection\f[R] from the menu to choose which device(s) you want to attach to the guest. .RE @@ -296,14 +296,14 @@ Using SPICE is preferred, see above. .PP Add an additional line to your virtual machine configuration. For example: -.IP \[bu] 2 -\f[CR]usb_devices=(\[dq]046d:082d\[dq] \[dq]046d:085e\[dq])\f[R] +.IP \(bu 2 +\f[CR]usb_devices=(\(dq046d:082d\(dq \(dq046d:085e\(dq)\f[R] .PP In the example above: -.IP \[bu] 2 +.IP \(bu 2 The USB device with vendor_id 046d and product_id 082d will be exposed to the guest. -.IP \[bu] 2 +.IP \(bu 2 The USB device with vendor_id 046d and product_id 085e will be exposed to the guest. .PP @@ -320,7 +320,7 @@ like this: .SS TPM Since Quickemu 2.2.0 a software emulated TPM device can be added to guest virtual machines. -Just add \f[CR]tpm=\[dq]on\[dq]\f[R] to your VM configuration. +Just add \f[CR]tpm=\(dqon\(dq\f[R] to your VM configuration. \f[CR]quickget\f[R] will automatically add this line to Windows 11 virtual machines. .SH AUTHORS diff --git a/docs/quickemu_conf.5.md b/docs/quickemu_conf.5.md index 9999341..4cde8d4 100644 --- a/docs/quickemu_conf.5.md +++ b/docs/quickemu_conf.5.md @@ -1,6 +1,6 @@ --- author: Martin Wimpress -date: December 30, 2024 +date: July 31, 2025 footer: quickemu_conf header: Quickemu Configuration Manual section: 5 diff --git a/docs/quickget.1 b/docs/quickget.1 index a43e825..9ab0384 100644 --- a/docs/quickget.1 +++ b/docs/quickget.1 @@ -1,6 +1,6 @@ -.\" Automatically generated by Pandoc 3.6.1 +.\" Automatically generated by Pandoc 3.7.0.2 .\" -.TH "QUICKGET" "1" "December 30, 2024" "quickget" "Quickget User Manual" +.TH "QUICKGET" "1" "July 31, 2025" "quickget" "Quickget User Manual" .SH NAME quickget \- download and prepare materials for building a quickemu VM .SH SYNOPSIS @@ -59,23 +59,23 @@ create the virtual machine configuration. quickget ubuntu 22.04 quickemu \-\-vm ubuntu\-22.04.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as normal. -.IP \[bu] 2 +.IP \(bu 2 Post\-install: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE agent (\f[CR]spice\-vdagent\f[R]) in the guest to enable copy/paste and USB redirection .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]sudo apt install spice\-vdagent\f[R] .RE -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE WebDAV agent (\f[CR]spice\-webdavd\f[R]) in the guest to enable file sharing. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 \f[CR]sudo apt install spice\-webdavd\f[R] .RE .RE @@ -100,29 +100,29 @@ The project \c wiki .UE \c \ may have further information. -.IP \[bu] 2 +.IP \(bu 2 \f[CR]edubuntu\f[R] (Edubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kubuntu\f[R] (Kubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]lubuntu\f[R] (Lubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-budgie\f[R] (Ubuntu Budgie) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntucinnamon\f[R] (Ubuntu Cinnamon) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntukylin\f[R] (Ubuntu Kylin) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-mate\f[R] (Ubuntu MATE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-server\f[R] (Ubuntu Server) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntustudio\f[R] (Ubuntu Studio) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\f[R] (Ubuntu) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ubuntu\-unity\f[R] (Ubuntu Unity) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]xubuntu\f[R] (Xubuntu) .PP You can also use \f[CR]quickget\f[R] with advanced options : @@ -165,173 +165,171 @@ wiki .UE \c .SS Other Operating Systems \f[CR]quickget\f[R] also supports: -.IP \[bu] 2 +.IP \(bu 2 \f[CR]alma\f[R] (AlmaLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]alpine\f[R] (Alpine Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]android\f[R] (Android x86) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]antix\f[R] (Antix) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]archcraft\f[R] (Archcraft) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]archlinux\f[R] (Arch Linux) -.IP \[bu] 2 -\f[CR]arcolinux\f[R] (Arco Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]artixlinux\f[R] (Artix Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]athenaos\f[R] (Athena OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]batocera\f[R] (Batocera) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bazzite\f[R] (Bazzite) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]biglinux\f[R] (BigLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]blendos\f[R] (BlendOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bodhi\f[R] (Bodhi) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]bunsenlabs\f[R] (BunsenLabs) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]cachyos\f[R] (CachyOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]centos\-stream\f[R] (CentOS Stream) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]chimeralinux\f[R] (Chimera Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]crunchbang++\f[R] (Crunchbangplusplus) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]debian\f[R] (Debian) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]deepin\f[R] (Deepin) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]devuan\f[R] (Devuan) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]dragonflybsd\f[R] (DragonFlyBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]easyos\f[R] (EasyOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]elementary\f[R] (elementary OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]endeavouros\f[R] (EndeavourOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]endless\f[R] (Endless OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]fedora\f[R] (Fedora) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]freebsd\f[R] (FreeBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]freedos\f[R] (FreeDOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]garuda\f[R] (Garuda Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]gentoo\f[R] (Gentoo) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]ghostbsd\f[R] (GhostBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]gnomeos\f[R] (GNOME OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]guix\f[R] (Guix) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]haiku\f[R] (Haiku) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]holoiso\f[R] (HoloISO) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kali\f[R] (Kali) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kdeneon\f[R] (KDE Neon) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]kolibrios\f[R] (KolibriOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]linuxlite\f[R] (Linux Lite) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]linuxmint\f[R] (Linux Mint) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]lmde\f[R] (Linux Mint Debian Edition) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]maboxlinux\f[R] (Mabox Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]mageia\f[R] (Mageia) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]manjaro\f[R] (Manjaro) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]mxlinux\f[R] (MX Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]netboot\f[R] (netboot.xyz) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]netbsd\f[R] (NetBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nitrux\f[R] (Nitrux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nixos\f[R] (NixOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]nwg\-shell\f[R] (nwg\-shell) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]openbsd\f[R] (OpenBSD) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]openindiana\f[R] (OpenIndiana) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]opensuse\f[R] (openSUSE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]oraclelinux\f[R] (Oracle Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]parrotsec\f[R] (Parrot Security) -.IP \[bu] 2 +.IP \(bu 2 +\f[CR]pclinuxos\f[R] (PCLinuxOS) +.IP \(bu 2 \f[CR]peppermint\f[R] (PeppermintOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]popos\f[R] (Pop!_OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]porteus\f[R] (Porteus) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]primtux\f[R] (PrimTux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]proxmox\-ve\f[R] (Proxmox VE) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]pureos\f[R] (PureOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]reactos\f[R] (ReactOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]rebornos\f[R] (RebornOS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]rockylinux\f[R] (Rocky Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]siduction\f[R] (Siduction) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slackware\f[R] (Slackware) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slax\f[R] (Slax) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slint\f[R] (Slint) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]slitaz\f[R] (SliTaz) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]solus\f[R] (Solus) -.IP \[bu] 2 -\f[CR]sparkylinux\f[R] (SparkyLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]spirallinux\f[R] (SpiralLinux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tails\f[R] (Tails) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tinycore\f[R] (Tiny Core Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]trisquel\f[R] (Trisquel\-) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]truenas\-core\f[R] (TrueNAS Core) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]truenas\-scale\f[R] (TrueNAS Scale) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]tuxedo\-os\f[R] (Tuxedo OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]vanillaos\f[R] (Vanilla OS) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]void\f[R] (Void Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]vxlinux\f[R] (VX Linux) -.IP \[bu] 2 +.IP \(bu 2 \f[CR]zorin\f[R] (Zorin OS) .SS \c .UR https://github.com/quickemu-project/quickemu/wiki/02-Create-Linux-virtual-machines#manually-create-linux-guests @@ -339,32 +337,32 @@ Custom Linux guests .UE \c Or you can download a Linux image and manually create a VM configuration. -.IP \[bu] 2 +.IP \(bu 2 Download a .iso image of a Linux distribution -.IP \[bu] 2 +.IP \(bu 2 Create a VM configuration file; for example \f[CR]debian\-bullseye.conf\f[R] .IP .EX -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] +guest_os=\(dqlinux\(dq +disk_img=\(dqdebian\-bullseye/disk.qcow2\(dq +iso=\(dqdebian\-bullseye/firmware\-11.0.0\-amd64\-DVD\-1.iso\(dq .EE -.IP \[bu] 2 +.IP \(bu 2 Use \f[CR]quickemu\f[R] to start the virtual machine: .IP .EX quickemu \-\-vm debian\-bullseye.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as normal. -.IP \[bu] 2 +.IP \(bu 2 Post\-install: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE agent (\f[CR]spice\-vdagent\f[R]) in the guest to enable copy/paste and USB redirection. -.IP \[bu] 2 +.IP \(bu 2 Install the SPICE WebDAV agent (\f[CR]spice\-webdavd\f[R]) in the guest to enable file sharing. .RE @@ -396,54 +394,54 @@ quickemu \-\-vm macos\-big\-sur.conf macOS \f[CR]mojave\f[R], \f[CR]catalina\f[R], \f[CR]big\-sur\f[R], \f[CR]monterey\f[R], \f[CR]ventura\f[R] and \f[CR]sonoma\f[R] are supported. -.IP \[bu] 2 +.IP \(bu 2 Use cursor keys and enter key to select the \f[B]macOS Base System\f[R] -.IP \[bu] 2 +.IP \(bu 2 From \f[B]macOS Utilities\f[R] .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Disk Utility\f[R] and \f[B]Continue\f[R] .RS 2 -.IP \[bu] 2 -Select \f[CR]QEMU HARDDISK Media\f[R] (\[ti]103.08GB) from the list (on +.IP \(bu 2 +Select \f[CR]QEMU HARDDISK Media\f[R] (\(ti103.08GB) from the list (on Big Sur and above use \f[CR]Apple Inc. VirtIO Block Device\f[R]) and click \f[B]Erase\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Enter a \f[CR]Name:\f[R] for the disk -.IP \[bu] 2 +.IP \(bu 2 If you are installing macOS Mojave or later (Catalina, Big Sur, Monterey, Ventura and Sonoma), choose any of the APFS options as the filesystem. MacOS Extended may not work. .RE -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Erase\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Done\f[R]. -.IP \[bu] 2 +.IP \(bu 2 Close Disk Utility .RE -.IP \[bu] 2 +.IP \(bu 2 From \f[B]macOS Utilities\f[R] .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Click \f[B]Reinstall macOS\f[R] and \f[B]Continue\f[R] .RE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as you normally would. .RS 2 -.IP \[bu] 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 +.IP \(bu 2 On the subsequent reboots use cursor keys and enter key to select the disk you named .RE -.IP \[bu] 2 +.IP \(bu 2 Once you have finished installing macOS you will be presented with an the out\-of\-the\-box first\-start wizard to configure various options and set up your username and password -.IP \[bu] 2 +.IP \(bu 2 OPTIONAL: After you have concluded the out\-of\-the\-box wizard, you may want to enable the TRIM feature that the computer industry created for SSD disks. @@ -453,7 +451,7 @@ Virtual Machine. Without this step your macOS disk image will only ever get larger and will not shrink even when you delete lots of data inside macOS. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 To enable TRIM, open the Terminal application and type the following command followed by pressing enter to tell macos to use the TRIM command on the hard disk when files are deleted: @@ -463,21 +461,21 @@ on the hard disk when files are deleted: sudo trimforce enable .EE .PP -You will be prompted to enter your account\[aq]s password to gain the +You will be prompted to enter your account\(aqs password to gain the privilege needed. -Once you\[aq]ve entered your password and pressed enter the command will +Once you\(aqve entered your password and pressed enter the command will request confirmation in the form of two questions that require you to -type y (for a \[dq]yes\[dq] response) followed by enter to confirm. +type y (for a \(dqyes\(dq response) followed by enter to confirm. .PP If you press enter without first typing y the system will consider that -a negative response as though you said \[dq]no\[dq]: +a negative response as though you said \(dqno\(dq: .IP .EX -IMPORTANT NOTICE: This tool force\-enables TRIM for all relevant attached devices, even though such devices may not have been validated for data integrity while using TRIM. Use of this tool to enable TRIM may result in unintended data loss or data corruption. It should not be used in a commercial operating environment or with important data. Before using this tool, you should back up all of your data and regularly back up data while TRIM is enabled. This tool is provided on an \[dq]as is\[dq] basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON\-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THIS TOOL OR ITS USE ALONE OR IN COMBINATION WITH YOUR DEVICES, SYSTEMS, OR SERVICES. BY USING THIS TOOL TO ENABLE TRIM, YOU AGREE THAT, TO THE EXTENT PERMITTED BY APPLICABLE LAW, USE OF THE TOOL IS AT YOUR SOLE RISK AND THAT THE ENTIRE RISK AS TO SATISFACTORY QUALITY, PERFORMANCE, ACCURACY AND EFFORT IS WITH YOU. +IMPORTANT NOTICE: This tool force\-enables TRIM for all relevant attached devices, even though such devices may not have been validated for data integrity while using TRIM. Use of this tool to enable TRIM may result in unintended data loss or data corruption. It should not be used in a commercial operating environment or with important data. Before using this tool, you should back up all of your data and regularly back up data while TRIM is enabled. This tool is provided on an \(dqas is\(dq basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON\-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THIS TOOL OR ITS USE ALONE OR IN COMBINATION WITH YOUR DEVICES, SYSTEMS, OR SERVICES. BY USING THIS TOOL TO ENABLE TRIM, YOU AGREE THAT, TO THE EXTENT PERMITTED BY APPLICABLE LAW, USE OF THE TOOL IS AT YOUR SOLE RISK AND THAT THE ENTIRE RISK AS TO SATISFACTORY QUALITY, PERFORMANCE, ACCURACY AND EFFORT IS WITH YOU. Are you sure you with to proceed (y/N)? .EE .PP -And a second confirmation once you\[aq]ve confirmed the previous one: +And a second confirmation once you\(aqve confirmed the previous one: .IP .EX Your system will immediately reboot when this is complete. @@ -490,44 +488,44 @@ soon as the command completes. The default macOS configuration looks like this: .IP .EX -guest_os=\[dq]macos\[dq] -img=\[dq]macos\- big\-sur/RecoveryImage.img\[dq] -disk_img=\[dq]macos\- big\-sur/disk.qcow2\[dq] -macos_release=\[dq] big\-sur\[dq] +guest_os=\(dqmacos\(dq +img=\(dqmacos\- big\-sur/RecoveryImage.img\(dq +disk_img=\(dqmacos\- big\-sur/disk.qcow2\(dq +macos_release=\(dq big\-sur\(dq .EE -.IP \[bu] 2 -\f[CR]guest_os=\[dq]macos\[dq]\f[R] instructs Quickemu to optimise for +.IP \(bu 2 +\f[CR]guest_os=\(dqmacos\(dq\f[R] instructs Quickemu to optimise for macOS. -.IP \[bu] 2 -\f[CR]macos_release=\[dq] big\-sur\[dq]\f[R] instructs Quickemu to +.IP \(bu 2 +\f[CR]macos_release=\(dq big\-sur\(dq\f[R] instructs Quickemu to optimise for a particular macOS release. .RS 2 -.IP \[bu] 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 +.IP \(bu 2 And VirtIO Block Media (disks) are supported/stable in Catalina and newer. .RE .SH macOS compatibility There are some considerations when running macOS via Quickemu. -.IP \[bu] 2 +.IP \(bu 2 Supported macOS releases: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Mojave -.IP \[bu] 2 +.IP \(bu 2 Catalina -.IP \[bu] 2 +.IP \(bu 2 Big Sur -.IP \[bu] 2 +.IP \(bu 2 Monterey -.IP \[bu] 2 +.IP \(bu 2 Ventura -.IP \[bu] 2 +.IP \(bu 2 Sonoma .RE -.IP \[bu] 2 +.IP \(bu 2 \f[CR]quickemu\f[R] will automatically download the required \c .UR https://github.com/acidanthera/OpenCorePkg OpenCore @@ -537,49 +535,49 @@ OpenCore OSX\-KVM .UE \c \&. -.IP \[bu] 2 +.IP \(bu 2 Optimised by default, but no GPU acceleration is available. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Host CPU vendor is detected and guest CPU is optimised accordingly. -.IP \[bu] 2 +.IP \(bu 2 \c .UR https://www.kraxel.org/blog/2019/06/macos-qemu-guest/ VirtIO Block Media .UE \c \ is used for the system disk where supported. -.IP \[bu] 2 +.IP \(bu 2 \c .UR http://philjordan.eu/osx-virt/ VirtIO \f[CR]usb\-tablet\f[R] .UE \c \ is used for the mouse. -.IP \[bu] 2 +.IP \(bu 2 VirtIO Network (\f[CR]virtio\-net\f[R]) is supported and enabled on macOS Big Sur and newer, but earlier releases use \f[CR]vmxnet3\f[R]. -.IP \[bu] 2 +.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 +.IP \(bu 2 USB host and SPICE pass\-through is: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 UHCI (USB 2.0) on macOS Catalina and earlier. -.IP \[bu] 2 +.IP \(bu 2 XHCI (USB 3.0) on macOS Big Sur and newer. .RE -.IP \[bu] 2 +.IP \(bu 2 Display resolution can be changed via \f[CR]quickemu\f[R] using \f[CR]\-\-width\f[R] and \f[CR]\-\-height\f[R] command line arguments. -.IP \[bu] 2 +.IP \(bu 2 \f[B]Full Duplex audio requires \c .UR https://github.com/chris1111/VoodooHDA-OC VoodooHDA OC .UE \c \ or pass\-through a USB audio\-device to the macOS guest VM\f[R]. .RS 2 -.IP \[bu] 2 +.IP \(bu 2 NOTE! \c .UR https://disable-gatekeeper.github.io/ @@ -591,7 +589,7 @@ System Integrity Protection (SIP) .UE \c \ need to be disabled to install VoodooHDA OC .RE -.IP \[bu] 2 +.IP \(bu 2 File sharing between guest and host is available via \c .UR https://wiki.qemu.org/Documentation/9psetup virtio\-9p @@ -601,12 +599,12 @@ virtio\-9p SPICE webdavd .UE \c \&. -.IP \[bu] 2 +.IP \(bu 2 Copy/paste via SPICE agent is \f[B]not available on macOS\f[R]. .SH macOS App Store -If you see \f[I]\[dq]Your device or computer could not be -verified\[dq]\f[R] when you try to login to the App Store, make sure -that your wired ethernet device is \f[CR]en0\f[R]. +If you see \f[I]\(dqYour device or computer could not be +verified\(dq\f[R] when you try to login to the App Store, make sure that +your wired ethernet device is \f[CR]en0\f[R]. Use \f[CR]ifconfig\f[R] in a terminal to verify this. .PP If the wired ethernet device is not \f[CR]en0\f[R], then then go to @@ -646,7 +644,7 @@ VirtIO drivers for Windows .UE \c \&. .PP -\f[B]Windows 8.1\f[R] is also supported but doesn\[aq]t feature any +\f[B]Windows 8.1\f[R] is also supported but doesn\(aqt feature any automated installation or driver optimisation. .PP \f[CR]quickget\f[R] can also download \c @@ -676,17 +674,17 @@ No automated installation is supported for these releases. quickget windows 11 quickemu \-\-vm windows\-11.conf .EE -.IP \[bu] 2 +.IP \(bu 2 Complete the installation as you normally would. -.IP \[bu] 2 +.IP \(bu 2 All relevant drivers and services should be installed automatically. -.IP \[bu] 2 +.IP \(bu 2 A local administrator user account is automatically created, with these credentials: .RS 2 -.IP \[bu] 2 +.IP \(bu 2 Username: \f[CR]Quickemu\f[R] -.IP \[bu] 2 +.IP \(bu 2 Password: \f[CR]quickemu\f[R] .RE .PP diff --git a/docs/quickget.1.md b/docs/quickget.1.md index 745c6bb..657f627 100644 --- a/docs/quickget.1.md +++ b/docs/quickget.1.md @@ -1,6 +1,6 @@ --- author: Martin Wimpress -date: December 30, 2024 +date: July 31, 2025 footer: quickget header: Quickget User Manual section: 1 @@ -166,7 +166,6 @@ Further information is available from the project - `antix` (Antix) - `archcraft` (Archcraft) - `archlinux` (Arch Linux) -- `arcolinux` (Arco Linux) - `artixlinux` (Artix Linux) - `athenaos` (Athena OS) - `batocera` (Batocera) @@ -217,6 +216,7 @@ Further information is available from the project - `opensuse` (openSUSE) - `oraclelinux` (Oracle Linux) - `parrotsec` (Parrot Security) +- `pclinuxos` (PCLinuxOS) - `peppermint` (PeppermintOS) - `popos` (Pop!\_OS) - `porteus` (Porteus) @@ -232,7 +232,6 @@ Further information is available from the project - `slint` (Slint) - `slitaz` (SliTaz) - `solus` (Solus) -- `sparkylinux` (SparkyLinux) - `spirallinux` (SpiralLinux) - `tails` (Tails) - `tinycore` (Tiny Core Linux)