Skip to content
Alex Genovese edited this page Aug 18, 2024 · 35 revisions

Running MacOS is now much faster and much improved.

Recent work has been done on Quickemu, whilst qqX 1.8.07 adds further tweaks and adjustments.

Guest Installation

Using qqX's iMacPro 2017 (Skylake Xeon) virtual CPU formula, the latest Sonoma 14.5 release runs without problem.

The early May Mac installer worked well but the end of May Mac installer is not recommended. The best current route is to install Ventura and then upgrade. See the full walk-thru here

Upgrading to MacOS 15 Sequoia is now also possible too. See the upgrade walk-thru here

June 17 2024 qqX adjustments are downloadable from the main branch This has been updated for Sequoia by name and for display. Quickget itself should be updated for direct download before long.

Follow up with the qqX re-namer which will auto configure your settings.

Both Ventura and Sonoma are supported by Homebrew for added extras such as the latest version of Bash and Qemu.

You should expect a few restarts and to re-initialize the Mac installer a couple of times but long hangs shouldn't now happen.

Backup copy the whole OS folder before starting as recovery images and other components will get changed during the process.

When installed, qqX will security update your Tiano/OVMF files on a regular basis.

Trouble Shooting notes are at the end of the page.

sonoma-display2

MacOS Host

The 4.9.5 quickemu code has been developed with MacOS host in mind. Decisions were made to use Haswell or 'host' pass-through. At the time of writing, this is still work in progress which may change.

Running qqX on a MacOS host may be possible in the future. There are on-going developments with Quickemu running on Arm hosts.

CPU

qqX's built-in code will default to the iMac Pro 2017 Skylake Xeon Virtual CPU. This is the only baseline CPU that exists in the Qemu virtual CPU options that is officially supported by Apple across the available versions.

The official QuickEmu runtime remains selectable for testing but the newer qqX one is recommended, particularly on Intel where it can be up to 7 times faster ...

See https://github.com/quickemu-project/quickemu/issues/1114#issuecomment-2129370687 and code

Tests are currently showing the Skylake version to be more consistent. VM's should be run using cpu_cores=8 =16 or =32 in the .conf file, where cpu_cores is a value based on the number of CPU threads available, eg 4 physical cores x 2 threads per core = 8. The more oddball Xeon values, such as 28, will not boot.

Theoretically, Cascade Lake Mac Pro 2019 can also be used and development work has now taken place. There is very little difference between the two, despite the newer date. Advanced users may like to custom tweak qqX's builtins to use Cascade, if interested. See the notes towards the end of the settings file.

Checking the capabilities

On the Mac VM, open a terminal, type bash and enter to switch to bash, type directly or open this wiki in Safari and use copy/paste:

Speed comparison:

time for i in {1..10000} ; do  bc <<< "scale=10; $i*22/7" ; done

Host CPU:

lscpu | grep -i flags | cut -d ':' -f 2- | tr ' ' '\n' | sort | cat -s | column 

Guest (VM) CPU:

sysctl -a | grep machdep.cpu | grep features | tr ' ' '\n' | grep -v features | sort | column

Graphics

Improvements with Quickemu have been translated to qqX and the display is now much better.

Settings > displays > advanced > show resolutions list > show all

The MacOS reportage of very little memory usage may be ignored. An allocation of 256MB is made in the latest Quickemu code.

Dynamic wallpapers may not be available.

The June 17 2024 adjustments allow for sizes to be added to the .conf file. A line MacScreenRes="XxY" may be used. Standard Stock sizes: 2560x1440 1920x1080 1280x720; Default is 1280x720.

Mac seems to be able to use 1280 and then takes control of the outcome itself, once set up. Unless it's Sequoia where it needs to be specified in the conf file:

seq-screen-res

GPU passthrough

If you have a separate graphics card, passthrough is technically possible and theoretically should improve performance. The methods are fairly standard but commands vary greatly from machine to machine. Advanced users only. Recommended guide here. Custom qqX boot sequences are probably required too.

QuickEmu notes

See https://github.com/quickemu-project/quickemu/wiki/03-Create-macOS-virtual-machines in particular the notes on enabling trim in order to keep down the hard drive size.

RAM

Ideally MacOS should have 8G plus and Quickemu will complain if it is not there. However, it will run on less and specifying this in the .conf file will sort this out. Run the qqX 'tune-up wizard' or use the qqX .conf editor ...

Hackintosh

Differently to Microsoft who even supply setups for developers to test and run as VM's, Apple don't make it easy for anyone setting up a 'Hackintosh' whether virtual or otherwise.

The whole running of MacOS is a bit of a legal grey area. There's plenty of discussion on the web on the topic. The EULA says you shouldn't install MacOS on non-Apple hardware. But the EULA is not a legal document ...

Apple can see that you are running a virtual machine. But instead of being up-front about things, they seem to quietly leave obstacles that only developers can manage to circumvent as an attempt to promote general public hardware sales ....

Installation walk-through

The following screenshots are from the early May Sonoma 14.5 release. The one without the problems.

The procedure is much the same for Ventura.

Stage 1

stage1

stage1b

stage1c

stage1d

stage1e

stage1f

stage1g

stage1h

The initial 2hr32m time will quickly drop after only a couple of minutes to 33m and then after a couple of minutes more down to 12.

stage1i

Times are from a typical mid-range 6 core series 11 Intel processor.

stage1j

Stage 2

stage2

Reboots will present this screen a couple of times. Select the installer again.

As previously, the '29mins' screen will reduce more quickly than reported.

stage2b

On the next occasion you should see the option for the new drive.

Stage 3

stage3

Installation is nearing the end when the 'ramrod' screen appears.

stage3-ramrod

Stages 4 to 7

stage4-main

stage5

stage5-setup-later

stage6-setup-display-advanced

stage7-imac-pro

MacOS 15 Sequoia

The following upgrade has currently been tested on Sonoma:

Boot the MacOS VM. Open Safari, navigate to here in order to copy the link, then download the file; approximately 15 GiB.

https://swcdn.apple.com/content/downloads/50/33/052-49060-A_SUZPTRSXUG/rshd6um52uzcxnr1u85utqhl124vmsph1c/InstallAssistant.pkg

Using Finder, go to Downloads click on the file. In the dialog choose location as Downloads, then run the application.

sequ-upd-2

It may be advisable to set your display to a default setting before starting. Or you may find that adjusting the .conf file, as described in Graphics above may work.

seq-upd-display

The usual repeated restarts, as for the Sonoma walk-thru, should be expected.

seq-beta-okay

Trouble Shooting

If you are only presented with DVD player type icons, this means that installer is not loading. This can be due to the Qemu CPU configuration. Different variations are included via the different qqX builtins. You can also export a builtin for use as 'Custom' and individually edit CPU setup as well. See the notes at the end of the qqX settings file.

Multiple configuration tests have failed to boot the end of May Sonoma download installer ... As initially recommended, install Ventura and then upgrade. Follow up with the qqX re-namer which will auto configure your settings.

mac-dvd-icon

Terminal settings

sonoma-term-settings-at-top

Controls for terminal fonts and appearance are on the top bar when the terminal is active.

Further reading

Also see https://github.com/quickemu-project/quickemu/wiki/03-Create-macOS-virtual-machines in particular the notes on enabling trim in order to keep down the hard drive size.