docs: repair the Homebrew install, broken by Homebrew 6 - #57
Merged
Conversation
`brew install --cask --no-quarantine notchbar` — the command README and the landing page both hand out — fails outright: Homebrew removed the flag and now quarantines every cask unconditionally. Dropping the flag is not enough. The installed bundle carries `com.apple.quarantine`, and NotchBar is ad-hoc signed, so Gatekeeper blocks the first launch. Document `xattr -dr com.apple.quarantine /Applications/NotchBar.app` as the step that replaces the flag, and stop claiming the Homebrew route is prompt-free — only the curl route still is, because curl sets no flag. The step repeats on every upgrade: Homebrew carries an unquarantined app forward only while its signing identity is unchanged, and an ad-hoc signature is designated by the binary's `cdhash`, which each build changes. Also fixes the changelog compare links, stale since 0.3.0, so the 0.3.1 and 0.3.2 headings resolve.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The install command we publish in the README and on the landing page does not work any more:
Homebrew removed the flag (
ba25213c81, July 2026) and now quarantines every cask unconditionally. Dropping the flag is not enough — the installed bundle still carriescom.apple.quarantine(0381;…), and NotchBar is ad-hoc signed, so Gatekeeper blocks the first launch. Both docs claimed the opposite: "they install and launch with no prompt at all."What changes
xattr -dr com.apple.quarantine /Applications/NotchBar.app, the step that now does what--no-quarantineused to.curlroute is still described as prompt-free —curlsets no flag, so that claim was and stays true.xattrline. Homebrew carries an unquarantined app forward across an upgrade only while its signing identity is unchanged, and an ad-hoc signature is designated by the binarycdhash, which every build changes — so the release decision lands on:signer_changedand the new copy is quarantined again.Verification
The documented sequence was replayed from a clean uninstall on Homebrew 6.0.20:
swift buildandswift test(102 tests) pass — no source file is touched.Note
This is a workaround, not a fix for the root cause. Every route that sets a quarantine flag now costs the user a step, which only notarization removes. Worth reconsidering whether the tap cask should carry a
caveatsstanza with the same line, so the step is visible to people who never read the README.