mirror of
https://github.com/kholia/OSX-KVM.git
synced 2026-02-04 04:53:35 +00:00
Batch Update 2 - September 2023
Changes: - Update to OpenCore 0.9.5 - Switch around the emulated video device (required for Ventura) - Change default resolution to 1920x1080 - Include ventura in shortname CLI help - Add notes on 'bridged networking' - Better networking documentation (thomaspaulb) - Support for offline installations (kwadwokyeremeh) - Initial WIP macOS Sonoma support (via 'luchina-gabriel')
This commit is contained in:
committed by
Dhiru Kholia
parent
1184c09bc6
commit
422bb3b713
96
README.md
96
README.md
@@ -9,9 +9,11 @@ instructions are included!).
|
||||
:green_heart: Looking for **commercial** support with this stuff? I am [available
|
||||
over email](mailto:dhiru.kholia@gmail.com?subject=[GitHub]%20OSX-KVM%20Commercial%20Support%20Request&body=Hi%20-%20We%20are%20interested%20in%20purchasing%20commercial%20support%20options%20for%20your%20project.) for a chat for **commercial support options only**. Note: Project sponsors get access to the `Private OSX-KVM` repository, and direct support.
|
||||
|
||||
Struggling with `Content Caching` stuff? We can help.
|
||||
|
||||
Working with `Proxmox` and macOS? See [Nick's blog for sure](https://www.nicksherlock.com/).
|
||||
|
||||
Yes, we support offline macOS installations now 🎉
|
||||
Yes, we support offline macOS installations now - see [this document](./run_offline.md) 🎉
|
||||
|
||||
|
||||
### Contributing Back
|
||||
@@ -51,43 +53,22 @@ help (pull-requests!) with the following work items:
|
||||
|
||||
* A CPU with AVX2 support is required for >= macOS Mojave
|
||||
|
||||
Note: Older AMD CPU(s) are known to be problematic. AMD FX-8350 works but
|
||||
Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
Note: Older AMD CPU(s) are known to be problematic but modern AMD Ryzen
|
||||
processors work just fine.
|
||||
|
||||
|
||||
### Installation Preparation
|
||||
|
||||
* KVM may need the following tweak on the host machine to work.
|
||||
|
||||
```
|
||||
echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
|
||||
```
|
||||
|
||||
To make this change permanent, you may use the following command.
|
||||
|
||||
```
|
||||
sudo cp kvm.conf /etc/modprobe.d/kvm.conf # for intel boxes only, after cloning the repo below
|
||||
```
|
||||
|
||||
* Install QEMU and other packages.
|
||||
|
||||
```
|
||||
sudo apt-get install qemu uml-utilities virt-manager git \
|
||||
wget libguestfs-tools p7zip-full make dmg2img -y
|
||||
wget libguestfs-tools p7zip-full make dmg2img tesseract-ocr \
|
||||
tesseract-ocr-eng genisoimage -y
|
||||
```
|
||||
|
||||
This step may need to be adapted for your Linux distribution.
|
||||
|
||||
* Add user to the `kvm` and `libvirt` groups (might be needed).
|
||||
|
||||
```
|
||||
sudo usermod -aG kvm $(whoami)
|
||||
sudo usermod -aG libvirt $(whoami)
|
||||
sudo usermod -aG input $(whoami)
|
||||
```
|
||||
|
||||
Note: Re-login after executing this command.
|
||||
|
||||
* Clone this repository on your QEMU system. Files from this repository are
|
||||
used in the following steps.
|
||||
|
||||
@@ -107,6 +88,30 @@ Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
|
||||
This repository uses rebase based workflows heavily.
|
||||
|
||||
* KVM may need the following tweak on the host machine to work.
|
||||
|
||||
```
|
||||
sudo modprobe kvm; echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
|
||||
```
|
||||
|
||||
To make this change permanent, you may use the following command.
|
||||
|
||||
```
|
||||
sudo cp kvm.conf /etc/modprobe.d/kvm.conf # for intel boxes only
|
||||
|
||||
sudo cp kvm_amd.conf /etc/modprobe.d/kvm.conf # for amd boxes only
|
||||
```
|
||||
|
||||
* Add user to the `kvm` and `libvirt` groups (might be needed).
|
||||
|
||||
```
|
||||
sudo usermod -aG kvm $(whoami)
|
||||
sudo usermod -aG libvirt $(whoami)
|
||||
sudo usermod -aG input $(whoami)
|
||||
```
|
||||
|
||||
Note: Re-login after executing this command.
|
||||
|
||||
* Fetch macOS installer.
|
||||
|
||||
```
|
||||
@@ -127,11 +132,12 @@ Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
1. High Sierra (10.13)
|
||||
2. Mojave (10.14)
|
||||
3. Catalina (10.15)
|
||||
4. Big Sur (11.7) - RECOMMENDED
|
||||
4. Big Sur (11.7)
|
||||
5. Monterey (12.6)
|
||||
6. Ventura (13)
|
||||
6. Ventura (13) - RECOMMENDED
|
||||
7. Sonoma (14)
|
||||
|
||||
Choose a product to download (1-6): 4
|
||||
Choose a product to download (1-6): 6
|
||||
```
|
||||
|
||||
Note: Modern NVIDIA GPUs are supported on HighSierra but not on later
|
||||
@@ -148,7 +154,7 @@ Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
will need to be updated to point to the new image name.
|
||||
|
||||
```
|
||||
qemu-img create -f qcow2 mac_hdd_ng.img 128G
|
||||
qemu-img create -f qcow2 mac_hdd_ng.img 256G
|
||||
```
|
||||
|
||||
NOTE: Create this HDD image file on a fast SSD/NVMe disk for best results.
|
||||
@@ -165,7 +171,7 @@ Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
./OpenCore-Boot.sh
|
||||
```
|
||||
|
||||
Note: This same script works for Big Sur, Catalina, Mojave, and High Sierra.
|
||||
Note: This same script works for all recent macOS versions.
|
||||
|
||||
- Use the `Disk Utility` tool within the macOS installer to partition, and
|
||||
format the virtual disk attached to the macOS VM.
|
||||
@@ -202,6 +208,15 @@ Phenom II X3 720 does not. Ryzen processors work just fine.
|
||||
- Launch `virt-manager` and start the `macOS` virtual machine.
|
||||
|
||||
|
||||
### Headless macOS
|
||||
|
||||
- Use the provided [boot-macOS-headless.sh](./boot-macOS-headless.sh) script.
|
||||
|
||||
```
|
||||
./boot-macOS-headless.sh
|
||||
```
|
||||
|
||||
|
||||
### Setting Expectations Right
|
||||
|
||||
Nice job on setting up a `Virtual Hackintosh` system! Such a system can be used
|
||||
@@ -220,24 +235,7 @@ work, patience, and a bit of luck (perhaps?).
|
||||
|
||||
### Post-Installation
|
||||
|
||||
* See [networking notes](networking-qemu-kvm-howto.txt) to setup guest networking.
|
||||
|
||||
I have the following commands present in `/etc/rc.local`.
|
||||
|
||||
```
|
||||
#!/usr/bin/env bash
|
||||
|
||||
sudo ip tuntap add dev tap0 mode tap
|
||||
sudo ip link set tap0 up promisc on
|
||||
sudo ip link set dev virbr0 up
|
||||
sudo ip link set dev tap0 master virbr0
|
||||
```
|
||||
|
||||
This has been enough for me so far.
|
||||
|
||||
Note: You may need to enable the `rc.local` functionality manually on modern
|
||||
Ubuntu versions. Check out the [notes](notes.md) included in this repository
|
||||
for details.
|
||||
* See [networking notes](networking-qemu-kvm-howto.txt) on how to setup networking in your VM, outbound and also inbound for remote access to your VM via SSH, VNC, etc.
|
||||
|
||||
* To passthrough GPUs and other devices, see [these notes](notes.md#gpu-passthrough-notes).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user