Repository navigation
Require macOS 10.15 minimum so whisper.cpp builds for the universal macOS release #536
Copy link
Copy link
Closed
Closed
Copy link
Labels
bugSomething isn't workingSomething isn't workingrelease-blockerMust be fixed on the release branch before the version shipsMust be fixed on the release branch before the version ships
Milestone
Description
Target branch: release/0.7.0
Goal
The macOS release build sets an explicit minimum macOS version of 10.15 (Catalina), so whisper.cpp (speech input) compiles for aarch64-apple-darwin and the universal macOS build succeeds. The minimum is documented for users.
Context
crates/speechdepends onwhisper-rs 0.16.0, which builds whisper.cpp throughwhisper-rs-sys 0.15.0.- The universal macOS release build fails compiling whisper.cpp for
aarch64-apple-darwin:ggml/src/ggml-backend-reg.cpp:91:39: error: 'path' is unavailable: introduced in macOS 10.15'u8string' is unavailable: introduced in macOS 10.15(std::filesystem)
apps/smart-ssh-community/tauri.conf.json(bundle.macOS, ~line 44) sets nominimumSystemVersion, so Tauri's default10.13drivesMACOSX_DEPLOYMENT_TARGET.std::filesystemneeds 10.15.- Tauri 2 itself documents macOS 10.15 (Catalina) as its minimum supported version, so this change only makes an existing requirement explicit; it drops no platform that was actually supported.
.cargo/config.toml(added by Build whisper.cpp without native CPU flags (GGML_NATIVE=OFF) for release builds #534) has an[env]section withGGML_NATIVE = "OFF".README.md:76(download section) lists the macOS.dmgwithout a minimum version. No spec lists supported OS versions.
Requirements
- Minimum macOS version is 10.15 (decided by maintainer).
apps/smart-ssh-community/tauri.conf.json: add"minimumSystemVersion": "10.15"tobundle.macOS..cargo/config.toml: addMACOSX_DEPLOYMENT_TARGET = "10.15"to the existing[env]section with a short comment (whisper.cpp usesstd::filesystem, available from macOS 10.15; keeps plain cargo builds and build scripts such as the whisper-rs-sys CMake build on the same target as the bundle).README.md: state the minimum in the download section (e.g. macOS line: "ab macOS 10.15 (Catalina)"; keep the README's language). IfREADME_DEV.mdlists build/platform requirements, add the same minimum there.- Changelog: a raised minimum OS version is user-visible.
release/0.7.0already has its changelog assembled (## [0.7.0]section inCHANGELOG.md), so add the entry directly to the### Changedsubsection of## [0.7.0]inCHANGELOG.md(English, at most two lines, e.g. "macOS 10.15 (Catalina) or later is now required."), not as a fragment inchangelog.d/.
Acceptance Criteria
-
apps/smart-ssh-community/tauri.conf.jsoncontainsbundle.macOS.minimumSystemVersion: "10.15". -
.cargo/config.toml[env]containsMACOSX_DEPLOYMENT_TARGET = "10.15"with a short comment;GGML_NATIVE = "OFF"stays. - On macOS:
cargo build --release --target aarch64-apple-darwin -p <speech crate>compiles, andtarget/**/build/whisper-rs-sys-*/out/**/CMakeCache.txtcontainsCMAKE_OSX_DEPLOYMENT_TARGET=10.15(or the build output shows-mmacosx-version-min=10.15). Without macOS available: both config values verified by inspection and stated in the PR description. -
README.mdstates macOS 10.15 (Catalina) or later as the minimum. -
CHANGELOG.mdsection## [0.7.0]contains the entry about the macOS 10.15 minimum; no new file inchangelog.d/. - CI is green.
Technical Notes
- Not a security-critical area; no data model change. No workflow change.
- An explicit
MACOSX_DEPLOYMENT_TARGETin a build environment wins over Cargo[env](noforce = true); the Tauri bundler sets it fromminimumSystemVersion, which then matches. [env]values apply on every host;MACOSX_DEPLOYMENT_TARGETis ignored outside Apple targets.
Spec impact: none
Related Work
- Build whisper.cpp without native CPU flags (GGML_NATIVE=OFF) for release builds #534 (added
.cargo/config.toml)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingrelease-blockerMust be fixed on the release branch before the version shipsMust be fixed on the release branch before the version ships
Type
Fields
Priority
P0 - Critical
Stage
Done
Role
None
Activity
smart-ssh-coder commentedon Oct 15, 2026
Implementation update
PR: #537
Implemented:
minimumSystemVersion: 10.15in tauri.conf.json,MACOSX_DEPLOYMENT_TARGET = "10.15"in.cargo/config.toml(GGML_NATIVE kept), README/README_DEV, CHANGELOG [0.7.0] Changed.Remaining / open:
Decisions: none.
smart-ssh-reviewer commentedon Oct 15, 2026
Review result
Approved — see review on #537.
Findings:
Recommended next step: merge once CI is green
smart-ssh-coordinator commentedon Oct 15, 2026
CI of PR #537 is still running (4 check(s) pending). Parked until it finishes; the merge continues automatically.
build(macos): require macOS 10.15 so whisper.cpp builds (#536) (#537)
brokoskokoli commentedon Oct 15, 2026
PR #537 merged into
release/0.7.0by the maintainer (all checks green, approved; the merge step cannot merge into the ruleset-protected release branch).