id = "eget" name = "eget" homepage = "https://github.com/zyedidia/eget" description = "A tool for downloading pre-built binaries from GitHub releases" executables = ["eget"] [dotfiles] # Eget's official README and source document the legacy per-user TOML file # and the XDG fallback at ~/.config/eget/eget.toml. `global.github_token` # is a GitHub API credential and is secret-bearing. # https://github.com/zyedidia/eget/blob/master/README.md # https://github.com/zyedidia/eget/blob/master/config.go paths = [ "~/.eget.toml", "[configHome]/eget/eget.toml", ] secret = [] [[dotfiles.secret_paths]] file = [ "~/.eget.toml", "[configHome]/eget/eget.toml", ] format = "toml" match = { key_path = ["global.github_token"] } [commands] format = 1 label = "Download a release binary" description = "Download and extract a prebuilt binary from a GitHub release (or a direct URL, local file, or repository). Config-file driven options such as download-all are not covered." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "help" kind = "help" url = "https://github.com/zyedidia/eget#usage" revision = "2026-10-27" evidence = """ Usage: eget [OPTIONS] TARGET Application Options: -t, --tag= tagged release to use instead of latest --pre-release include pre-releases when fetching the latest version --source download the source code for the target repo instead of a release --to= move to given location after extracting -s, --system= target system to download for (use "all" for all choices) -f, --file= glob to select files for extraction --all extract all candidate files -q, --quiet only print essential output -d, --download-only stop after downloading the asset (no extraction) --upgrade-only only download if release is more recent than current version -a, --asset= download a specific asset containing the given string; can be specified multiple times for additional filtering; use ^ for anti-match --sha256 show the SHA-256 hash of the downloaded asset --verify-sha256= verify the downloaded asset checksum against the one provided -r, --remove remove the given file from $EGET_BIN or the current directory """ [[commands.field]] id = "target" label = "Target" description = "A GitHub repository (user/repo), a direct URL, or a local file." type = "string" position = 0 min = 1 sources = ["help"] [[commands.field]] id = "tag" label = "Release tag" description = "Use a tagged release instead of the latest." type = "string" option = ["--tag", "-t"] sources = ["help"] [[commands.field]] id = "pre_release" label = "Include pre-releases" type = "boolean" option = ["--pre-release"] sources = ["help"] [[commands.field]] id = "source" label = "Download source code" type = "boolean" option = ["--source"] sources = ["help"] [[commands.field]] id = "to" label = "Move to location" type = "path" option = ["--to"] path = { kind = "any", role = "output", must_exist = false } effect = "overwrite" sources = ["help"] [[commands.field]] id = "system" label = "Target system" description = "For example darwin/arm64, or all for every choice." type = "string" option = ["--system", "-s"] suggestions = [{ value = "all", label = "All" }, { value = "darwin/arm64", label = "macOS (arm64)" }, { value = "darwin/amd64", label = "macOS (amd64)" }, { value = "linux/amd64", label = "Linux (amd64)" }, { value = "linux/arm64", label = "Linux (arm64)" }] sources = ["help"] [[commands.field]] id = "file" label = "File glob" description = "Glob selecting which files to extract." type = "string" option = ["--file", "-f"] sources = ["help"] [[commands.field]] id = "all" label = "Extract all candidates" type = "boolean" option = ["--all"] sources = ["help"] [[commands.field]] id = "asset" label = "Asset filter" description = "Download an asset containing this string. Prefix with ^ to anti-match." type = "string" option = ["--asset", "-a"] multiple = true sources = ["help"] [[commands.field]] id = "download_only" label = "Download only" description = "Stop after downloading the asset, without extracting." type = "boolean" option = ["--download-only", "-d"] sources = ["help"] [[commands.field]] id = "upgrade_only" label = "Only if newer" type = "boolean" option = ["--upgrade-only"] sources = ["help"] [[commands.field]] id = "sha256" label = "Show SHA-256" type = "boolean" option = ["--sha256"] sources = ["help"] [[commands.field]] id = "verify_sha256" label = "Verify SHA-256" type = "string" option = ["--verify-sha256"] sources = ["help"] [[commands.field]] id = "quiet" label = "Quiet" type = "boolean" option = ["--quiet", "-q"] sources = ["help"] [[commands.task]] id = "latest" label = "Install latest release" fields = ["target", "to"] required = ["target"] [[commands.task]] id = "tagged" label = "Install a tagged release" fields = ["target", "tag", "to"] required = ["target", "tag"] [[commands.group]] id = "basic" label = "Basic" fields = ["target", "tag", "to", "system", "asset", "file"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["pre_release", "source", "all", "download_only", "upgrade_only", "sha256", "verify_sha256", "quiet"]