Style the DMG: dmgbuild layout, background, large icons

Layout is written by dmgbuild (Config/dmg/settings.py) instead of Finder
AppleScript, which proved unreliable. Background is generated by
scripts/make-dmg-background.swift.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
mmacierzankaandClaude Bot committed 2026-11-03 03:42:15 +01:00
1 parent 313be025d6
commit 6273a5b8c5
6 files changed
+68 -10

No files matched your search

+10 -8
View File
@@ -7,6 +7,7 @@ BUILDNUM := $(shell git rev-list --count HEAD 2>/dev/null || echo 1)
VERSION := $(shell /usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" Config/Info.plist)
DMG := build/SecondDisplay-$(VERSION).dmg
VOLNAME ?= Second Display
.PHONY: build run clean install uninstall check dmg help
build: $(APP) ## Build build/SecondDisplay.app
@@ -42,14 +43,15 @@ check: build ## Lint sources, plists, strings and the built bundle
scripts/check-strings.sh
codesign --verify --strict $(APP)
dmg: build ## Build a distributable disk image (not notarized)
rm -rf build/dmg $(DMG) && mkdir build/dmg
cp -R $(APP) build/dmg/
ln -s /Applications build/dmg/Applications
cp "Config/dmg/Read Me First.txt" build/dmg/
hdiutil create -volname "Second Display" -srcfolder build/dmg -ov -format UDZO $(DMG)
hdiutil verify $(DMG)
rm -rf build/dmg
DMGBUILD := build/venv/bin/dmgbuild
$(DMGBUILD):
python3 -m venv build/venv && build/venv/bin/pip install -q dmgbuild
dmg: build $(DMGBUILD) ## Build a distributable disk image (not notarized)
rm -f $(DMG)
$(DMGBUILD) -s Config/dmg/settings.py -D app=$(APP) "$(VOLNAME)" $(DMG)
hdiutil verify $(DMG) | tail -1
help: ## List targets
@grep -E '^[a-z]+:.*##' Makefile | sed 's/:.*##/ -/'