A macOS menu bar app that monitors Homebrew updates and lets you upgrade packages directly from the tray.
Find a file
maxsoch 861c356e80 upgrade formulae one at a time and surface failed upgrades
brew's batch upgrade --formula errors out on the first broken formula
(no bottle for this macOS, deprecated, …), blocking every other
pending formula — and the failure only showed in the logs, so the
menu silently fell back to "N outdated" as if nothing had run.
Formulae now upgrade individually like casks already did, failures
of any kind (including a failed reinstall fallback) are collected,
and the status line reports them once after the closing refetch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 19:22:54 +02:00
.claude/skills add dev tooling from /init: swiftlint, skills, gitignore; apply swiftformat 2026-07-06 21:07:17 +02:00
asset addind logo as asset 2026-06-30 17:47:46 +02:00
BrewBar upgrade formulae one at a time and surface failed upgrades 2026-07-13 19:22:54 +02:00
BrewBar.xcodeproj re-release as 0.1: app is still pre-release quality 2026-07-09 18:52:17 +02:00
BrewBarTests fetch outdated as JSON; auto-upgrade only for matching package kinds 2026-07-06 22:27:37 +02:00
Casks re-release as 0.1: app is still pre-release quality 2026-07-09 18:52:17 +02:00
.gitignore add Homebrew cask so BrewBar installs via brew 2026-07-07 06:21:39 +02:00
.swiftlint.yml add dev tooling from /init: swiftlint, skills, gitignore; apply swiftformat 2026-07-06 21:07:17 +02:00
LICENSE Initial commit 2026-06-30 15:16:27 +00:00
README.md update README: features, brew install, build instructions 2026-07-07 06:41:18 +02:00
RELEASING.md re-release as 0.1: app is still pre-release quality 2026-07-09 18:52:17 +02:00

BrewBar's logo

BrewBar

A macOS menu bar app that monitors Homebrew updates and lets you upgrade packages directly from the tray.

Features

  • 🔄 Periodic update checks — configurable from 30 minutes to 24 hours, or any custom interval
  • 📋 Outdated package list with versions (wget 1.21 → 1.22), one-click single upgrades
  • 📦 Upgrade All, with an optional confirmation dialog
  • 🤖 Optional auto-upgrade, separately configurable for formulae and casks
  • 👀 Self-updating casks (--greedy) included in checks, can be disabled
  • 🔔 Optional notification when new updates appear
  • 🔢 Optional outdated count next to the menu bar icon
  • 🔑 Native password dialog naming the app when an upgrade needs admin rights
  • 📜 Log window with the full brew output
  • ⚙️ Launch at login

Install

brew tap maxsoch/brewbar https://forgejo.socheleau.fr/maxsoch/BrewBar.git
brew install --cask maxsoch/brewbar/brewbar
xattr -dr com.apple.quarantine /Applications/BrewBar.app

The xattr line is needed because the app is not notarized — without it, Gatekeeper blocks the app on any Mac that didn't build it. Repeat it after upgrades.

Requires: macOS 13+ (Ventura) and Homebrew.

Build from source

git clone https://forgejo.socheleau.fr/maxsoch/BrewBar.git
cd BrewBar
xcodebuild -project BrewBar.xcodeproj -scheme BrewBar -configuration Release -destination "platform=macOS" build SYMROOT=build
open build/Release/BrewBar.app

No dependencies — plain AppKit, no SPM/CocoaPods/Carthage.

Releases are documented in RELEASING.md.