LinuxCommandLibrary

hut

hut is not a standard Linux command

TLDR

Initialize hut's configuration file (this will prompt for an OAuth2 access token, which is required to use hut)

$ hut init
copy

List Git/Mercurial repositories
$ hut [git|hg] list
copy

Create a public Git/Mercurial repository
$ hut [git|hg] create [name]
copy

List jobs on
$ hut builds list
copy

Show the status of a job
$ hut builds show [job_id]
copy

SSH into a job container
$ hut ssh [job_id]
copy

SYNOPSIS

hut [-C DIR] [-h] <command> [<args>]

PARAMETERS

-C, --chdir=DIR
    Change to directory DIR before running command.
Overrides default repo directory.

-h, --help
    Display global help message and exit.

DESCRIPTION

Hut is a lightweight, fast CLI tool for interacting with sourcehut (sr.ht) services. Sourcehut is a free-software forge hosting Git repositories, mailing lists, issue trackers, and more. Hut allows users to clone repositories from git.sr.ht, manage todos on todo.sr.ht, submit and track patches on meta.sr.ht, fork projects, list services, and authenticate seamlessly.

Key features include directory-aware operations with -C, token-based auth via hut auth, and subcommands tailored to each service. It's designed for efficiency, avoiding web UIs, and integrates well with Git workflows. For example, hut clone user/repo fetches a repo, while hut todo handles tasks. Configuration resides in XDG-compliant files, supporting multiple accounts.

Hut emphasizes simplicity and speed, making it ideal for developers preferring terminal-based forge management over graphical clients.

CAVEATS

Requires sourcehut API token via hut auth; subcommands have service-specific limits (e.g., rate limits on todo.sr.ht). Not all sr.ht features supported.

COMMON SUBCOMMANDS

auth: Manage tokens.
clone: Clone git.sr.ht repo.
fork: Fork repository.
list: List services.
todo: Manage todo.sr.ht items.
meta: Handle patches/discussions.
Use hut help <cmd> for details.

CONFIGURATION

INI-style config in $XDG_CONFIG_HOME/hut/config or ~/.config/hut/config.
Supports [default] and per-user sections for tokens.

HISTORY

Developed by Drew DeVault (sir@cmpwn.com) starting 2020 for sourcehut. Initial release coincided with sr.ht public beta; actively maintained with Go rewrite for performance. Widely used in sr.ht community.

SEE ALSO

git(1), mr(1), todo(5)

Copied to clipboard