Skip to main content

A toolkit for GitHub releases

Project description

ghr

A toolkit for GitHub releases.

Install tools from GitHub releases with one cross-platform command. A single static binary that picks the right asset for your OS and architecture. Supports verifying with minisign, sigstore, and checksums. Install it on a GitHub-hosted runner with pipx install ghr-bin.

Usage

ghr list                                          List installed tools
ghr install <spec> [<pubkey>] [<spec> ...]        Install one or more tools from GitHub releases
ghr uninstall <name>                              Remove an installed tool
ghr download <spec> [<pubkey>] [<spec> ...]       Download one or more release assets
ghr path add [--dry-run]                          Add ghr's bin dir to your user PATH
ghr path [bin|tools|cache]                        Show ghr directories
ghr version                                       Print version and exit
ghr help                                          Print this help and exit

Each <spec> is owner/repo[@tag] (auto-pick asset) or owner/repo/file[@tag] (specific asset). A 56-char RW/RU-prefixed base64 token immediately after a spec is treated as that spec's minisign public key. Run ghr <COMMAND> help to show help for a specific command, e.g. ghr download help.

Examples

# Install the latest release of a tool
ghr install burntsushi/ripgrep

# Install a specific version
# https://github.com/bytecodealliance/wasmtime/releases/tag/v44.0.1
ghr install bytecodealliance/wasmtime@v44.0.1

# Install several tools in one invocation (shared HTTP client + auth)
ghr install burntsushi/ripgrep@15.1.0 sharkdp/fd@v10.2.0

# Install minisign itself, verifying with its minisign public key
ghr install jedisct1/minisign@0.12 RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3

Install

pipx install ghr-bin
uv tool install ghr-bin
winget install ghr
brew install cataggar/ghr/ghr
curl -fsSL https://raw.githubusercontent.com/cataggar/ghr/main/install.sh | sh
iwr -useb https://raw.githubusercontent.com/cataggar/ghr/main/install.ps1 | iex
ghr install cataggar/ghr RWSbsumpaHb+N3KCEt/EUXQ5y6Kkk8r/zCb5Z4jhEuEX8x2/U5wr5QC0

See doc/README.md for download, install, directories, uninstall, and verification details (including verifying ghr's own releases).

GitHub Actions

For workflows, install several tools in one cached step:

- uses: cataggar/ghr/actions/install@v0.3.1  # pin to the matching ghr release
  with:
    tools: |
      BurntSushi/ripgrep@14.1.1
      sharkdp/fd@v10.2.0

The action shares git tags with the ghr CLI — pinning @v0.3.0 pins both the action body and the ghr-bin binary. Pick the latest tag from the releases page.

See actions/install, actions/download, and the Caching in GitHub Actions section for details.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ghr_bin-0.5.0-py3-none-win_arm64.whl (838.5 kB view details)

Uploaded Python 3Windows ARM64

ghr_bin-0.5.0-py3-none-win_amd64.whl (917.4 kB view details)

Uploaded Python 3Windows x86-64

ghr_bin-0.5.0-py3-none-musllinux_1_1_x86_64.whl (741.9 kB view details)

Uploaded Python 3musllinux: musl 1.1+ x86-64

ghr_bin-0.5.0-py3-none-musllinux_1_1_aarch64.whl (736.3 kB view details)

Uploaded Python 3musllinux: musl 1.1+ ARM64

ghr_bin-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741.9 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ghr_bin-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (736.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ghr_bin-0.5.0-py3-none-macosx_11_0_arm64.whl (699.7 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

ghr_bin-0.5.0-py3-none-macosx_10_9_x86_64.whl (749.7 kB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file ghr_bin-0.5.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: ghr_bin-0.5.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 838.5 kB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ghr_bin-0.5.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 f701733484c7703e8a3b315d1021dd2d22bc522b1de811a294fbe42cc36d7688
MD5 6dd99082a601a7dd5a5c778d47513a95
BLAKE2b-256 e0cf5ebb75c3b9edc494c706c8397fa3c2a78a26b6e9e9666cee19a9bf516f13

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-win_arm64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: ghr_bin-0.5.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 917.4 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ghr_bin-0.5.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 4ec291c66401e934e51e0ea532def0fe5a4d354eb61150e77daa246ef61b8242
MD5 1627adf4c93f1facca97f7ee2220a5a6
BLAKE2b-256 1fd65f51d570e39248bfe89c896ab59d7a90974c3f781339ca296a1c7182c8d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-win_amd64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e69c2709a272b647570ab4e436e4ce8e3551c7d2bab75ebc75e3fddfa924b4cf
MD5 30749ad43eac4a83681948d0c9bcdba4
BLAKE2b-256 22ac9bd6de4c1e7b52fed3a645d76983dc928376407ea2ad23c72244e8fad80b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-musllinux_1_1_x86_64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 ff001fcec43518ac98a9cf3a09cb0fa343e90131bca02693834a8125bedc85b0
MD5 19f639ce17ee2dcf946b86203a8eccf8
BLAKE2b-256 d00887fe8fece0ef7849f00f6e72da572876690984d5d0c913b00b52a57c7807

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-musllinux_1_1_aarch64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4adee4a02bce353c49a125e7b86fdd640705e29141dd67fd82672ea7b47c5d68
MD5 b5973431f29bcd545bcd61b0a47d784c
BLAKE2b-256 cead4d2152e4b04f82974f33b704507003caf29d81e7f399ddcd8627f8a2efa1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a00387e11b02ed18532914f33bbfb9840fa80ad210a5e5da190270d322ffbd40
MD5 06775a39ff963a8446b199b3f427bcde
BLAKE2b-256 4feee972e78fba962e0c660d0053f9c5f68c48aa909d0a043944d60f3d9435e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e6494f6f072e4a722a5b80555729d44ef2e375cc553f0b5c80113bda947d39ec
MD5 31e35b90d44e788d0b5504be97319f2e
BLAKE2b-256 31b0fdd21a0faeb072f41ce61283286e0b9127c1bfd259d999c0a4857fcd38a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-macosx_11_0_arm64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ghr_bin-0.5.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ghr_bin-0.5.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 55cf00a202974bac567faf312cdc24e7e779cb85f008978caecd6451407ffee5
MD5 a5098590c5b7d0b5e43885e02586b6a9
BLAKE2b-256 1cb6e5abc8b4c0a47187fde294a91c0cf82528ad5768ebd2af9b1d8ee84b7fa4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ghr_bin-0.5.0-py3-none-macosx_10_9_x86_64.whl:

Publisher: pypi.yml on cataggar/ghr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page