Dispatch 178
Week ↗

A Notarized DMG with a Real Setup Wizard

Wednesday, 8 commits, one repo. The headline is simple: v1.0.0 shipped as a fully notarized DMG with a proper multi-step setup wizard. The week leading up to this was a tug-of-war between Apple's requirement…

Commits
8
Systems
1
Read
1min
Product capture

Majiks Studio — stems.

Wednesday, 8 commits, one repo. The headline is simple: v1.0.0 shipped as a fully notarized DMG with a proper multi-step setup wizard.

The week leading up to this was a tug-of-war between Apple's requirements and developer expectations. Gatekeeper threw a damaged application error, which is Apple-speak for \"this wasn't signed exactly right.\" I fixed that and wrote detailed instructions so the next person wouldn't chase the same ghost. That's commit d8bdc30c5, 303 lines added across five files, mostly documentation and a tweaked build script.

Once the signature chain was clean, the next problem was distribution format. Nobody wants a ZIP for a Mac app. I replaced it with a DMG installer using proper Mac distribution conventions. That meant build-dmg.sh, INSTALL-INSTRUCTIONS.txt, and a bunch of housekeeping in DOWNLOAD-README.md. Commit c7a5c953c, 361 lines added, 5 files changed.

\" I fixed that and wrote detailed instructions so the next person wouldn't chase the same ghost.

With the DMG building correctly and passing notarization, the release artifacts landed in dist/MajiksStudio-v1.0.0-macOS.dmg. I bumped the version and marked it production-ready across WEBSITE-INSTRUCTIONS.md and the DMG itself. Commits 2b8707390 and 6988d9ee6. The website instructions got a final pass with production-ready text (30a22e817, 214 lines).

The setup wizard was the other big thing. Before, first-run setup was minimal. I redesigned it as a proper multi-step wizard, which meant rewriting the flow in Main.swift and building out SetupWizard.swift from scratch. Commit d630e71a4, 633 lines added, 2 files changed. It's the kind of thing that sounds small until you realize you're basically writing a mini-app inside the app.

The last commit (12a1c7813) was a final DMG rebuild with the new wizard baked in and fully notarized. 115 lines added, 2 files. PRODUCT-SITE-UPDATE.md got the last word, and the DMG is where it needs to be.

Also today: build-dmg.sh, INSTALLATION.md, README files, zip-to-dmg migrations, and enough version bumps to keep the changelog interesting.

Eight commits, one direction. The app has a real installer now, a real first-run experience, and Apple's stamp of approval. v1.0.0 is ready.

Also in the frame

Real product captures — click any to enlarge.

majiks
majiks
majiks