Files
Termix/homebrew/README.md
2025-10-26 23:26:24 -05:00

155 lines
3.9 KiB
Markdown

# Homebrew Cask for Termix
This directory contains the Homebrew Cask formula for installing Termix on macOS.
## Files
- **termix.rb** - Homebrew Cask formula
## What is a Homebrew Cask?
Homebrew Casks are used to install GUI macOS applications. Unlike formulae (which are for command-line tools), casks handle:
- Downloading DMG/PKG installers
- Installing .app bundles to /Applications
- Managing application preferences and cache cleanup
## Submission Options
You have two options for distributing Termix via Homebrew:
### Option 1: Submit to Official Homebrew Cask (Recommended)
Submit to the official homebrew-cask repository for maximum visibility.
**Advantages:**
- Discoverable by all Homebrew users
- Built-in update checking
- Official Homebrew support
**Process:**
1. Download the `homebrew-submission` artifact from GitHub Actions (when using "submit" option)
2. Fork https://github.com/Homebrew/homebrew-cask
3. Create a new branch: `git checkout -b termix`
4. Add the cask file: `Casks/t/termix.rb` (note the subdirectory by first letter)
5. Test locally: `brew install --cask ./Casks/t/termix.rb`
6. Run audit: `brew audit --cask --online ./Casks/t/termix.rb`
7. Commit and push to your fork
8. Create a PR to Homebrew/homebrew-cask
**Requirements for acceptance:**
- App must be stable (not beta/alpha)
- Source code must be public
- No analytics/tracking without opt-in
- Pass all brew audit checks
### Option 2: Create Your Own Tap
Create a custom Homebrew tap for more control and faster updates.
**Advantages:**
- Full control over updates
- No approval process
- Can include beta/alpha releases
**Process:**
1. Create a new repository: `Termix-SSH/homebrew-termix`
2. Add the cask file to: `Casks/termix.rb`
3. Users install with: `brew install --cask termix-ssh/termix/termix`
## Installation (for users)
### From Official Homebrew Cask (after approval):
```bash
brew install --cask termix
```
### From Custom Tap:
```bash
# Add the tap
brew tap termix-ssh/termix
# Install the cask
brew install --cask termix
```
## Updating the Cask
When you release a new version:
### For Official Homebrew Cask:
1. Homebrew bot usually auto-updates within hours
2. Or manually submit a PR with the new version/checksum
### For Custom Tap:
1. Update the version and sha256 in termix.rb
2. Commit and push to your tap repository
3. Users run: `brew upgrade --cask termix`
## Testing Locally
Before submitting, test the cask:
```bash
# Install from local file
brew install --cask ./homebrew/termix.rb
# Verify it works
open /Applications/Termix.app
# Uninstall
brew uninstall --cask termix
# Run audit checks
brew audit --cask --online ./homebrew/termix.rb
# Style check
brew style ./homebrew/termix.rb
```
## Automated Submission Preparation
The GitHub Actions workflow automatically prepares the Homebrew submission when you select "submit":
1. Builds macOS universal DMG
2. Calculates SHA256 checksum
3. Updates the cask file with version and checksum
4. Creates a `homebrew-submission` artifact
Download the artifact and follow the submission instructions included.
## Cask File Structure
The cask file (`termix.rb`) includes:
- **version** - Automatically set from package.json
- **sha256** - Checksum of the universal DMG for security
- **url** - Download URL from GitHub releases
- **name** - Display name
- **desc** - Short description
- **homepage** - Project homepage
- **livecheck** - Automatic update detection
- **app** - The .app bundle to install
- **zap** - Files to remove on complete uninstall
## Requirements
- macOS 10.15 (Catalina) or later
- Homebrew 4.0.0 or later
- Universal DMG must be code-signed and notarized (already handled by your build process)
## Resources
- [Homebrew Cask Documentation](https://docs.brew.sh/Cask-Cookbook)
- [Cask Submission Guidelines](https://github.com/Homebrew/homebrew-cask/blob/master/CONTRIBUTING.md)
- [Homebrew Formula Cookbook](https://docs.brew.sh/Formula-Cookbook)