How to create Mac OS environments after 10.4

Deployment: Please indicate if you are either using EaaSI’s managed service (hosted.eaasi.cloud) or self-hosting; if the latter, please provide some basic detail of your computing setup if possible (cloud service, local VM, bare metal, etc.)

AusEaaSI

EaaSI Version (if self-hosting): This corresponds to the release branch/installer version used to deploy your server. This information should be available in the Manage Node menu, if accessible

Browser: The name and version of the browser you are using to access the EaaSI UI, if applicable

Description: Please describe your issue in as much detail as possible, including name + ID of any relevant environments, software or content. You can also attach screenshots or relevant error report files.

Some of our users are interested in creating Mac OS envioronments in QEMU that are later than 10.4. For example, Mac OS 10.5. Is it possible to use the setting for Mac OS 10.4, or is there a different configuration we can download that will make it possible to make Mac environments after 10.4
Thanks!

Are you able to reproduce the issue or did it happen once? What steps can you take to repeat the issue? What did you expect to occur and what was the actual outcome?

Urgency: If possible, please give an indication of how urgently the issue needs to be addressed - is there a timeline or deadline (e.g. upcoming demo, researcher request, etc.) that EaaSI support staff should be aware of?

Greetings! It should definitely be possible to set up at least 10.5, using the same emulator template and settings as apply for 10.4 environments, so long as you are using 10.5 installation media intended for PowerPC Macs (I believe that 10.4 and 10.5 were both released in PowerPC and Intel x86 versions)

Tthe Emaculation forums confirm that qemu-system-ppc (which we use for emulating PowerPC Mac OS versions above SheepShaver’s 9.0.4 limit) should be compatible up to that point: Running Qemu-system-ppc with Mac OS/OSX guests in macOS [E-Maculation wiki]

As far as I am aware we are not currently able to address any OSX versions from 10.6 or higher in EaaSI, as those versions require 1) a far more complex set of QEMU options and 2) a separate/custom piece of firmware not included in QEMU by default to work at all (I’ve tried to follow e.g. these instructions before in a local version of QEMU, to limited success), and there is not currently an emulator image or hardware template available to map all that to EaaS. (See @rafaelgieschke’s same answer re: other QEMU versions as to the difficulties of EaaS’ hard-coded emulator support: QEMU - users requesting versions later than 3.1 - #3 by rafaelgieschke)

Note: None of the following is legal advice on the legality of any possible technical solutions.

a separate/custom piece of firmware not included in QEMU by default to work at all

This probably is -device isa-applesmc and is in upstream QEMU and used, e.g., in https://github.com/kholia/OSX-KVM/blob/7e885b8bae0e076f257279ac9d42ef293711620a/boot-macOS-headless.sh#L53. But the problem described by @ethan.gates is still valid: there is no hardware template and all of this is highly fragile/emulator-dependent (something we want to absolutely avoid as it is very bad for the prospect of long-term archiving).

I would guess (again, guess as in “untested” :grinning:) that you could have more success with installing a specially patched Mac OS X version into a standard x86-64 IBM PC emulator (with any standard template) to create the virtual equivalent of a Hackintosh. This would not depend on any special emulator features and probably be more long-term viable. This is somehow similar on how Android emulation might work in EaaSI (using Android-x86, a version of Android suitable for standard x86-64 IBM PCs).

I was actually referring to e.g. the next couple lines in that linked OSX-KVM configuration:

  -drive if=pflash,format=raw,readonly=on,file="$REPO_PATH/$OVMF_DIR/OVMF_CODE.fd"
  -drive if=pflash,format=raw,file="$REPO_PATH/$OVMF_DIR/OVMF_VARS-1920x1080.fd

and then further down:

  -drive id=OpenCoreBoot,if=none,snapshot=on,format=qcow2,file="$REPO_PATH/OpenCore/OpenCore.qcow2"

where to my understanding OVMF is an open UEFI implementation to replace QEMU’s default SeaBIOS and OpenCore is an additional bootloader further required to provide some Apple-specific UEFI drivers in order to actually boot macOS; neither appear to be upstream in QEMU by default. (Also in my local testing that all seems to work from around macOS 10.12 and up; versions between 10.6 and 10.11 need a different bootloader to translate between SeaBIOS → macOS, but same general point!)

Also a good point though that is all relevant to genuine/original installation media; I have also never tested/attempted with patched installation media, though at least in the U.S. my understanding of the current DMCA exemptions is that they may support using such media!

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.