macOS Application Distribution
Tauri applications for macOS are distributed either with an Application Bundle (
.app files) or an Apple Disk Image (
.dmg files). The Tauri CLI automatically bundles your application code in these formats, providing options to codesign and notarize your application.
Minimum system version
The minimum version of the operating system required for a Tauri app to run in macOS is
10.13. You can change that value on the
tauri.bundle.macOS.minimumSystemVersion property. The value is set to the Info.plist key LSMinimumSystemVersion and the MACOSX_DEPLOYMENT_TARGET environment variable.
window.print API requires macOS version
You can compile your application targeting Apple Silicon, Intel-based Mac computers, or universal macOS binaries. By default, the CLI builds a binary targetting your machine's architecture. If you are using an Apple Silicon macOS, you can compile Intel and universal binaries using the
tauri build --target aarch64-apple-darwin: targets Apple Silicon for your application;
tauri build --target x86_64-apple-darwin: targets Intel-based Mac computers;
tauri build --target universal-apple-darwin: targets universal macOS binaries.
- Apple Silicon binaries only run on Mac computers with Apple Silicon.
- Intel-based binaries only run on Intel-based Mac computers and Apple Silicon computers under the Rosetta translation.
- Universal macOS binaries run on both architectures.
Application bundle customization
The Tauri configuration file provides the following options to customize your application bundle:
- Bundle name:
- Bundle version:
- Application category:
- Bundle icon: first
.icnsfile listed on the
- Minimum system version:
- DMG license file:
- Entitlements.plist file:
- Exception domain: an insecure domain that your application can access such as a
localhostor a remote
httpdomain. It is a convenience configuration around
NSAppTransportSecurity > NSExceptionDomainssetting
NSIncludesSubdomainsto true. See
- Bootstrapper: Instead of launching the app directly, you can configure the bundled app to run a script that tries to expose the environment variables to the app; without that, you'll have trouble using system programs because the
PATHenvironment variable isn't correct. Enable it with
These options generate the application bundle Info.plist file. You can extend the generated file with your own
Info.plist file stored on the Tauri folder (
src-tauri by default). The CLI merges both
.plist files on production, and the core layer embeds it on the binary on development.
Code signing and notarization
See the Code signing guide.