Skip to content

install.sh: install into ~/.vcx instead of Bun's global manifest - #2

Merged
akrupa-appto merged 1 commit into
mainfrom
install-sh-self-contained
Sep 2, 2026
Merged

install.sh: install into ~/.vcx instead of Bun's global manifest#2
akrupa-appto merged 1 commit into
mainfrom
install-sh-self-contained

Conversation

@akrupa-appto

Copy link
Copy Markdown
Collaborator

Problem

On a Mac with Bun 1.4.0, the one-liner failed at the vcx step:

Installing vcx (v0.3.0) ...
error: refusing to install dependency with unsafe name

The same command passes on a fresh machine (Linux and the macOS CI job, same Bun version), so the trigger is the state of Bun's global package manifest on that machine. Bun 1.4.0 appends a new vcx-cli key to the global manifest on every bun install -g instead of replacing it, and a leftover entry from an earlier tarball install can poison every later global install.

Fix

install.sh no longer uses bun install --global. It writes a fresh package.json into ~/.vcx (override with VCX_INSTALL_DIR) with vcx-cli and vercel as dependencies, runs bun install there, and links vcx into Bun's global bin directory. vercel is linked too, but only when nothing on PATH already provides it. Re-running the script upgrades.

Verified in fresh homes with Bun preinstalled and with the script installing Bun, plus a re-run. shellcheck clean.

🤖 Generated with Claude Code

Bun 1.4.0 refuses the global install on some machines with
'refusing to install dependency with unsafe name' once the global manifest
carries entries from earlier installs. install.sh now installs vcx and Vercel
CLI into ~/.vcx with a fresh manifest and links the bins into Bun's bin dir.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@akrupa-appto
akrupa-appto merged commit c725e48 into main Sep 2, 2026
28 checks passed
@akrupa-appto
akrupa-appto deleted the install-sh-self-contained branch September 2, 2026 08:28
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