Skip to content

Homebrew: Could not symlink bin/corepack #56519

@lutzroeder

Description

@lutzroeder

Version

23.5.0

Platform

macOS 15.2 (24C101)
Darwin 24.2.0

Subsystem

No response

What steps will reproduce the bug?

~: brew update
~: brew upgrade
Updated 2 taps (homebrew/core and homebrew/cask).
==> Upgrading 1 outdated package:
node 23.5.0 -> 23.6.0
==> Fetching node
==> Upgrading node
  23.5.0 -> 23.6.0 
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /opt/homebrew
Could not symlink bin/corepack
Target /opt/homebrew/bin/corepack
already exists. You may want to remove it:
  rm '/opt/homebrew/bin/corepack'

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite node --dry-run

Possible conflicting files are:
/opt/homebrew/bin/corepack -> /opt/homebrew/lib/node_modules/corepack/dist/corepack.js
/opt/homebrew/lib/node_modules/corepack/CHANGELOG.md
/opt/homebrew/lib/node_modules/corepack/LICENSE.md
/opt/homebrew/lib/node_modules/corepack/README.md
/opt/homebrew/lib/node_modules/corepack/dist/corepack.js
/opt/homebrew/lib/node_modules/corepack/dist/lib/corepack.cjs
/opt/homebrew/lib/node_modules/corepack/dist/npm.js
/opt/homebrew/lib/node_modules/corepack/dist/npx.js
/opt/homebrew/lib/node_modules/corepack/dist/pnpm.js
/opt/homebrew/lib/node_modules/corepack/dist/pnpx.js
/opt/homebrew/lib/node_modules/corepack/dist/yarn.js
/opt/homebrew/lib/node_modules/corepack/dist/yarnpkg.js
/opt/homebrew/lib/node_modules/corepack/package.json
/opt/homebrew/lib/node_modules/corepack/shims/corepack
/opt/homebrew/lib/node_modules/corepack/shims/corepack.cmd
/opt/homebrew/lib/node_modules/corepack/shims/corepack.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/corepack
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/corepack.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/corepack.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npm
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npm.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npm.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npx
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npx.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/npx.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpm
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpm.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpm.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpx
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpx.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/pnpx.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarn
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarn.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarn.ps1
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarnpkg
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarnpkg.cmd
/opt/homebrew/lib/node_modules/corepack/shims/nodewin/yarnpkg.ps1
/opt/homebrew/lib/node_modules/corepack/shims/npm
/opt/homebrew/lib/node_modules/corepack/shims/npm.cmd
/opt/homebrew/lib/node_modules/corepack/shims/npm.ps1
/opt/homebrew/lib/node_modules/corepack/shims/npx
/opt/homebrew/lib/node_modules/corepack/shims/npx.cmd
/opt/homebrew/lib/node_modules/corepack/shims/npx.ps1
/opt/homebrew/lib/node_modules/corepack/shims/pnpm
/opt/homebrew/lib/node_modules/corepack/shims/pnpm.cmd
/opt/homebrew/lib/node_modules/corepack/shims/pnpm.ps1
/opt/homebrew/lib/node_modules/corepack/shims/pnpx
/opt/homebrew/lib/node_modules/corepack/shims/pnpx.cmd
/opt/homebrew/lib/node_modules/corepack/shims/pnpx.ps1
/opt/homebrew/lib/node_modules/corepack/shims/yarn
/opt/homebrew/lib/node_modules/corepack/shims/yarn.cmd
/opt/homebrew/lib/node_modules/corepack/shims/yarn.ps1
/opt/homebrew/lib/node_modules/corepack/shims/yarnpkg
/opt/homebrew/lib/node_modules/corepack/shims/yarnpkg.cmd
/opt/homebrew/lib/node_modules/corepack/shims/yarnpkg.ps1

How often does it reproduce? Is there a required condition?

This reproduces each time Node.js is upgraded in Homebrew.

What is the expected behavior? Why is that the expected behavior?

node command should be available in /opt/homebrew/bin as it was before the upgrade.

What do you see instead?

node command disappears and is no longer available.

Additional information

Homebrew/homebrew-core#198728
Homebrew/homebrew-core#193982
@ovflowd
Homebrew/homebrew-core#195770
@chenrui333 @daeho-ro

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions