@ -31,13 +31,17 @@ Windows**.
- **macOS** Monterey, Big Sur, Catalina, Mojave & High Sierra
- **macOS** Monterey, Big Sur, Catalina, Mojave & High Sierra
- **Windows** 8.1, 10 and 11 including TPM 2.0
- **Windows** 8.1, 10 and 11 including TPM 2.0
- [Ubuntu ](https://ubuntu.com/desktop ) and all the ** [official Ubuntu flavours ](https://ubuntu.com/download/flavours )**
- [Ubuntu ](https://ubuntu.com/desktop ) and all the ** [official Ubuntu
flavours](https://ubuntu.com/download/flavours)**
- **Over 360 operating system editions are supported!**
- **Over 360 operating system editions are supported!**
- Full SPICE support including host/guest clipboard sharing
- Full SPICE support including host/guest clipboard sharing
- VirtIO-webdavd file sharing for Linux and Windows guests
- VirtIO-webdavd file sharing for Linux and Windows guests
- VirtIO-9p file sharing for Linux and macOS guests
- VirtIO-9p file sharing for Linux and macOS guests
- [QEMU Guest Agent support ](https://wiki.qemu.org/Features/GuestAgent ); provides access to a system-level agent via standard QMP commands
- [QEMU Guest Agent
- Samba file sharing for Linux, macOS and Windows guests (*if `smbd` is installed on the host*)
support](https://wiki.qemu.org/Features/GuestAgent); provides access
to a system-level agent via standard QMP commands
- Samba file sharing for Linux, macOS and Windows guests (*if `smbd`
is installed on the host*)
- VirGL acceleration
- VirGL acceleration
- USB device pass-through
- USB device pass-through
- Smartcard pass-through
- Smartcard pass-through
@ -63,7 +67,8 @@ QEMU](https://img.youtube.com/vi/AOTYWEgw0hI/0.jpg)](https://www.youtube.com/wat
## Requirements
## Requirements
- [QEMU ](https://www.qemu.org/ ) (*6.0.0 or newer*) **with GTK, SDL, SPICE & VirtFS support**
- [QEMU ](https://www.qemu.org/ ) (*6.0.0 or newer*) **with GTK, SDL,
SPICE & VirtFS support**
- [bash ](https://www.gnu.org/software/bash/ ) (*4.0 or newer*)
- [bash ](https://www.gnu.org/software/bash/ ) (*4.0 or newer*)
- [Coreutils ](https://www.gnu.org/software/coreutils/ )
- [Coreutils ](https://www.gnu.org/software/coreutils/ )
- [EDK II ](https://github.com/tianocore/edk2 )
- [EDK II ](https://github.com/tianocore/edk2 )
@ -265,9 +270,10 @@ with your preferred flavour.
- `opensuse` (openSUSE)
- `opensuse` (openSUSE)
- `oraclelinux` (Oracle Linux)
- `oraclelinux` (Oracle Linux)
- `popos` (Pop!\_OS)
- `popos` (Pop!\_OS)
- `reactos` (ReactOS)
- `regolith` (Regolith Linux)
- `regolith` (Regolith Linux)
- `rockylinux` (Rocky Linux)
- `rockylinux` (Rocky Linux)
- `slackware` (Slackware Linux )
- `slackware` (Slackware)
- `solus` (Solus)
- `solus` (Solus)
- `tails` (Tails)
- `tails` (Tails)
- `void` (Void Linux)
- `void` (Void Linux)
@ -377,8 +383,13 @@ There are some considerations when running macOS via Quickemu.
- UHCI (USB 2.0) on macOS Catalina and earlier.
- UHCI (USB 2.0) on macOS Catalina and earlier.
- XHCI (USB 3.0) on macOS Big Sur and newer.
- XHCI (USB 3.0) on macOS Big Sur and newer.
- Display resolution can only be changed via macOS System Preferences.
- Display resolution can only be changed via macOS System Preferences.
- **Full Duplex audio requires [VoodooHDA OC](https://github.com/chris1111/VoodooHDA-OC) or pass-through a USB audio-device to the macOS guest VM** .
- **Full Duplex audio requires [VoodooHDA
- 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
OC](https://github.com/chris1111/VoodooHDA-OC) or pass-through a USB
audio-device to the macOS guest VM**.
- 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
- File sharing between guest and host is available via
- File sharing between guest and host is available via
[virtio-9p ](https://wiki.qemu.org/Documentation/9psetup ) and [SPICE
[virtio-9p ](https://wiki.qemu.org/Documentation/9psetup ) and [SPICE
webdavd](https://gitlab.gnome.org/GNOME/phodav/-/merge_requests/24).
webdavd](https://gitlab.gnome.org/GNOME/phodav/-/merge_requests/24).
@ -386,15 +397,15 @@ There are some considerations when running macOS via Quickemu.
### macOS App Store
### macOS App Store
If you see *"Your device or computer could not be verified"* when you try to
If you see *"Your device or computer could not be verified"* when you
login to the App Store, make sure that your wired ethernet device is `en0` . Us e
try to login to the App Store, make sure that your wired ethernet device
`ifconfig` in a terminal to verify this.
is `en0` . Use `ifconfig` in a terminal to verify this.
If the wired ethernet device is not `en0` , then then go to *System Preferences* -> *Network* ,
If the wired ethernet device is not `en0` , then then go to *System
delete all the network devices and apply the changes. Next, open a terminal and
Preferences* -\> *Network* , delete all the network devices and apply the
run the following:
changes. Next, open a terminal and run the following:
```bash
``` bash
sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
```
```
@ -600,19 +611,20 @@ In the example above:
# Disable networking
# Disable networking
To completely disable all network interfaces in a guest VM add this additional
To completely disable all network interfaces in a guest VM add this
line to your virtual machine configuration:
additional line to your virtual machine configuration:
- `network="none"`
- `network="none"`
# Restricted networking
# Restricted networking
You can isolate the guest from the host (and broader network) using the restrict
You can isolate the guest from the host (and broader network) using the
option, which will restrict networking to just the guest and any virtual devices.
restrict option, which will restrict networking to just the guest and
any virtual devices.
This can be used to prevent software running inside the guest from phoning home
This can be used to prevent software running inside the guest from
while still providing a network inside the guest. Add this additional line to
phoning home while still providing a network inside the guest. Add this
your virtual machine configuration:
additional line to your virtual machine configuration:
- `network="restrict"`
- `network="restrict"`
@ -680,15 +692,15 @@ import cog
# cannot use check_result() because of non-zero return
# cannot use check_result() because of non-zero return
result=subprocess.run(["./quickemu", "--help"], capture_output=True, text=True)
result=subprocess.run(["./quickemu", "--help"], capture_output=True, text=True)
help=result.stdout
help=result.stdout
cog.out(f"```\n \n{help}\n\n ```\n \n")
cog.out(f"\n ```\n{help}\n```\n")
]]] -->
]]] -->
```
```
Usage
Usage
quickemu --vm ubuntu.conf
quickemu --vm ubuntu.conf
You can also pass optional parameters
You can also pass optional parameters
--braille : Enable braille support. Requires SDL.
--braille : Enable braille support. Requires SDL.
--delete-disk : Delete the disk image and EFI variables
--delete-disk : Delete the disk image and EFI variables
--delete-vm : Delete the entire VM and it's configuration
--delete-vm : Delete the entire VM and it's configuration
@ -720,7 +732,6 @@ cog.out(f"```\n\n{help}\n\n```\n\n")
--extra_args < arguments > : Pass additional arguments to qemu
--extra_args < arguments > : Pass additional arguments to qemu
--version : Print version
--version : Print version
```
```
<!-- [[[end]]] -->
<!-- [[[end]]] -->