# GoReleaser configuration for beads # See https://goreleaser.com for documentation version: 2 before: hooks: # Ensure dependencies are up to date - go mod tidy builds: - id: bd-linux-amd64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - linux goarch: - amd64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - id: bd-linux-arm64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - linux goarch: - arm64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - id: bd-android-arm64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - android goarch: - arm64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - id: bd-darwin-amd64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - darwin goarch: - amd64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - id: bd-darwin-arm64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - darwin goarch: - arm64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - id: bd-windows-amd64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=1 - CC=x86_64-w64-mingw32-gcc - CXX=x86_64-w64-mingw32-g++ goos: - windows goarch: - amd64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - -buildmode=exe hooks: post: # Sign Windows executable with Authenticode certificate # Requires WINDOWS_SIGNING_CERT_PFX_BASE64 and WINDOWS_SIGNING_CERT_PASSWORD secrets - ./scripts/sign-windows.sh "{{ .Path }}" - id: bd-windows-arm64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - windows goarch: - arm64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} - -buildmode=exe hooks: post: # Sign Windows executable with Authenticode certificate # Requires WINDOWS_SIGNING_CERT_PFX_BASE64 and WINDOWS_SIGNING_CERT_PASSWORD secrets - ./scripts/sign-windows.sh "{{ .Path }}" - id: bd-freebsd-amd64 main: ./cmd/bd binary: bd env: - CGO_ENABLED=0 goos: - freebsd goarch: - amd64 ldflags: - -s -w - -X main.Version={{.Version}} - -X main.Build={{.ShortCommit}} - -X main.Commit={{.Commit}} - -X main.Branch={{.Branch}} archives: - id: bd-archive format: tar.gz name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}" format_overrides: - goos: windows format: zip files: - LICENSE - README.md - CHANGELOG.md checksum: name_template: "checksums.txt" algorithm: sha256 snapshot: version_template: "{{ incpatch .Version }}-next" changelog: sort: asc filters: exclude: - "^docs:" - "^test:" - "^chore:" - "Merge pull request" - "Merge branch" groups: - title: "Features" regexp: '^.*feat(\(\w+\))?:.*$' order: 0 - title: "Bug Fixes" regexp: '^.*fix(\(\w+\))?:.*$' order: 1 - title: "Others" order: 999 release: github: owner: steveyegge name: beads draft: false prerelease: auto name_template: "v{{.Version}}" header: | ## beads v{{.Version}} Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64), Android/Termux (ARM64), and FreeBSD. ### Installation **Homebrew (macOS/Linux):** ```bash brew install beads ``` **Quick Install (macOS/Linux/FreeBSD):** ```bash curl -sSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash ``` **Windows (PowerShell):** ```powershell irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex ``` **Manual Install:** Download the appropriate binary for your platform below, extract it, and place it in your PATH. # Announce the release announce: skip: false