mirror of
https://oauth2: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@github.com/m1ngsama/TNT.git
synced 2026-06-26 05:44:38 +08:00
packaging: document homebrew tap path
This commit is contained in:
parent
599cd690b8
commit
39f7f1c7c4
4 changed files with 56 additions and 1 deletions
|
|
@ -43,6 +43,8 @@
|
|||
lightweight validation in `make release-check`.
|
||||
- Added an Arch `.SRCINFO` draft and AUR maintainer notes, with version/package
|
||||
checks in `make release-check`.
|
||||
- Added Homebrew tap maintainer notes, and expanded `make release-check` to
|
||||
validate the formula class and `libssh` dependency.
|
||||
|
||||
## 2026-05-18 - Interactive input polish
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ any public registry.
|
|||
## Current targets
|
||||
|
||||
- `arch/` - AUR-ready draft for `tnt-chat`.
|
||||
- `homebrew/tnt-chat.rb` - Homebrew tap formula draft.
|
||||
- `homebrew/` - Homebrew tap formula draft and maintainer notes.
|
||||
- `debian/` - Ubuntu PPA / Debian packaging notes and draft metadata.
|
||||
|
||||
## Release checklist
|
||||
|
|
|
|||
49
packaging/homebrew/README.md
Normal file
49
packaging/homebrew/README.md
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# Homebrew Packaging
|
||||
|
||||
The draft formula is `tnt-chat.rb`. The expected install path for users is a
|
||||
project tap first, not Homebrew core:
|
||||
|
||||
```sh
|
||||
brew tap m1ngsama/tnt
|
||||
brew install tnt-chat
|
||||
```
|
||||
|
||||
Homebrew core should wait until TNT has stable releases and broader usage.
|
||||
|
||||
## Local validation
|
||||
|
||||
From a tap repository:
|
||||
|
||||
```sh
|
||||
brew audit --strict --online tnt-chat
|
||||
brew install --build-from-source ./Formula/tnt-chat.rb
|
||||
brew test tnt-chat
|
||||
```
|
||||
|
||||
For local syntax-only validation from this repository:
|
||||
|
||||
```sh
|
||||
ruby -c packaging/homebrew/tnt-chat.rb
|
||||
```
|
||||
|
||||
## Updating the formula
|
||||
|
||||
1. Publish a GitHub release tag such as `v1.0.0`.
|
||||
2. Download or hash the release source archive:
|
||||
|
||||
```sh
|
||||
curl -L -o tnt-chat-1.0.0.tar.gz \
|
||||
https://github.com/m1ngsama/TNT/archive/refs/tags/v1.0.0.tar.gz
|
||||
shasum -a 256 tnt-chat-1.0.0.tar.gz
|
||||
```
|
||||
|
||||
3. Replace `REPLACE_WITH_RELEASE_TARBALL_SHA256` in `tnt-chat.rb`.
|
||||
4. Run:
|
||||
|
||||
```sh
|
||||
make release-check-strict
|
||||
```
|
||||
|
||||
5. Copy the formula into the tap repository and open a normal review PR.
|
||||
|
||||
Do not connect this tap update to production deployment.
|
||||
|
|
@ -72,6 +72,10 @@ grep -q "^pkgname = tnt-chat$" packaging/arch/.SRCINFO ||
|
|||
fail "packaging/arch/.SRCINFO pkgname is not tnt-chat"
|
||||
grep -q "v${version}.tar.gz" packaging/homebrew/tnt-chat.rb ||
|
||||
fail "packaging/homebrew/tnt-chat.rb URL does not match v$version"
|
||||
grep -q "^class TntChat < Formula$" packaging/homebrew/tnt-chat.rb ||
|
||||
fail "packaging/homebrew/tnt-chat.rb formula class is not TntChat"
|
||||
grep -q 'depends_on "libssh"' packaging/homebrew/tnt-chat.rb ||
|
||||
fail "packaging/homebrew/tnt-chat.rb must depend on libssh"
|
||||
grep -q "^tnt-chat (${version}-1)" packaging/debian/debian/changelog ||
|
||||
fail "packaging/debian/debian/changelog version does not match $version"
|
||||
grep -q "^Source: tnt-chat$" packaging/debian/debian/control ||
|
||||
|
|
|
|||
Loading…
Reference in a new issue