mirror of
https://github.com/awizemann/scarf.git
synced 2026-05-08 02:14:37 +00:00
9c149b288b
Scarf's `MACOSX_DEPLOYMENT_TARGET` is `14.6` (Sonoma) on the main
`scarf` target, set in 86762ea. Sonoma support is intentional —
several users dogfood on macOS 14.x and we want to keep them on the
release channel. Yesterday's BUILDING.md and the long-stale
CONTRIBUTING.md statement both claimed macOS/Xcode 26.x as minimums,
which would have steered Sonoma contributors and users away from a
build that actually runs on their box.
Correct values:
- Runtime min: **macOS 14.6 (Sonoma)** — matches the deployment target.
- Build min: **Xcode 16.0** — needed for Swift 6 strict-concurrency
features the codebase uses.
Add a load-bearing-callout to BUILDING.md so future doc edits don't
silently raise the floor again.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.1 KiB
1.1 KiB
Building Scarf
Scarf is a native macOS app built with Xcode. For contributor builds, use the local script:
./scripts/local-build.sh
Requirements:
- macOS 14.6 (Sonoma) or newer at runtime — that's the app's
MACOSX_DEPLOYMENT_TARGET. Sonoma support is intentional and load-bearing; do not raise this without an explicit decision to drop Sonoma users - Xcode 16.0 or newer, selected by
xcode-select(needed for Swift 6 strict-concurrency features the project uses) - Metal toolchain installed
- Hermes installed at
~/.hermes/(see the project README for setup)
If the Metal toolchain is missing, the script will offer to install it in interactive shells. You can also install it manually:
xcodebuild -downloadComponent MetalToolchain
scripts/local-build.sh resolves Swift package dependencies, detects arm64 vs x86_64, and builds the Debug app unsigned. Signing is intentionally disabled for local Debug builds so contributors do not need the maintainer's Apple Developer account.
Release signing is separate from contributor builds. Maintainers should continue using the existing release process for signed distributable builds.