diff --git a/README.md b/README.md index ac1d5ec..59c500d 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,7 @@ If a Hermes update changes the database schema or CLI output format, Scarf may n Download the latest build from [Releases](https://github.com/awizemann/scarf/releases): - `Scarf-vX.X.X-Universal.zip` — Apple Silicon + Intel (recommended) +- `Scarf-vX.X.X-ARM64.zip` — Apple Silicon only (smaller download) 1. Unzip and drag **Scarf.app** to Applications 2. Launch normally — builds are Developer ID signed and notarized, so Gatekeeper accepts them on first launch diff --git a/scripts/release.sh b/scripts/release.sh index 8bdf6d2..95a2880 100755 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -54,8 +54,6 @@ APPCAST_URL="https://awizemann.github.io/scarf/appcast.xml" DOWNLOAD_URL_BASE="https://github.com/awizemann/scarf/releases/download" REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" BUILD_DIR="$REPO_ROOT/build" -ARCHIVE_PATH="$BUILD_DIR/scarf.xcarchive" -EXPORT_DIR="$BUILD_DIR/export" EXPORT_OPTIONS="$REPO_ROOT/scripts/ExportOptions.plist" RELEASE_DIR="$REPO_ROOT/releases/v${VERSION}" GH_PAGES_WORKTREE="${GH_PAGES_WORKTREE:-$REPO_ROOT/.gh-pages-worktree}" @@ -111,68 +109,86 @@ if [[ -f "$NOTES_FILE" ]]; then fi git commit -m "chore: Bump version to ${VERSION}" -# ---------- build ---------- +# ---------- build variants ---------- +# Each release produces two zips: a Universal binary (recommended — works on +# both Apple Silicon and Intel) and an ARM64-only variant (smaller download for +# users who know they're on M-series silicon). Each variant is independently +# notarized and stapled. The appcast only references the Universal zip since +# it works everywhere; ARM64 is an alternative manual download. + log "Clean build directory" rm -rf "$BUILD_DIR" -mkdir -p "$BUILD_DIR" +mkdir -p "$BUILD_DIR" "$RELEASE_DIR" -log "Archive (universal arm64+x86_64)" -xcodebuild \ - -project "$PROJECT" \ - -scheme "$SCHEME" \ - -configuration Release \ - -archivePath "$ARCHIVE_PATH" \ - -destination "generic/platform=macOS" \ - ONLY_ACTIVE_ARCH=NO \ - ARCHS="arm64 x86_64" \ - archive +# build_variant