Skip to content

Bundled ripgrep binary has wrong architecture (arm64 shipped to Intel Macs) #129

@aadaam

Description

@aadaam

Description

The bundled ripgrep.node binary in the npm package has the wrong architecture. Intel Macs (x86_64) are receiving arm64 binaries, causing the ripgrep RPC to fail.

Error Message

Error: dlopen(/Users/adam/.npm-global/lib/node_modules/happy-coder/tools/unpacked/ripgrep.node, 0x0001): 
tried: '/Users/adam/.npm-global/lib/node_modules/happy-coder/tools/unpacked/ripgrep.node' 
(mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64h' or 'x86_64'))

Environment

  • macOS on Intel (x86_64)
  • Node.js v22.11.0
  • happy-coder installed via npm

Impact

This breaks any features that rely on ripgrep, including file autocomplete (@ mentions) in the Happy web client.

Expected Behavior

The package should either:

  1. Detect the system architecture and include the correct binary
  2. Include binaries for both architectures
  3. Fall back to system-installed rg if bundled binary fails

Steps to Reproduce

  1. Install happy-coder on an Intel Mac: npm install -g happy-coder
  2. Try to use any ripgrep-dependent feature
  3. Observe the dlopen error about architecture mismatch

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions