Today, I’d like to announce Homebrew 5.0.0. The most significant changes since 4.6.0 are download concurrency by default, official support for Linux ARM64/AArch64, timescales for deprecating macOS Intel and removing macOS Gatekeeper bypass behaviours.
Major changes and deprecations since 4.6.0:
HOMEBREW_DOWNLOAD_CONCURRENCY=autois set by default. This enables parallel downloads by default for all users. It can be disabled by settingHOMEBREW_DOWNLOAD_CONCURRENCY=1. Concurrent downloads now have progress reporting. We expect there may be a long-tail of issues, please report them!- Homebrew has promoted Linux ARM64/AArch64 to Tier 1 support.
- Casks without codesigning are deprecated. We will disable all Homebrew/homebrew-cask casks that fail Gatekeeper checks in September 2026.
- Homebrew now provides official macOS 26 (Tahoe) support.
Homebrew’s future macOS support is noted in our Support Tiers document
at https://docs.brew.sh/Support-Tiers#future-macos-support.
- In September (or later) 2026, Homebrew will not run on macOS Catalina 10.15 and earlier and macOS Intel x86_64 will move to Tier 3, dropping CI support and no additional bottles (binary packages) will be built for macOS Intel.
- In September (or later) 2027, Homebrew will not run on macOS Big Sur 11 on Apple Silicon or at all on Intel x86_64.
HOMEBREW_USE_INTERNAL_APIallows opt-in to the new, smaller internal Homebrew JSON API. This will become the default behaviour in a later version of Homebrew. Please consider opting-in now and reporting any issues you encounter.--no-quarantineand--quarantineflags have been deprecated as Homebrew does not wish to easily provide circumvention to macOS security features.- Various other deprecations/disables/removals.
Other changes since 4.6.0 I’d like to highlight are the following:
brew bundlesupports installinggopackages in Brewfile.brew bundle --no-goandHOMEBREW_BUNDLE_DUMP_NO_GOwill opt-out of this behaviour.brew bundledefaults the globalBrewfilelocation to the user configuration directory.brew bump-*-prwill automatically tap core taps if needed.brew doctorskips the disclaimer when--quietis passed.brew doctorwarns on apkg-configmacOS SDK version mismatch.brew mcp-serverprovides more development commands.brew search --alpinesearches Alpine Linux packages.brew servicessupportskeep_alivesystemctlservices withRestart=on-failure.brew info --sizesshows the sizes of each formula and cask.brew auditwill do online checks for Codeberg repositories.brew lgtmruns multiple style checks in one command.brew releasenow runs the release workflow and uploads artifacts. This means Homebrew/brew now uses immutable releases.brew style --changedchecks style on all changed files in a repository or tap.Homebrew/homebrew-test-bot,Homebrew/homebrew-portable-rubyandHomebrew/command-not-foundwere imported into Homebrew/brew. This means all Homebrew external commands have now been moved into primary repositories (Homebrew/brew, Homebrew/homebrew-core or Homebrew/homebrew-cask)./usr/localprefix replacement is more selective to increase the number of relocatable bottles.launchctlservice removalsudofailures are non-fatal.CGO_ENABLEDis enabled by default on ARM64 Linux.pkgconfwill be reinstalled automatically on a macOS version mismatch.rubydoc.brew.shhas been redirected todocs.brew.sh/rubydoc.headGit URLs always require a branch name.HOMEBREW_FORBIDDEN_CASK_ARTIFACTSallows selectively blocking cask install methods.HOMEBREW_DEVELOPERis required when installing formulae from paths.- Formula’s
compatibility_versionDSL will help us reduce the number of upgrades needed in future. - Formula’s
no_linkageDSL will help stricter linkage detection and avoid issues. - Formulae can be migrated to casks within the same tap.
- Linux’s host
libstdc++(instead ofgcc) is used for automatically determining if a brewedgccdependency is needed. - Homebrew will avoid downloading JSON API files multiple times per run.
- Homebrew no longer provides CI for macOS Ventura in Homebrew/core.
- Homebrew’s Linux CI uses GCC 12.
- Homebrew will not run on macOS Mojave and older.
- Homebrew prefers LLVM’s
clangovergccon macOS. - Homebrew defaults to
-O2withgcc. - Dependencies are resolved correctly when installing older bottles.
- Casks are better supported and have better usability on Linux.
Finally:
- We have clarified our stance on adult content in Homebrew formulae and casks.
- We have loosened our criteria for accepting software into Homebrew.
- Homebrew accepts donations through GitHub Sponsors, OpenCollective and Patreon. If you can afford it, please consider donating.
Thanks to all our hard-working maintainers, contributors, sponsors and supporters for getting us this far.