Homebrew/BrewUI

GitHub Trending (daily) Tools

Summary

BrewUI is Homebrew's official macOS GUI that provides a graphical interface for package management while maintaining complete transparency with underlying Homebrew operations.

📺 Homebrew's official macOS GUI
Original Article
View Cached Full Text

Cached at: 09/15/26, 02:32 PM

Homebrew/BrewUI

Source: https://github.com/Homebrew/BrewUI

🧑‍💻 BrewUI

BrewUI user interface

Homebrew’s official macOS GUI: making package management approachable for users who prefer graphical interfaces over Terminal, while maintaining complete transparency about underlying Homebrew operations.

💡 Motivation

Enable CLI-averse users to safely discover, install, update, and manage Homebrew packages through a native SwiftUI interface that never hides what Homebrew is doing.

📲 Tech

  • Swift 6.0 with strict concurrency · SwiftUI · Swift Package Manager
  • macOS Tahoe 26+
  • Data from the brew CLI and the Homebrew JSON API

📦 Installation

brew install --cask homebrew-app

Homebrew configuration

BrewUI always launches Homebrew through /bin/zsh, including app self-upgrades. It disables optional user and system shell startup files with --no-rcs --no-global-rcs and supplies a clean environment. PATH contains only the directory of the located brew executable followed by /usr/bin:/bin. Your login shell, shell aliases, exported variables and custom PATH do not configure Homebrew in BrewUI.

Put your Homebrew configuration variables in brew.env files. Homebrew reads these itself:

ScopeFile
User~/.homebrew/brew.env
Installation<Homebrew prefix>/etc/homebrew/brew.env
System/etc/homebrew/brew.env

For example, add this line to ~/.homebrew/brew.env:

HOMEBREW_NO_ENV_HINTS=1

Use literal NAME=value lines without export, shell expansion or command substitution. User settings normally override installation settings, which override system settings. HOMEBREW_SYSTEM_ENV_TAKES_PRIORITY=1 in the system file makes that file take precedence. See Homebrew’s environment documentation. An XDG_CONFIG_HOME exported by your shell is also ignored; use the user file above.

Relaunch BrewUI after changing configuration, then check the Configuration tab. Its report and Doctor describe Homebrew’s environment in the app and may differ from Terminal. BrewUI still sets output controls for its console and self-upgrade log.

System zsh always reads /etc/zshenv, if present; its execution cannot be disabled. BrewUI clears the environment again afterwards and discards startup output so banners do not reach Homebrew’s reports or the console. If startup fails before Homebrew runs, its diagnostics are retained. See zsh’s startup-file documentation.

🛠️ Development

After cloning:

./scripts/bootstrap

This installs Mint from Brewfile, runs mint bootstrap to build the SwiftFormat and SwiftLint versions pinned in Mintfile, enables repository git hooks, and resolves Swift package dependencies for Homebrew.xcodeproj.

After bootstrap, commits automatically run checks on staged Swift files:

  1. mint run swiftformat
  2. mint run swiftlint (with --fix, then strict validation)

If unresolved lint violations remain, the commit is blocked and the hook prints specific SwiftLint failures so you can fix and re-commit.

🚧 Status

Stable and under active development.

📄 Licence

AGPL-3.0. If you reuse or adapt the source the AGPL terms apply, including the network-use clause.

Similar Articles

Homebrew 7.0.0

Hacker News Top

Homebrew 7.0.0 has been released with major improvements including faster installations, enhanced security features, a native macOS app, and changes to support for older macOS versions and Intel Macs.

Show HN: Homebrew 6.0.0

Hacker News Top

Homebrew 6.0.0 introduces tap trust security, a new default internal JSON API for faster updates, Linux sandboxing via Bubblewrap, and various improvements based on user survey feedback.

Brew

Product Hunt

Brew is a tool that uses a design similar to Claude for email marketing.

Show HN: Davit, a Apple Containers UI

Hacker News Top

Davit is a free, open-source native macOS app built with SwiftUI that provides a UI for Apple's container platform on Apple silicon, allowing users to run Linux containers without Docker Desktop.

GitSync for macOS

Product Hunt

A graphical interface for managing GitHub repositories on macOS.