Skip to content

fix(install): always check Xcode license on macOS#4153

Merged
theonlyhennygod merged 1 commit intomasterfrom
fix/install-xcode-license-always-check
Mar 21, 2026
Merged

fix(install): always check Xcode license on macOS#4153
theonlyhennygod merged 1 commit intomasterfrom
fix/install-xcode-license-always-check

Conversation

@theonlyhennygod
Copy link
Copy Markdown
Collaborator

Summary

  • The Xcode license test-compile from fix(install): reliable Xcode license detection via test-compile #4151 was inside install_system_deps(), which only runs with --install-system-deps. On macOS default installs, this was never called
  • Moved the check into the unconditional main flow so it always fires on Darwin
  • Tested locally on a machine with un-accepted Xcode license — installer now exits immediately with a clear remediation message

Before

✓ System dependencies satisfied
...
error[E0463]: can't find crate for `std`
  = note: cc exited with signal: 69

After

✗ The C compiler failed (Xcode/CLT license not accepted).
✗ Run:  sudo xcodebuild -license accept
✗ then re-run this installer.

Test plan

  • bash -n install.sh passes
  • On macOS with un-accepted license: installer exits early with clear error
  • On macOS with accepted license: installer proceeds normally
  • CI passes

…stall-system-deps

The Xcode license test-compile was inside install_system_deps(), which
only runs when --install-system-deps is passed. On macOS the default
path skipped this entirely, so users hit `cc` exit code 69 deep in
cargo build. Move the check into the unconditional main flow so it
always fires on Darwin.
@theonlyhennygod theonlyhennygod merged commit 48aba73 into master Mar 21, 2026
25 of 27 checks passed
@theonlyhennygod theonlyhennygod deleted the fix/install-xcode-license-always-check branch March 21, 2026 15:29
webhive pushed a commit to webhive/zeroclaw that referenced this pull request Mar 24, 2026
…stall-system-deps (zeroclaw-labs#4153)

The Xcode license test-compile was inside install_system_deps(), which
only runs when --install-system-deps is passed. On macOS the default
path skipped this entirely, so users hit `cc` exit code 69 deep in
cargo build. Move the check into the unconditional main flow so it
always fires on Darwin.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant