Prebuilt binaries for Linux, macOS, and Windows are published on the releases page. Every release includes SHA-256 checksums, SBOMs, a keyless cosign signature, and GitHub build provenance. See RELEASING.md for verification details.
With Go
If you have Go 1.26.4 or later, go install builds the latest tagged release.
CGO is not required.
go install github.com/synqronlabs/perch/cmd/perch@latestThe binary is written to $(go env GOPATH)/bin (usually ~/go/bin). Add that
directory to PATH if needed. To pin a version:
go install github.com/synqronlabs/perch/cmd/perch@v0.2.0From the latest GitHub release
This downloads the newest published release for your OS and architecture and
installs it to ~/.local/bin. It works without a Go toolchain.
# Resolve the latest release tag (for example v0.2.0).
version=$(curl -fsSLI -o /dev/null -w '%{url_effective}' \
https://github.com/synqronlabs/perch/releases/latest | sed 's#.*/tag/v##')
[ -n "$version" ] || { echo "could not determine the latest release" >&2; exit 1; }
# Pick the matching archive for this machine.
os=$(uname -s | tr '[:upper:]' '[:lower:]')
case $(uname -m) in
x86_64) arch=amd64 ;;
aarch64 | arm64) arch=arm64 ;;
armv6l) arch=armv6 ;;
armv7l) arch=armv7 ;;
*) echo "unsupported architecture: $(uname -m)" >&2; exit 1 ;;
esac
archive="perch_${version}_${os}_${arch}.tar.gz"
curl -fsSLO "https://github.com/synqronlabs/perch/releases/download/v${version}/${archive}"
tar -xzf "${archive}"
mkdir -p ~/.local/bin
install -m 0755 "perch_${version}_${os}_${arch}/perch" ~/.local/bin/perchMake sure ~/.local/bin is on PATH, then check the install:
perch versionTo install system-wide instead, replace the last two lines with:
sudo install -m 0755 "perch_${version}_${os}_${arch}/perch" /usr/local/bin/perchWindows users can download the .zip archive for their architecture from the
releases page.
From source
Requires Go 1.26.4 or later:
CGO_ENABLED=0 go build -trimpath -o perch ./cmd/perchManpages
Release archives include man/*.1 pages. To install them system-wide:
sudo install -d /usr/local/share/man/man1
sudo install -m 0644 man/perch*.1 /usr/local/share/man/man1/
sudo mandb # on systems that use mandbThen run man perch, man perch-mail, or man perch-mail-send.