{"id":13494107,"url":"https://github.com/tj/gobinaries","last_synced_at":"2025-05-16T18:10:24.748Z","repository":{"id":46184604,"uuid":"231086098","full_name":"tj/gobinaries","owner":"tj","description":"Golang binaries compiled on-demand for your system","archived":false,"fork":false,"pushed_at":"2021-11-08T19:59:29.000Z","size":216,"stargazers_count":822,"open_issues_count":25,"forks_count":32,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-12T17:46:28.768Z","etag":null,"topics":["cross-compilation","golang","golang-tools"],"latest_commit_sha":null,"homepage":"https://gobinaries.com/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tj.png","metadata":{"files":{"readme":"Readme.md","changelog":"History.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"tj"}},"created_at":"2019-12-31T12:35:18.000Z","updated_at":"2025-04-03T22:19:58.000Z","dependencies_parsed_at":"2022-09-26T18:31:43.485Z","dependency_job_id":null,"html_url":"https://github.com/tj/gobinaries","commit_stats":null,"previous_names":["tj/bins"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fgobinaries","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fgobinaries/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fgobinaries/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tj%2Fgobinaries/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tj","download_url":"https://codeload.github.com/tj/gobinaries/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254582907,"owners_count":22095518,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cross-compilation","golang","golang-tools"],"created_at":"2024-07-31T19:01:21.924Z","updated_at":"2025-05-16T18:10:24.728Z","avatar_url":"https://github.com/tj.png","language":"Go","readme":"# Go Binaries\n\n[Go Binaries](https://gobinaries.com/) is an on-demand binary server, allowing non-Go users to quickly install tools written in Go without installing `go` itself, and removing the burden of cross-compiling and uploading dozens of binaries for every command-line you write.\n\n![On-demand Go binary example](assets/example.png)\n\n## Usage\n\nInstall `PKG` with optional semver `VERSION`.\n\n```\ncurl -sf https://gobinaries.com/\u003cPKG\u003e[@VERSION] | sh\n```\n\nInstall `PKG` with optional semver `VERSION` to the given directory `PREFIX`. By default `/usr/local/bin` is used.\n\n```\ncurl -sf https://gobinaries.com/\u003cPKG\u003e[@VERSION] | PREFIX=/tmp sh\n```\n\nThe `github.com` path prefix is optional. \n\n## Examples\n\nInstall the `hey` HTTP benchmarking tool:\n\n```sh\ncurl -sf https://gobinaries.com/rakyll/hey | sh\n```\n\nInstall the `wuzz` HTTP client:\n\n```sh\ncurl -sf https://gobinaries.com/asciimoo/wuzz | sh\n```\n\nInstall the latest version of `staticgen`:\n\n```\ncurl -sf https://gobinaries.com/tj/staticgen/cmd/staticgen | sh\n```\n\nInstall the latest `1.x` major version of `staticgen`:\n\n```\ncurl -sf https://gobinaries.com/tj/staticgen/cmd/staticgen@1.x | sh\n```\n\nInstall the `v1.0.0` version of `triage`:\n\n```\ncurl -sf https://gobinaries.com/tj/triage/cmd/triage@1.0.0 | sh\n```\n\n## Semver support\n\nThe following semver patterns are supported:\n\n- Exact version: `v1.2.3`, `1.2.3`\n- Wildcards: `v1.x`, `v1.2.x`, `1.x`, `1.2.x`\n- Wildcards (implicit): `v1`, `v1.2`, `1.2`\n- Leading `v` is optional, regardless of the Git tag\n\n## How does it work?\n\nTake for example you want to install @rakyll's fantastic HTTP benchmarking tool [hey](https://gobinaries.com/rakyll/hey), to install the latest release you would run:\n\n```sh\ncurl -sf https://gobinaries.com/rakyll/hey | sh\n```\n\nThis request fetches the latest tag from GitHub and responds with a shell script\nwhich performs a second request, populated with the resolved version and architecture as shown here:\n\n```\nhttps://gobinaries.com/binary/github.com/rakyll/hey?os=darwin\u0026arch=amd64\u0026version=v0.1.3\n```\n\nThe response of this request is a Golang binary compiled for the requested os, architecture, and package version. The result is cached in a CDN for subsequent requests.\n\n\n## Limitations\n\n- The Go package must compile in under 100 seconds (CDN limitation)\n- The Go package must have at least one Git tag\n\n## FAQ\n\n\u003cdetails\u003e\n  \u003csummary\u003eWhat's wrong with go-get?\u003c/summary\u003e\n  Using go-get for installation is fine if you're a Go user, however, if you're creating programs which are designed to be used by a wider audience it's unlikely they will have Go installed.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eWhich version of Go is used?\u003c/summary\u003e\n  Currently Go 1.13.x via the official golang:1.13 Docker image.\n\u003c/details\u003e\n\n---\n\n[![GoDoc](https://godoc.org/github.com/tj/bins?status.svg)](https://godoc.org/github.com/tj/bins)\n![](https://img.shields.io/badge/license-MIT-blue.svg)\n![](https://img.shields.io/badge/status-stable-green.svg)\n![](https://github.com/tj/gobinaries.com/workflows/Tests/badge.svg)\n\n## Sponsors\n\n## Sponsors\n\nThis project is sponsored by [CTO.ai](https://cto.ai/), making it easy for development teams to create and share workflow automations without leaving the command line.\n\n[![](https://apex-software.imgix.net/github/sponsors/cto.png)](https://cto.ai/)\n\nAnd my [GitHub sponsors](https://github.com/sponsors/tj):\n\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/0\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/0)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/1\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/1)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/2\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/2)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/3\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/3)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/4\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/4)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/5\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/5)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/6\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/6)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/7\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/7)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/8\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/8)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/9\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/9)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/10\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/10)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/11\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/11)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/12\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/12)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/13\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/13)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/14\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/14)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/15\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/15)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/16\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/16)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/17\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/17)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/18\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/18)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/19\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/19)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/20\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/20)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/21\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/21)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/22\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/22)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/23\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/23)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/24\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/24)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/25\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/25)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/26\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/26)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/27\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/27)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/28\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/28)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/29\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/29)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/30\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/30)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/31\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/31)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/32\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/32)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/33\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/33)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/34\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/34)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/35\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/35)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/36\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/36)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/37\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/37)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/38\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/38)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/39\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/39)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/40\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/40)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/41\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/41)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/42\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/42)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/43\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/43)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/44\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/44)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/45\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/45)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/46\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/46)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/47\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/47)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/48\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/48)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/49\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/49)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/50\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/50)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/51\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/51)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/52\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/52)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/53\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/53)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/54\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/54)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/55\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/55)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/56\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/56)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/57\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/57)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/58\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/58)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/59\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/59)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/60\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/60)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/61\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/61)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/62\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/62)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/63\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/63)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/64\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/64)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/65\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/65)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/66\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/66)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/67\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/67)\n[\u003cimg src=\"https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/avatar/68\" width=\"35\"\u003e](https://sponsors-api-u2fftug6kq-uc.a.run.app/sponsor/profile/68)\n\n","funding_links":["https://github.com/sponsors/tj"],"categories":["Go","开源类库","Open source library"],"sub_categories":["构建编译","Build And Compile"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftj%2Fgobinaries","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftj%2Fgobinaries","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftj%2Fgobinaries/lists"}