Back to Zerobrew

README

README.md

0.2.13.5 KB
Original Source
<div align="center"> <h2>zerobrew</h2>

<p><strong>zerobrew brings uv-style architecture to Homebrew packages on macOS and Linux.</strong></p> </div>

Install

bash
curl -fsSL https://zerobrew.rs/install | bash

After install, run the export command it prints (or restart your terminal).

Quick start

bash
zb install jq                   # install one package
zb install wget git             # install multiple
zb bundle                       # install from Brewfile
zb bundle install -f myfile     # install from custom file
zb bundle dump                  # export installed packages to Brewfile
zb bundle dump -f out --force   # dump to custom file (overwrite)
zb uninstall jq                 # uninstall one package
zb reset                        # uninstall everything
zb gc                           # garbage collect unused store entries
zbx jq --version                # run without linking

Performance snapshot

<div align="center">
PackageHomebrewZB (cold)ZB (warm)Cold SpeedupWarm Speedup
Overall (top 100)452s226s59s2.0x7.6x
ffmpeg3034ms3481ms688ms0.9x4.4x
libsodium2353ms392ms130ms6.0x18.1x
sqlite2876ms625ms159ms4.6x18.1x
tesseract18950ms5536ms643ms3.4x29.5x
</div>

Relationship with Homebrew

zerobrew is more of a performance-optimized client for the Homebrew ecosystem. We rely on:

  • Homebrew's formula definitions (homebrew-core)
  • Homebrew's pre-built bottles when available
  • Homebrew's package metadata and infrastructure

Our innovations focus on:

  • Content-addressable storage for deduplication
  • APFS clonefiles for zero-overhead copying
  • Source build fallback using Homebrew's Ruby DSL

zerobrew is experimental. We recommend running it alongside Homebrew rather than as a replacement, and do not recommend purging homebrew and replacing it with zerobrew unless you are absolutely sure about the implications of doing so.

Project status

<div align="center"> <a href="https://star-history.com/#lucasgelfond/zerobrew&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=lucasgelfond/zerobrew&type=Date&theme=dark" />
</picture>
</a> </div>
  • Status: Experimental, but already useful for many common Homebrew formulas.
  • Feedback: If you hit incompatibilities, please open an issue or PR.
  • License: Dual-licensed under Apache 2.0 OR MIT, at your choice.