Skip to content

validatedev/BrewServicesManager

Repository files navigation

BrewServicesManager

BrewServicesManager Icon

A macOS menu bar app for managing Homebrew services

macOS 15.0+ Swift 6.2+ SwiftUI MIT License


Screenshot

BrewServicesManager Screenshot


Overview

A macOS menu bar app for managing Homebrew services. Start, stop, and restart services without the terminal.

Key Features

  • Homebrew Integration — Manage all brew services from the menu bar
  • Real-time Status — View service status at a glance
  • Quick Actions — Start, stop, and restart services instantly
  • System Domain Support — Manage both user and system-level services with privilege escalation
  • Auto-refresh — Configurable refresh interval
  • Debug Mode — Verbose output for troubleshooting

Requirements

  • macOS 15.0 (Sequoia) or later
  • Homebrew installed and configured
  • Services installed via Homebrew (e.g., brew install postgresql, brew install redis)

Installation

Option 1: Download Pre-built Release

  1. Download the latest .dmg from the Releases page
  2. Open the DMG and drag BrewServicesManager to your Applications folder
  3. Launch the app from Applications or Spotlight

Option 2: Build from Source

  1. Clone the repository:

    git clone https://github.com/validatedev/BrewServicesManager.git
    cd BrewServicesManager
  2. Open the project in Xcode:

    open BrewServicesManager.xcodeproj
  3. Build and run (⌘R) or archive for distribution (Product → Archive)


Usage

Getting Started

  1. Launch the App — BrewServicesManager runs as a menu bar-only application. Look for the mug icon (☕) in your menu bar.

  2. View Services — Click the menu bar icon to see all your Homebrew services and their current status.

  3. Manage Services — Hover over a service to reveal quick actions:

    • ▶️ Start — Start a stopped service
    • ⏹️ Stop — Stop a running service
    • 🔄 Restart — Restart a running service
    • ℹ️ Info — View detailed service information

Service Domains

BrewServicesManager supports two service domains:

Domain Description Privileges
User Services running under your user account Standard user permissions
System System-wide services (root-level) Requires administrator password

Switch between domains in Settings → Service Domain.

Global Actions

Perform bulk operations on all services:

  • Start All — Start all stopped services
  • Stop All — Stop all running services
  • Restart All — Restart all services

Settings

Access settings via the ⚙️ Settings menu item:

  • Service Domain — Switch between User and System domains
  • Sudo Service User — Specify a user for sudo operations (system domain)
  • Auto-refresh Interval — Set how often to refresh the service list (0 = disabled)
  • Debug Mode — Enable verbose output for troubleshooting

Building & Development

Prerequisites

  • Xcode 26.0 or later
  • macOS 15.0 or later (for running)
  • Homebrew (for testing service management)

Build Commands

# Build for development
xcodebuild -scheme BrewServicesManager -configuration Debug build

# Build for release  
xcodebuild -scheme BrewServicesManager -configuration Release build

# Run tests
xcodebuild -scheme BrewServicesManager test

Troubleshooting

Common Issues

BrewServicesManager can't find Homebrew

Ensure Homebrew is installed and accessible:

# Check if brew is in PATH
which brew

# If using Apple Silicon, ensure /opt/homebrew/bin is in PATH
echo $PATH

BrewServicesManager searches for Homebrew in:

  • /opt/homebrew/bin/brew (Apple Silicon)
  • /usr/local/bin/brew (Intel)
Services show "Error" status
  1. Open Service Info by clicking the ℹ️ button
  2. Check the error message and exit code
  3. Enable Debug Mode in Settings for verbose output
  4. Verify the service plist is valid:
    brew services info <service-name>

License

This project is licensed under the MIT License — see the LICENSE file for details.


Acknowledgments

  • Homebrew — The missing package manager for macOS
  • SF Symbols — Apple's iconography system
  • SwiftAgents - Base AGENTS.md file for best practices

Made with 🦆

About

A macOS menu bar app for managing Homebrew services

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages