Orchard is the tool to build the artifacts of the macOS on Incus project. It prepares, compiles, packages and signs all the necessary files to boot a macOS environment on Incus.
git clone https://github.com/macOS-on-Incus/orchard
cd orchard
./orchard init
./orchard build
./orchard genkeys
./orchard package --sign 15.6
incus storage volume import pool macOS.iso macOSFirst, clone Orchard with Git and go to its directory:
git clone https://github.com/macOS-on-Incus/orchard
cd orchardPrepare the development environment with the init action. You can pass an optional --binary option to setup Orchad to work with a binary distribution (not implemented yet!) or --source (the default option) to setup a source distribution.
./orchard initYou can then build all the necessary files with the build action:
./orchard buildTo be able to sign the EFI binaries, Orchard expects sb.cer, sb.crt and sb.key to be present at its root. If you don’t have these at hand, you can simply generate them:
./orchard genkeysFinally, to package an installation ISO, you just have to use the package action. You can pass an optional --sign to sign the binaries, and an optional version string to download the corresponding macOS version (refer to OpenCore for the accepted versions). If no version is given, the default one suggested by OpenCore will be downloaded, except if a com.apple.recovery.boot directory is present at the root of Orchard, in which case its files will be used.
./orchard package --sign 15.6Finally, just import the output ISO (macOS.iso) into Incus:
incus storage volume import pool macOS.iso macOS