In development · no stable release yet GPLv3, royalty-free or commercial — your choice

ketch.

Catch releases straight from GitHub — a single-binary package manager for command-line tools and apps on macOS, Linux, and Windows.

curl -fsSL https://raw.githubusercontent.com/pyrlyn/ketch/main/install.sh | bash
Abstract floating glass app window listing verified packages, with glass spheres around it.

See it run

ketch, in the terminal.

ketch — zsh
$ ketch install BurntSushi/ripgrep
# any repo that publishes releases
$ ketch install sharkdp/[email protected]
# or an exact version
$ ketch outdated
# what has a newer release
$ ketch upgrade
# bring everything unpinned up to date
$ ketch lock
# write ./ketch.lock from what is installed
Commands and comments from the ketch README.

Install, upgrade, roll back

GitHub releaseThe asset built for your machine — no formula, no tap.
ChecksumPublished SHA-256 checked against what landed on disk.
InstallUnpacked into a versioned store under ~/.ketch, linked onto your PATH.
Lockfileketch lock writes ketch.lock; ketch sync installs exactly those versions elsewhere.
Rollbackketch rollback <pkg> relinks the previous version, no re-download.

Scroll to follow one package through install, lock and rollback. Steps and commands are from the ketch README; sharkdp/[email protected] is its install example.

Install, upgrade, roll back

  1. Release asset the one built for your machine
  2. Verify published SHA-256 vs disk
  3. Store versioned prefix under ~/.ketch
  4. Link onto your PATH
  5. Rollback relinks the previous version, no re-download

Overview

What ketch does.

ketch installs command-line tools and apps from GitHub releases on macOS, Linux, and Windows. No taps, no formulae, no build step — ketch downloads what a project already ships, verifies it, and puts it on your PATH.

Most command-line tools are already published as a release asset built for your machine. ketch picks the right one, checks the checksum the project published, unpacks it into a versioned store, and links it onto your PATH.

Features

Built for real workflows.

Install

Up and running in a minute.

Install

macOS and Linux:

curl -fsSL https://raw.githubusercontent.com/pyrlyn/ketch/main/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/pyrlyn/ketch/main/install.ps1 | iex

Homebrew, or mise:

brew install --cask pyrlyn/tap/ketch
mise use -g github:pyrlyn/ketch && ketch path install

Then make sure ~/.ketch/bin is on your PATH; ketch doctor tells you if it is not.

Usage

Install from any repository that publishes releases, by registry name, or at an exact version:

ketch install BurntSushi/ripgrep
ketch install rg
ketch install sharkdp/[email protected]
ketch install --path ./target/release/mytool --name mytool

More examples below.

Usage examples

Real commands, straight from the docs.

Keep installed tools current, and step back if an upgrade misbehaves:

ketch list
ketch outdated
ketch upgrade
ketch rollback <pkg>

Understand a package before installing it:

ketch info <pkg> --assets
ketch why <pkg>
ketch search <query>
ketch changelog <pkg>

Reproduce one machine's tools on another:

ketch lock
ketch sync

Look after ketch itself:

ketch doctor --fix
ketch self upgrade
ketch self uninstall

Links

License

You can use ketch under any of the following licenses, at your choice:

  1. GNU GPLv3 — free for open-source applications on any platform, including embedded systems.
  2. Royalty-free license — free for proprietary desktop, mobile and web applications, as long as you disclose that your application uses the project. Embedded systems are not covered.
  3. Commercial license — for proprietary applications, including embedded systems, without the attribution requirement.

Pricing

Pro is a placeholder

Free forever. Pro when you need it.

Free · open source

GPLv3, royalty-free or commercial — your choice

$0forever

  • Install from any GitHub release
  • SHA-256 verification
  • Rollback, lock and sync
Install free

Try ketch today.

Free and open source. Star it, file an issue, or send a pull request.