librefang 2026.6.29 (new formula)#290413
Conversation
|
Thanks for your pull request. This has been closed because it appears to use an incomplete or outdated pull request template. Please edit this pull request to fill in the current pull request template. This workflow will reopen this pull request automatically once the template is complete. Do not open a new pull request for this. |
|
Thanks for contributing to Homebrew! 🎉 It looks like you're having trouble with a CI failure. See our contribution guide for help. You may be most interested in the section on dealing with CI failures. You can find the CI logs in the Checks tab of your pull request. |
|
The red checks here are artifacts of the brief auto-close → reopen cycle (incomplete template on first submission), not build failures:
The re-triggered Local verification on arm64 macOS, all clean:
Thanks! |
It's definitely failing on linux |
|
You're right — thanks. Root cause: Fixed in the latest push — added: on_linux do
depends_on "dbus"
endVerified by reproducing the Linux build in a clean Could you re-approve the workflows when you have a moment? Sorry for the earlier noise from the close/reopen cycle. |
|
Thanks for the review — addressed all points in the latest push:
The Linux |
|
🤖 An automated task has requested bottles to be published to this PR. Caution Please do not push to this PR branch before the bottle commits have been pushed, as this results in a state that is difficult to recover from. If you need to resolve a merge conflict, please use a merge commit. Do not force-push to this PR branch. |
LibreFang's CLI formula was accepted into homebrew-core on 2026-07-08 (Homebrew/homebrew-core#290413), so `brew install librefang` now works with no tap. Lead the Homebrew section with the official one-liner and a short celebration note linking the PR and the acceptance date. The desktop cask and beta/rc channels still ship through the librefang/tap, so those lines are retained under a follow-up block. Applied consistently across all nine READMEs (English + de/es/fr/ja/ko/pl/uk/zh). Co-authored-by: Evan <[email protected]>
…6416) * ci(release): stop syncing the stable CLI formula to the tap The stable CLI was accepted into homebrew-core (Homebrew/homebrew-core#290413), so `brew install librefang` now resolves there. Continuing to generate a stable `librefang` formula in librefang/homebrew-tap shadows the core formula and duplicates maintenance on every release. Drop `stable` from the sync_homebrew channel set: a stable tag now cascades the newest build into the beta/rc channels only. The keg-only versioned formula (`librefang@<ver>`) is still generated for version pinning, and the cask sync job is untouched (the desktop app is not in core). ALL_CHANNELS stays `(stable beta rc)` so the beta/rc formulae keep their `conflicts_with "librefang"` line, which now points at the core formula. Also fix the release-notes install block: the stable CLI line no longer sits under `brew tap`, it installs directly from homebrew-core; the tap line now covers only the pre-release CLI channels and the desktop app. The tap-side cleanup (remove the orphaned stable formula, add tap_migrations.json, update the tap README) lands in librefang/homebrew-tap. * docs(changelog): note the tap stable-formula sync removal (#6416) * docs(readme): expand install-method sections by default Add `open` to every install `<details>` (Homebrew, Arch, Docker, Cloud Deploy) across all nine READMEs so the install options render expanded instead of collapsed. * ci(release): emit valid class names and single cask conflicts_with in tap sync Two latent bugs in the Homebrew tap sync surfaced by `brew readall`: - The version-pinned formula class name stripped only `.` (`tr -d '.'`), leaving the `-` in pre-release versions, so `[email protected]` generated `class LibrefangAT2026629-beta14 < Formula` — a Ruby syntax error. Derive it with Homebrew's own `Formulary.class_s` rules instead (`LibrefangAT2026629Beta14`). - The cask generator wrote one `conflicts_with` stanza per other channel, but casks allow only one; collect the channels into a single array literal (`conflicts_with cask: ["librefang", "librefang-rc"]`). Fixed in both `release.yml` and its `release-desktop.yml` mirror. The already-published broken tap artifacts are corrected in librefang/homebrew-tap. --------- Co-authored-by: Evan <[email protected]>
* chore: move stable CLI to homebrew-core LibreFang's stable CLI was accepted into homebrew-core (Homebrew/homebrew-core#290413), so `brew install librefang` now resolves there. Remove the tap's stable `Formula/librefang.rb` (it shadowed the core formula) and add tap_migrations.json so existing `librefang/tap/librefang` installs migrate to homebrew/core on `brew upgrade`. Update the README to install the stable CLI from core and scope the tap to the desktop app, the pre-release CLI channels, and version pinning. The desktop cask keeps the name `librefang`; formula and cask names coexist, and the migration entry only redirects the formula token. The beta/rc formulae, all casks, and the keg-only versioned formulae are unchanged. The release pipeline stops regenerating the stable formula in librefang/librefang#6416. * chore: fix invalid class names and cask conflicts_with in generated artifacts These were emitted by the release pipeline's tap sync and are corrected upstream in librefang/librefang#6416. - 40 version-pinned formulae had `class LibrefangAT<ver>-beta<N>` (a Ruby syntax error from leaving the `-` in the class name); regenerate the class names with Homebrew's `Formulary.class_s` rules (e.g. `LibrefangAT2026629Beta14`). - The `librefang-beta` / `librefang-rc` casks carried two `conflicts_with` stanzas, which casks reject; collapse each into a single array literal. `brew readall librefang/tap` now passes with zero errors.
LibreFang is a self-hostable operating system for autonomous AI agents (Rust, MIT). Upstream: https://github.com/librefang/librefang — 316★ (self-submission notability threshold is 225★), first stable tag
v2026.6.29. I am the upstream maintainer (self-submission). The formula builds from source and links the systemopenssl@3(upstream enablesopenssl/vendoredfor its cross-compiled release artifacts; the formula setsOPENSSL_NO_VENDOR=1soopenssl-syslinks Homebrew's OpenSSL instead of bundling one).HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>?brew test <formula>?brew audit --strict <formula>(after doingHOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>)? If this is a new formula, does it passbrew audit --new <formula>?AI was used to generate or assist with generating this PR. Please specify below how you used AI to help you, and what steps you have taken to manually verify the changes.
Claude (Claude Code) drafted the formula and ran the local verification, which I reviewed before submitting:
brew style— clean (0 offenses).HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source librefang— succeeded (8m54s).otool -Lon the built binary — links/opt/homebrew/opt/openssl@3/lib/libssl.3.dylib+libcrypto.3.dylib(system OpenSSL viaOPENSSL_NO_VENDOR=1, not a vendored copy).brew test librefang— passes.brew audit --strict --new --online librefang— passes.Verified on arm64 macOS (Tahoe).