PackagingTools.Core.Mac provides the macOS packaging pipeline for .app, .pkg, .dmg, signing, notarization, and audit capture. It is designed to use the same project model as the Windows and Linux providers while honoring the native Apple tooling requirements.
.app bundle materialization for staged application payloads.pkg installers for enterprise or signed distribution flows.dmg disk images for end-user deliveryInstall the Xcode command-line tools and ensure the following commands are available:
codesignproductbuildnotarytoolhdiutilThe onboarding script under build/scripts/check-tools.sh validates these prerequisites before packaging.
Typical request or project properties include:
mac.app.bundleSourcemac.pkg.componentmac.dmg.sourceDirectorymac.signing.identitymac.notarytool.profileThese values can live in the project JSON, be overridden on the CLI, or be injected at runtime through PackagingRunOptions.Properties.
dotnet run --project src/PackagingTools.Cli -- pack \
--project ./samples/sample-project.json \
--platform mac \
--format app --format pkg --format dmg \
--output ./artifacts/mac \
--property mac.app.bundleSource=./artifacts/mac/Sample.app \
--property mac.pkg.component=./artifacts/mac/Sample.app \
--property mac.signing.identity="Developer ID Application: Contoso"