Migration from Homebrew

Coldbrew is designed to work alongside Homebrew. Migrate at your own pace.

Coldbrew Works Alongside Homebrew

You don't need to uninstall Homebrew to use Coldbrew. Both can coexist on the same system. Just make sure Coldbrew's bin directory comes first in your PATH:

export PATH="$HOME/.coldbrew/bin:$PATH"  # Coldbrew first

This way, packages installed with Coldbrew take precedence, but Homebrew packages are still available as a fallback.

Command Comparison

Most commands work the same way. Here's a quick reference:

HomebrewColdbrew
brew install nodecrew install node
brew uninstall nodecrew uninstall node
brew updatecrew update
brew upgradecrew upgrade
brew search nodecrew search node
brew info nodecrew info node
brew listcrew list
brew tap user/repocrew tap user/repo
brew cleanupcrew gc

Key Differences

No Auto-Updates

Homebrew may auto-update when you run brew install. Coldbrew never does this. crew install only installs. Run crew update explicitly when you want to refresh the index.

Interactive Upgrades

crew upgrade shows you a plan and asks for confirmation. No more surprise dependency cascades. Use --yes for CI environments.

User Space Installation

Homebrew installs to /opt/homebrew or /usr/local (may require sudo). Coldbrew always installs to ~/.coldbrew. No sudo ever.

Multiple Versions

Homebrew only keeps one version per package. Coldbrew lets you install node@18, node@20, and node@22 side-by-side.

Migration Steps

1. Install Coldbrew

curl -fsSL coldbrew.sh/install | bash

2. Set Up Your PATH

Add Coldbrew to your PATH before Homebrew:

# In ~/.zshrc or ~/.bashrc export PATH="$HOME/.coldbrew/bin:$PATH"

3. Reinstall Key Packages

Start with packages you use most often:

crew update
crew install node python go rust

4. Migrate Project by Project

For each project, create a coldbrew.toml:

cd my-project
crew init
# Edit coldbrew.toml to add your dependencies
crew lock

5. Optional: Remove Homebrew Duplicates

Once you're comfortable, you can remove packages from Homebrew:

brew uninstall node python go

Packages That May Need Homebrew

Some packages with complex post-install hooks or system integrations may work better with Homebrew. Coldbrew focuses on development tools with straightforward installs. For packages like database servers or system daemons, you may want to keep using Homebrew.

Rollback

If you need to go back to Homebrew, simply remove Coldbrew's PATH entry and optionally delete the directory:

# Remove from ~/.zshrc
# export PATH="$HOME/.coldbrew/bin:$PATH"

# Optional: delete Coldbrew
rm -rf ~/.coldbrew