Build helper scripts
This build/ directory contains helper scripts and notes for building Strawberry.
- It is not intended to be your CMake build output directory.
- Recommended CMake build output directories:
cmake-build/,build-release/, etc.
macOS
- Install dependencies via Homebrew:
./build/macos/install_brew_deps.sh
- Build Strawberry:
./build/macos/build_app.sh --release
open ./cmake-build-macos-release/strawberry.app
macOS signing + notarization (Developer ID distribution)
This repo includes build/macos/build_sign_notarize.sh to automate:
- build → (optional deploy) → codesign → notarize → staple → verify
One-time setup (Apple Developer)
-
Install certificates:
- In the Apple Developer portal, create (or download) a Developer ID Application certificate.
- Install it into your login keychain (Xcode can manage this via Xcode → Settings → Accounts).
-
Provisioning profiles:
- For Developer ID distribution (outside the Mac App Store), you typically do not need a provisioning profile.
- You do need profiles if you are building a Mac App Store-signed app (not what this repo’s scripts target).
-
Notarization credentials:
- Create a
notarytoolkeychain profile (recommended) so you don’t have to pass secrets on the command line:
- Create a
# NOTE: <profile-name> is a positional argument (not a flag).
# Pick any name you want, e.g. "strawberry-notary".
xcrun notarytool store-credentials "<profile-name>" \
--apple-id "<your-apple-id>" \
--team-id "<TEAMID>" \
--password "<app-specific-password>"
Listing what’s installed locally
Run with no args to list local signing identities + notarytool profiles:
./build/macos/build_sign_notarize.sh
Build + sign + notarize
./build/macos/build_sign_notarize.sh --run --release --clean --deploy \
--identity "Developer ID Application: Your Name (TEAMID)" \
--notary-profile "<profile-name>"