cyberneticlibrary

Package SwiftPM macOS apps

macos-spm-app-packagingskillsetup L30
Sheshiyer/skill-clusters
What it does

Bootstrap, build, sign, notarize, and package SwiftPM macOS apps without Xcode projects

Best for

Shipping macOS apps avoids Xcode project complexity when using a bootstrap template and script-driven packaging (build, sign, notarize, staple, appcast) workflow.

Inputs
  • · package_swift
  • · swiftui_sources
  • · version_env
  • · developer_certificate
Outputs
  • · app_bundle
  • · signed_app
  • · notarized_zip
  • · appcast_xml
Requires
  • · SwiftPM
  • · codesign
  • · notarytool
  • · stapler
  • · Sparkle
Preconditions

SwiftPM project with Executable target; Apple Developer certificate installed; macOS SDK available

Failure modes
  • · Notarization fails due to network gatekeeper check
  • · Signature validation fails (Gatekeeper spctl)
  • · Appcast URL unreachable
  • · Sparkle version mismatch
Trust signals
  • · Bootstrap template at assets/templates/bootstrap/
  • · Script validation checkpoints (codesign -dv, spctl)
  • · End-to-end example from cp to launch