
If you have ever tried to notarize a Xojo-built app and had Apple refuse it, you know the
dance: the binary is ad-hoc signed, it has no Hardened Runtime, and it still carries the
com.apple.security.get-task-allow debugging entitlement. Apple rejects all three.
XPackager builds the .pkg and fixes that on the way: it re-signs a copy of your
payload with codesign --options runtime --timestamp, strips the debugging entitlement,
signs the package with your Developer ID Installer certificate, sends it to Apple and
staples the ticket. Your original files are never touched.
What it does:
- Payload composed by dragging from the Finder, permissions per item
- Several components → custom installation with checkboxes and pre/post-install scripts
- Requirements: minimum macOS version, architectures, file presence, available memory
- The installer’s four screens in a rich text editor, background image included
- Multilingual installers: screens, title and choice labels per language, with a
reference language as fallback - A command line tool,
xpackagerbuild, that builds the same package from the same
project file — for a delivery script or a Xojo build step
On first launch it checks your machine — Xcode tools, both Developer ID certificates,
notarytool profile — and tells you what is missing and how to fix it. Those are the things
that otherwise only fail after a two-minute build.
It is written in Xojo, with native AppKit controls through
VDSTools — no plugin, no compiled
Objective-C, only Declares. The installer in the banner above is XPackager’s own, built by
XPackager.
Free, donationware. Requires macOS 15.
Download and guide: GitHub - Valdemar-VDSC/Xpackager: Create signed and notarized macOS installers for your apps · GitHub
The getting-started guide covers the long part — getting the certificates from Apple — step
by step, in English and French. Feedback welcome.