v0.2.1
This release is about trust in what the app tells you. Four things it reported, or
failed to report, were not true. Each is now correct, and each correction is held
in place by a check that fails if it regresses.
The app can now tell you when its root helper is stale. Installing a new build
left the old privileged helper in place, so privileged fixes never reached an
armed setup — and nothing said so. The panel and the Preferences window now raise
an advisory when the installed helper differs from the one in the build you are
running, carrying the exact command that repairs it. Paste it and the advisory
clears without relaunching.
A hook that cannot fire is no longer reported as wired. A tool event whose
matcher was missing, null, or not a string was counted as healthy, so
coffee-bar would tell you your hooks were fine while they could never run. Tool
events now require a matcher the tool can actually use, and lifecycle events must
carry none at all.
The app inside the disk image is stapled. Previously the image was notarised
but the app inside it was not stapled, so a first launch with no network had no
ticket to check. The app is now signed, notarised and stapled before the image
is built around it.
Two architectural justifications no longer rest on a dead premise. Comments
explaining why the privileged path avoids XPC peer pinning and SMAppService were
written when no signed bundle existed. One has shipped since v0.2.0. Those
decisions are now recorded as unimplemented rather than impossible, and the open
question is tracked in #71.
Install
Download — coffee-bar-0.2.1.dmg below is signed with a Developer ID,
notarised by Apple, and stapled. Gatekeeper accepts it, including on a first
launch with no network.
Homebrew — brew install coffee-bar builds from source. That is a different
artifact: a source build is ad-hoc signed, carries no Developer ID, and
Gatekeeper does not accept it the way it accepts the download. Use the disk image
above if you want the signed, notarised build.
Requirements
- macOS 14.0 or later.
- Architectures:
arm64. This is not a universal binary — Intel Macs are not
supported by this build.
Verifying the download
shasum -a 256 coffee-bar-0.2.1.dmg
# 0c1cd40bbd2c8a1bd2e1cd54122ab49d7f5f40b5a716772d0713917178f11288
spctl --assess --type open --context context:primary-signature -vv coffee-bar-0.2.1.dmg
# accepted
# source=Notarized Developer ID
Both commands above were run against the published file, and the output shown is
what they printed.