Skip to content

chore: drop support for Intel macOS (x86_64-apple-darwin) #426

Description

@kexi

Summary

Drop support for Intel macOS (x86_64-apple-darwin / bun-darwin-x64) and ship Apple Silicon (aarch64-apple-darwin / bun-darwin-arm64) only for the macOS distribution.

Motivation

  • All Macs sold since late 2020 are Apple Silicon, and Apple has wound down Intel Mac support.
  • Building, testing, and signing the Intel artifact adds CI time, release surface area, and a native NAPI binary (@kexi/vibe-native-darwin-x64) that we no longer need to maintain.
  • Users still on Intel Macs can keep using older releases; new versions will simply not ship a darwin-x64 binary.

Scope of changes

Concrete locations that reference Intel macOS today:

Build / release pipeline

  • .github/workflows/release.yml — remove the x86_64-apple-darwin matrix entry, darwin_x64 SHA, and vibe-darwin-x64 artifact handling (incl. Homebrew/Nix formula updates)
  • .github/workflows/beta-release.yml — same as above for the beta channel
  • .github/workflows/ci.yml — remove the bun-darwin-x64 build matrix entry
  • .github/workflows/publish-npm.yml — remove the x86_64-apple-darwin NAPI publish target
  • scripts/build.ts — remove x86_64-apple-darwin from BUN_TARGETS and the darwin + x64 branch in detectCurrentTarget

Native module

  • packages/native/package.json — drop x86_64-apple-darwin from the napi targets
  • packages/native/index.js — remove the darwin-x64 loader branches
  • packages/core/src/runtime/node/native.ts:48-50 — remove the darwin + x64 branch

Distribution

  • Formula/vibe.rb / Formula/vibe-beta.rb (Homebrew) — remove the Intel macOS bottle / URL / SHA placeholders
  • flake.nix — remove the darwin-x64 entry

Docs

  • docs/specifications/bun-runtime.md and docs/specifications/bun-runtime.ja.md — update the supported targets table and Mermaid diagram (currently lists bun-darwin-x64<br/>macOS Intel)
  • Add a changelog entry noting the dropped target

Out of scope

  • Linux x64 / arm64, Windows x64 — unchanged
  • Any runtime-side feature change

Acceptance criteria

  • pnpm run check:all passes
  • CI matrix and release workflows no longer build a darwin-x64 artifact
  • Homebrew / Nix consumers on Apple Silicon keep working; Intel Mac users see a clear "unsupported platform" message instead of a silent failure
  • Docs and changelog reflect the dropped target (both EN and JA per docs-i18n rule)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions