msitarzewski / msitarzewski/brew-browser

Adopt already-installed apps (Updatest-style discovery → brew --adopt)

Open
#98 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rust
Stars
1k
Forks
30
Avg merge
3d 10h
Merged PRs (30d)
6

Description

Source: Reddit feedback (2026-06-15), same thread as the telemetry question. Maintainer committed to filing.

Request: Like Updatest, detect apps already installed on the Mac (e.g. in /Applications) that have a matching Homebrew cask but aren't currently brew-managed, and offer to adopt them into Homebrew management — so Brew Browser can track/update apps the user installed manually.

Notes for implementation:

  • Homebrew supports this natively: brew install --cask --adopt <token> adopts a matching existing install instead of erroring on "It seems there is already an App at...".
  • Discovery: enumerate installed .app bundles, match against the cask catalog (by name/bundle id / app stanza artifact), and surface unmanaged-but-matchable apps in a "Discovered" surface with an Adopt action.
  • Be conservative on matching (avoid false adoptions); confirm-gated per app.
  • Parity: both shells (Tauri + native).

Related: ignore/pin specific casks so they're never updated is tracked separately as #90; in-app update %-progress #95 and concurrent-update handling #96.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Tauri and native shell entry points, then review how installed apps under /Applications and the cask catalog can be matched by name, bundle ID, or app artifact. Done means conservative matches appear in a Discovered surface in both shells, each has a confirm-gated Adopt action using brew install --cask --adopt, and false adoptions are avoided.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, rust, tauri
Domain
desktop, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.