Skip to content

codedeviate/homebrew-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

codedeviate/homebrew-cli

Homebrew tap for codedeviate's Rust CLI tools.

Usage

brew tap codedeviate/cli
brew install <formula>

Or in one shot, without an explicit tap step:

brew install codedeviate/cli/<formula>

Available formulae

Formula Description
batty Cat clone with syntax highlighting, git integration, and Rhai support
recon Versatile network reconnaissance CLI: HTTP/TLS/DNS, multi-protocol probes, and a Rhai script engine
recon-impersonate recon with browser TLS+H2 fingerprint impersonation (BoringSSL via rquest) — conflicts with recon
sqlt Multi-dialect SQL parser and translator (MySQL, MariaDB, PostgreSQL, MSSQL, SQLite)
tess Less-style terminal pager with structured-log filtering and pretty-printing
webrunner Zero-config development web server with CGI and .htaccess support

recon and recon-impersonate both install a binary named recon and therefore conflict — pick one:

brew install codedeviate/cli/recon              # lean build
brew install codedeviate/cli/recon-impersonate  # adds BoringSSL + cmake at build time

Releasing a new version

For each formula, when the upstream project tags a new release:

./scripts/bump.sh <formula> <version>   # e.g. ./scripts/bump.sh tess 0.9.1
git diff Formula/<formula>.rb           # sanity check
git commit -am "<formula> <version>"
git push

scripts/bump.sh:

  1. Verifies the upstream tarball at https://github.com/codedeviate/<repo>/archive/refs/tags/v<version>.tar.gz returns HTTP 200.
  2. Computes the sha256 of that tarball.
  3. sed-replaces url and sha256 in Formula/<formula>.rb.

After bumping, smoke-test before announcing:

brew install --build-from-source codedeviate/cli/<formula>
brew test codedeviate/cli/<formula>
brew audit --strict codedeviate/cli/<formula>

How installs work (and why nothing here is signed)

Every formula is a source-build formula. When you run brew install codedeviate/cli/<tool> Homebrew does the following on your machine:

  1. Downloads the GitHub source tarball pinned by url + sha256.
  2. Installs Rust as a build-only dependency (depends_on "rust" => :build).
  3. Runs cargo install to compile the binary locally.
  4. Removes Rust afterwards, since it is not a runtime dependency.

The resulting binary is built on your own Mac, so macOS never adds the com.apple.quarantine attribute to it — Gatekeeper does not block it and no Apple Developer ID signing or notarization is required. This is deliberate: there are no pre-built bottles in this tap, no releases/download/<arch>.tar.gz URLs, and no bottle do blocks anywhere.

Trade-off: first install of each tool spends ~1–3 minutes compiling and pulls down a few hundred MB of toolchain temporarily. If pre-built bottles are added later, they would have to be signed and notarized to clear Gatekeeper — that path is intentionally not taken here.

Caveats

  • sha256 lines are placeholders until each upstream tag is reachable from a public GitHub repo. Until then, brew install will refuse to fetch the tarball, which is intentional.
  • The CI workflow (.github/workflows/tests.yml) skips formulae whose sha256 is still a placeholder, so main stays green pre-release.

License

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors