Generate bootable macOS installer ISO or DMG images directly from Apple servers via GitHub Actions. Includes intelligent file size optimization to achieve absolute smallest possible installer images.
Supported formats:
- ISO – True DVD format compatible with Proxmox VE, QEMU, VirtualBox, and VMware
- DMG – For creating bootable macOS installer USB drive on Windows/Linux with
dd,BalenaEtcher,Rufus
Workflows available:
- macOS Recovery ISO (Recommended) – Lightweight recovery image (build takes ~2-10 min) • Best for virtualization
- macOS Full Installer – Complete offline installer (build takes ~20-60 min, 5-16GB) • Best for offline use
Note
Due to GitHub Actions usage limits, use the Build macOS Recovery ISO workflow unless you specifically need an offline installer.
Already have a macOS virtual machine? Create full installer ISOs locally on your VM using Create_macOS_ISO.command.
-
Fork this repository.
-
Go to the Actions tab in your forked repository.
-
Click the green button "I understand my workflows, go ahead and enable them".
-
Select the "Build macOS Installer ISO/DMG image" workflow.
-
Click the "Run workflow" button.
-
Configure the workflow inputs:
- macOS version – Choose a version (Sequoia, Sonoma, etc.).
- Image format – Choose
isofor virtual machines ordmgfor bootable USB drives. - Specific version (optional) – Enter a version like
15.6.1, or leave blank for the latest.
-
Click the green button "Run workflow" to start the build.
-
Wait for the workflow to complete (this may take 15-60 minutes).
-
Open the completed workflow run and scroll to the Artifacts section.
-
Download the artifact (e.g.,
macOS-Sequoia-15.6.1-ISO).
Tip
Enable Cloudflare WARP for faster downloads.
- Extract the ZIP file to get your
.isoor.dmgfile.
Note
By default, artifacts are kept for 3 days. You can change this in the workflow YAML file.
Tip
- For best performance, use a macOS VM on Proxmox VE with iGPU or dGPU passthrough.
- Install macOS on Proxmox VE using LongQT-sea/OpenCore-ISO.
- For Intel GVT-d iGPU passthrough, see LongQT-sea/intel-igpu-passthru.
You may occasionally encounter hdiutil: couldn't eject "disk4" - Resource busy. If this occurs, simply re-run the workflow.
This tool downloads macOS images directly from Apple's servers. Users are responsible for complying with Apple's Software License Agreement.