Problem
The current DMG creation step uses create-dmg which relies on AppleScript/Finder to style the DMG window. This fails on headless CI runners with:
execution error: Finder got an error: AppleEvent handler failed. (-10000)
Failed running AppleScript
Error: Process completed with exit code 64.
Proposed Solution
Switch to dmgbuild (Python). It produces the same output — custom background, icon positions, window size, hidden labels — without relying on Finder or AppleScript.
- Replace
create-dmg with pip3 install dmgbuild + dmgbuild
- Add
scripts/dmg-settings.py with declarative DMG config
- Add
assets/dmg-background.png (custom background image, 700×400px or 1400×800px retina)
Acceptance Criteria
Problem
The current DMG creation step uses
create-dmgwhich relies on AppleScript/Finder to style the DMG window. This fails on headless CI runners with:Proposed Solution
Switch to
dmgbuild(Python). It produces the same output — custom background, icon positions, window size, hidden labels — without relying on Finder or AppleScript.create-dmgwithpip3 install dmgbuild+dmgbuildscripts/dmg-settings.pywith declarative DMG configassets/dmg-background.png(custom background image, 700×400px or 1400×800px retina)Acceptance Criteria
scripts/dmg-settings.pycommitted with window/icon/background settingsassets/dmg-background.pngaddeddmgbuildinstead ofcreate-dmg