Format | Use it for | Command |
|---|---|---|
app | Local validation, direct app-bundle distribution, notarized .app handoff. | fission package --target macos --format app --release |
pkg | Installer-based distribution, MDM, managed deployment, or machine-level install policy. | fission package --target macos --format pkg --release |
[app]
name = "Acme Notes"
app_id = "com.acme.notes"
version = "1.4.0"
build = 37
[targets.macos]
enabled = true
[package.macos]
bundle_id = "com.acme.notes"
marketing_version = "1.4.0"
build_number = "37"
team_id = "ABCDE12345"
minimum_os = "13.0"
entitlements = "platforms/macos/AcmeNotes.entitlements"
provisioning_profile = "profiles/macos/AcmeNotes.provisionprofile"
signing_identity = "Developer ID Application: Acme Software Ltd (ABCDE12345)"
installer_identity = "Developer ID Installer: Acme Software Ltd (ABCDE12345)"
notarize = true
[run.macos]
entitlements = "platforms/macos/AcmeNotes.dev.entitlements"
provisioning_profile = "profiles/macos/AcmeNotesDevelopment.provisionprofile"
signing_identity = "Apple Development: Jane Developer (ABCDE12345)"
Field | Why it exists |
|---|---|
app.app_id | Fission's cross-platform app identity. Keep it stable before release. |
package.macos.bundle_id | The bundle identifier written into macOS package metadata. It usually matches app.app_id, but can differ when one repository ships multiple platform identities. |
marketing_version | The user-visible CFBundleShortVersionString, such as 1.4.0. |
build_number | The macOS CFBundleVersion, usually monotonically increasing for release artifacts. |
team_id | Used by signing, provisioning, notarization readiness, and review diagnostics. |
minimum_os | Documents and propagates the intended minimum macOS version. |
entitlements | The app-level entitlements used when signing the containing .app. |
provisioning_profile | Embedded at Contents/embedded.provisionprofile before signing when profile-backed entitlements are required. |
signing_identity | The application signing identity passed to codesign. |
installer_identity | The installer signing identity used for .pkg output. |
notarize | Enables the notarization step. Notarization still needs Apple API credentials from environment variables or platform tools. |
[[native.modules]]
name = "security-extensions"
path = "platforms/macos/native"
[native.modules.macos]
xcodegen_spec = "platforms/macos/native/project.yml"
xcode_project = "platforms/macos/native/SecurityExtensions.xcodeproj"
test_schemes = ["SecurityExtensionsTests"]
[[native.modules.macos.products]]
scheme = "FileProvider"
bundle = "FileProvider.appex"
kind = "app-extension"
entitlements = "platforms/macos/native/FileProvider.entitlements"
provisioning_profile = "profiles/macos/FileProvider.provisionprofile"
signing_identity = "Developer ID Application: Acme Software Ltd (ABCDE12345)"
[native.modules.macos.products.run]
provisioning_profile = "profiles/macos/FileProviderDevelopment.provisionprofile"
signing_identity = "Apple Development: Jane Developer (ABCDE12345)"
fission readiness package --project-dir . --target macos --format app
fission readiness package --project-dir . --target macos --format pkg
fission package --project-dir . --target macos --format app --release
fission package --project-dir . --target macos --format pkg --release