homebrew support
Massimo Melina committed
Feb 15, 2026 at 12:11 UTC
daa8efebd7997617d5f2ae228f99d2550b9bfa66
2 files changed
+64
.github/workflows/sync-homebrew-tap.yml
new
+62
@@ -0,0 +1,62 @@
1
+name: sync-homebrew-tap
2
+
3
+on:
4
+ release:
5
+ types:
6
+ - published
7
+ workflow_dispatch:
8
+ inputs:
9
+ tag:
10
+ description: "HFS release tag to sync (e.g. v3.0.3). Leave empty for current/latest."
11
+ required: false
12
+ type: string
13
+
14
+permissions:
15
+ contents: read
16
+
17
+jobs:
18
+ dispatch:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - name: Resolve release tag
22
+ id: release
23
+ env:
24
+ INPUT_TAG: ${{ github.event.inputs.tag }}
25
+ RELEASE_TAG: ${{ github.event.release.tag_name }}
26
+ run: |
27
+ set -euo pipefail
28
+ tag="${INPUT_TAG:-}"
29
+ [ -n "${RELEASE_TAG:-}" ] && tag="${tag:-$RELEASE_TAG}"
30
+ if [ -z "$tag" ]; then
31
+ tag="$(curl -fsSL https://api.github.com/repos/rejetto/hfs/releases/latest | jq -r '.tag_name')"
32
+ fi
33
+ [ "$tag" != "null" ] && [ -n "$tag" ] || { echo "Unable to resolve release tag"; exit 1; }
34
+ case "$tag" in
35
+ v*) ;;
36
+ *) tag="v$tag" ;;
37
+ esac
38
+ echo "tag=$tag" >> "$GITHUB_OUTPUT"
39
+ echo "Dispatching Homebrew sync for $tag"
40
+
41
+ - name: Dispatch update to tap repository
42
+ env:
43
+ GH_TOKEN: ${{ secrets.HOMEBREW_TAP_TOKEN }}
44
+ TAG: ${{ steps.release.outputs.tag }}
45
+ SOURCE_REPO: ${{ github.repository }}
46
+ SOURCE_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
47
+ run: |
48
+ set -euo pipefail
49
+ if [ -z "${GH_TOKEN:-}" ]; then
50
+ echo "Missing secret HOMEBREW_TAP_TOKEN"
51
+ exit 1
52
+ fi
53
+ payload="$(jq -n \
54
+ --arg tag "$TAG" \
55
+ --arg source_repo "$SOURCE_REPO" \
56
+ --arg source_run_url "$SOURCE_RUN_URL" \
57
+ '{event_type:"hfs-release", client_payload:{tag:$tag, source_repo:$source_repo, source_run_url:$source_run_url}}')"
58
+ curl -fsSL -X POST \
59
+ -H "Authorization: Bearer $GH_TOKEN" \
60
+ -H "Accept: application/vnd.github+json" \
61
+ https://api.github.com/repos/rejetto/homebrew-hfs/dispatches \
62
+ -d "$payload"
README.md
+2
@@ -70,6 +70,8 @@ For Docker, see https://github.com/rejetto/hfs/wiki/Docker .
70
71
For service installation, see https://github.com/rejetto/hfs/wiki/Service-installation.
72
73
+For Homebrew, just `brew install rejetto/hfs/hfs`
74
+
75
The minimum Windows version required is 10 or Server 2019.
76
77
1. Download the zip file for your operating system from https://github.com/rejetto/hfs/releases