Pre-building bottles or otherwise "hooking" into the pipeline to attest executables #6464
Unanswered
heaths
asked this question in
Writing Formulae/Casks
Replies: 1 comment 4 replies
-
If you just want to distribute precompiled binaries, it would be easier to just use casks instead of formulae. Casks support Linux, you can check |
Beta Was this translation helpful? Give feedback.
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Output of
brew config
Output of
brew doctor
Description of issue
I'm using GitHub attestation for executables and their tarballs that contain them for provenance. I already build all the platforms Homebrew/linuxbrew would need for bottles; yet, using
brew bump-formula-pr
doesn't seem to give me a way to specify bottles I've already built and attested, so brew builds the binaries.Currently, all my executables are built and published in https://github.com/heaths/akv-cli-rs. As of a couple releases ago, the tarballs - and soon the executables therein - are attested. I have a workflow that kicks off when a release is published and creates a PR in https://github.com/heaths/homebrew-tap, which was created from a template for taps and customized only a little afterward to add linux aarch64 support.
My bottles are defined in https://github.com/heaths/homebrew-tap/blob/main/Formula/akv.rb, but after reading through relevant docs a few times, I'm not even sure what the hash represents. It's not the hash of the containers stored in Packages for that repo. Is there a way I can just give it URLs to pre-built and attested tarballs? It's my own tap so I'm not really concerned about what homebrew/homebrew-core supports, though it would be nice to keep that a possibility.
I've resigned to the fact that, if possible in a formulate (if nothing else, I could just write my own support in the
install
func or something), I probably can't usebrew bump-formula-pr
but I'd like to try to stick with the intended flow. Is there any other way to "hook" the build process to inject commands like attesting binaries? Obviously this would only work for bottles built for the formula.Beta Was this translation helpful? Give feedback.
All reactions