Install and update
One-line installer, Windows, go install, booksy update and uninstalling.
Linux and macOS
curl -fsSL https://booksy.gimeno.dev/install.sh | sh
booksy --version
booksy doctorThe script picks the release archive for your OS and CPU (amd64 or arm64), checks it against the release's checksums.txt, and installs booksy into ~/.local/bin. If that directory is not on your PATH, it tells you the line to add.
The URL serves scripts/install.sh from the repository. If the site is down, the same script is at https://raw.githubusercontent.com/GodGMN/booksy-cli/main/scripts/install.sh.
| variable | effect |
|---|---|
BOOKSY_INSTALL_DIR=/usr/local/bin | install somewhere else |
BOOKSY_VERSION=v0.1.0 | install a specific version |
If you have a logged-in gh CLI, the script downloads through it.
Windows
Download booksy_<version>_windows_amd64.zip (or arm64) from the releases page, unzip it, and put booksy.exe in a folder on your PATH.
With Go
go install github.com/GodGMN/booksy-cli/cmd/booksy@latestor, from a clone, make install.
Check it works
booksy doctor --format prettydoctor checks the config, that Booksy answers, the web API key, your login (if any), the state database, your sinks and the watch timer.
Update
booksy update --check # report only
booksy update # download, verify, replace; asks first
booksy update --yes # no questionupdate verifies the new archive's SHA-256 against checksums.txt before touching anything, and replaces the binary with an atomic rename. Copies installed with go install are told to update with go install; development builds are never replaced.
Interactive commands print one line on stderr, at most once a day, when a newer release exists. Scripts and --no-input runs never check. BOOKSY_NO_UPDATE_CHECK=1 turns the notice off.
Uninstall
booksy watch service uninstall # if you installed the timer
rm ~/.local/bin/booksy
rm -r ~/.config/booksy-cli ~/.local/share/booksy-cli ~/.local/state/booksy-cliThe last line deletes your saved login, watches and settings (booksy config path shows where they are).
Releasing (maintainers)
Push a version tag; GitHub Actions runs the tests and goreleaser, and publishes archives for Linux, macOS and Windows on amd64 and arm64 plus checksums.txt.
git tag v0.2.0 && git push origin v0.2.0
make snapshot # the same build locally into dist/, nothing published