Add a formula for installing the share CLI

Lets `brew install share` pull the versioned release archive from the
share repository's Gitea releases instead of building from source.
This commit is contained in:
2026-09-11 16:42:59 +08:00
parent fb4374f64b
commit c86e147b1a
2 changed files with 39 additions and 2 deletions
+11
View File
@@ -0,0 +1,11 @@
class Share < Formula
desc "BitTorrent-style swarm file sharing CLI with a background daemon"
homepage "https://gitea.tzgyn.dev/TZGyn/share"
url "https://gitea.tzgyn.dev/TZGyn/share/releases/download/v0.1.0/share-0.1.0-darwin-arm64.tar.gz"
sha256 "9e0d8d721b8ec272cc9c6f3e5b7c72dc727f8d01e0c17c20c4ff94977d1b48eb"
version "0.1.0"
def install
bin.install "share"
end
end
+28 -2
View File
@@ -1,6 +1,6 @@
# TZGyn Homebrew Tap # TZGyn Homebrew Tap
Casks for TZGyn apps. Hosted on Gitea — the full URL is required when tapping. Casks and command-line formulae for TZGyn apps. Hosted on Gitea — the full URL is required when tapping.
## Install ## Install
@@ -13,6 +13,32 @@ brew install --cask kapture
Homebrew may print an "Unsupported tap" warning for non-GitHub taps — it's Homebrew may print an "Unsupported tap" warning for non-GitHub taps — it's
harmless. harmless.
## Formulae
### share
BitTorrent-style swarm file sharing CLI. A single binary serves as the client
(`send`/receive), the background daemon, and the relay:
```bash
brew install share
```
Seed a file into a new room (prints a room code):
```bash
share send file.txt
```
On the other machine, join that room — everyone in it both sends and receives:
```bash
share <code>
```
Releases carry macOS (Apple Silicon and Intel) and Linux builds; the formula
currently installs the Apple Silicon build.
## Casks ## Casks
### kapture ### kapture
@@ -29,6 +55,6 @@ Menu bar screenshot app with on-device OCR:
## Releases ## Releases
Releases are published to each app's GitHub repository as zips attached to Releases are published to each app's Gitea repository as zips attached to
version tags; the casks in this tap point at the latest release. Releases are version tags; the casks in this tap point at the latest release. Releases are
notarized (Developer ID + stapled ticket). notarized (Developer ID + stapled ticket).