fix(packaging): DMG background visible on Sonoma+ (#95) #167

Merged
gronod merged 5 commits from fix/95-dmg-background-sonoma into develop 2026-09-14 11:55:41 +01:00
Owner

Monterey-built DMGs showed the ice-cream background on 12 and a plain Finder window on 14. CI was on dmgbuild 1.6.5, which writes a classic Alias Manager blob that Sonoma does not resolve after UDZO.

Changes

  • Pin dmgbuild>=1.6.7 in ensure-host-tools.sh and always upgrade the package venv (a leftover 1.6.5 install is not reused).
  • package-release.sh builds build/dmg-background.tiff with tiffutil -cathidpicheck from the 1x + @2x PNGs and exports DMG_BACKGROUND.
  • Missing PNG / TIFF / old dmgbuild is a hard fail. No more silent grey window.
  • dmgbuild-settings.py requires DMG_BACKGROUND; it no longer falls back to None.
  • Exclude installer chrome from the app target in project.yml.

Closes #95.

Monterey-built DMGs showed the ice-cream background on 12 and a plain Finder window on 14. CI was on dmgbuild 1.6.5, which writes a classic Alias Manager blob that Sonoma does not resolve after UDZO. ## Changes - Pin `dmgbuild>=1.6.7` in `ensure-host-tools.sh` and always upgrade the package venv (a leftover 1.6.5 install is not reused). - `package-release.sh` builds `build/dmg-background.tiff` with `tiffutil -cathidpicheck` from the 1x + @2x PNGs and exports `DMG_BACKGROUND`. - Missing PNG / TIFF / old dmgbuild is a hard fail. No more silent grey window. - `dmgbuild-settings.py` requires `DMG_BACKGROUND`; it no longer falls back to `None`. - Exclude installer chrome from the app target in `project.yml`. Closes #95.
gronod added 1 commit 2026-09-14 10:57:47 +01:00
fix(packaging): DMG background visible on Sonoma+ (#95)
macOS CI / build-and-test (pull_request) Failing after 20s
macOS CI / package (pull_request) Skipped
3b6323378e
Pin dmgbuild >= 1.6.7 so Finder gets a bookmark instead of a
Monterey-era Alias Manager blob. Feed a HiDPI TIFF from
tiffutil rather than the 1x RGBA PNG, and fail the package job
if the art is missing instead of shipping a grey window.

Exclude installer chrome from the app bundle; it is not an
in-app asset.
gronod added 1 commit 2026-09-14 11:14:32 +01:00
fix(ci): do not require dmgbuild 1.6.7 on Monterey Python 3.9
macOS CI / package (pull_request) Canceled after 0s
macOS CI / build-and-test (pull_request) Canceled after 6m31s
7f6c47d85c
The tools step runs on the test job. System Python is 3.9;
dmgbuild 1.6.6+ declares Requires-Python >=3.10, so pip only
lists 1.6.5 and the 1.6.7 floor failed the gate.

Install the newest wheel this interpreter accepts. Keep the
HiDPI TIFF background path and the hard-fail if art is missing.
gronod added 1 commit 2026-09-14 11:22:13 +01:00
fix(ci): isolate dmgbuild in a venv, skip it on the test job
macOS CI / package (pull_request) Canceled after 0s
macOS CI / build-and-test (pull_request) Canceled after 1m50s
macOS CI / build-and-test (push) Successful in 13s
macOS CI / package (push) Successful in 4m12s
1c310706e4
ensure-host-tools.sh always bootstraps xcodegen. dmgbuild now
lives in build/.venv-dmgbuild and is only installed when
INSTALL_DMGBUILD=1 (package job). The test job no longer
pip-installs dmgbuild, which is what failed on Python 3.9.

package-release.sh reuses that venv (or bootstraps it locally)
instead of creating a second copy.
gronod added 1 commit 2026-09-14 11:29:36 +01:00
fix(ci): force dmgbuild 1.6.7 into the package venv
macOS CI / package (pull_request) Canceled after 0s
macOS CI / build-and-test (pull_request) Canceled after 1m6s
macOS CI / build-and-test (push) Successful in 11s
macOS CI / package (push) Failing after 35s
c2ac9341c8
Python 3.9 hides 1.6.6+ (Requires-Python >=3.10), so
dmgbuild>=1.6.5 left a cached 1.6.5 install. The wheels are
py3-none-any; install 1.6.7 with PIP_IGNORE_REQUIRES_PYTHON,
force-reinstall ds_store>=1.3.3 and mac_alias>=2.2.3, and fail
if the venv is still older than 1.6.7.
gronod added 1 commit 2026-09-14 11:34:19 +01:00
fix(ci): cap pip below 26.1 in the Python 3.9 dmgbuild venv
macOS CI / build-and-test (push) Successful in 11s
macOS CI / package (push) Successful in 4m5s
macOS CI / package (pull_request) Canceled after 0s
macOS CI / build-and-test (pull_request) Canceled after 3m29s
2a8ad4d5d4
Unbounded pip upgrade installed 26.2.1, which uses
dataclass(slots=True) and crashes on Monterey 3.9. Recreate
the venv if pip is already broken, then pin pip>=24.3,<26.1
before force-installing dmgbuild 1.6.7.
gronod merged commit fa02e774ca into develop 2026-09-14 11:55:41 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gronod/iccery-v2-mac#167