

Since Sparkle is downloading executable code to your users’ systems, you must be very careful about security. While it is still functional for transitional purposes, new applications will want to migrate to SPUStandardUpdaterController. In Sparkle 2, SUUpdater is a deprecated stub. If you are using Sparkle 1, you will need to use SUUpdater instead of SPUStandardUpdaterController in the above steps.

Sample mac os framework update#
If you want to update a non-app bundle, such as a Preference Pane or a plug-in, follow step 2 for non-app bundles. If you want to use Sparkle from other UI toolkits such as SwiftUI or want to instantiate the updater yourself, please visit our programmatic setup.

Alternatively, you may clone Sparkle’s repository with all its submodules, run make release, and extract the binaries in the resulting Sparkle-*.tar.xz (or. They are also available in Swift Package Manager, CocoaPods, and Carthage too by specifying the pre-release version in your project’s manifest.Ī more nightly build from our repository can be downloaded from our GitHub Actions page by selecting a recent workflow commit and downloading the Sparkle-distribution*.tar.xz artifact. Pre-releases when available are published on GitHub. Sandboxed applications using Sparkle 2 require additional setup. If you have your own process for copying/packaging your app make sure it preserves symlinks!.In Build Settings tab set “ Runpath Search Paths” to (for non-Xcode projects add the flags This is not a necessary step in recent versions of Xcode.Be sure to check the “Copy items into the destination group’s folder” box in the sheet that appears.

Sparkle only supports using a binary origin with Carthage because Carthage strips necessary code signing information when building the project from source. Sparkle’s tools to generate and sign updates are not included from Carthage and need to be grabbed from our latest release. In Frameworks, Libraries, and Embedded Content section, change amework to Embed & Sign.Click your target in the project editor.Click on your project in the Project Navigator.Make sure the framework is copied into your app bundle:.Make sure the box is checked for your app’s target in the sheet’s Add to targets list.Drag the built Carthage/Build/Mac/amework into your Xcode project.Link the Sparkle framework to your app target:.Add or uncomment use_frameworks! in your Podfile.The default options will let Xcode automatically update versions of Sparkle 2.įrom Xcode’s project navigator, if you right click and show the Sparkle package in Finder, you will find Sparkle’s tools to generate and sign updates in. In your Xcode project: File › Add Packages….Add the Sparkle framework to your project Sandboxed applications are only supported in Sparkle 2. If your app already has an older version of Sparkle or you wish to migrate to Sparkle 2, see upgrading from previous versions.
