_content/rebuild.html
As of Go 1.21, Go's binary toolchain downloads served by go.dev/dl/ can be reproduced and verified by anyone, on any platform, using golang.org/x/build/cmd/gorebuild. For more details, see the blog post “Perfectly Reproducible, Verified Go Toolchains.”
This page is updated daily with the results of running gorebuild in an Ubuntu VM, using this script:
apt-get update &&
apt-get -y install software-properties-common &&
add-apt-repository universe &&
apt-get -y install golang-go msitools &&
go run golang.org/x/build/cmd/gorebuild@latest -p=4
The installation of msitools lets gorebuild check the contents of the Windows MSI installation file. The -p=4 means to run up to four builds in parallel.
{{define "marker"}}{{template "markersymbol" .}}{{end}} {{define "markersymbol"}} {{- if eq . "PASS" -}} ✅ {{- else if eq . "SKIP" -}} — {{- else -}} ❌ {{- end -}} {{end}} {{define "log"}}
{{range .Messages}}{{(rfc3339 .Time).UTC.Format "15:04:05"}}{{.Text}}
{{end}}
{{end}} {{define "autoopen"}} {{if not (eq . "PASS")}} open {{end}} {{end}} {{$Report := json gorebuild}} {{with $Report}} Gorebuild version {{.Version}}.
Built with Go version {{.GoVersion}}, {{.GOOS}}-{{.GOARCH}}.
Rebuild started at {{(rfc3339 .Start).UTC.Format "2006-01-02 15:04:05"}} UTC.
Rebuild finished at {{(rfc3339 .End).UTC.Format "2006-01-02 15:04:05"}} UTC.
Elapsed time: {{((rfc3339 .End).Sub (rfc3339 .Start)).Round 1e9}}.
{{range .Releases}}# {{template "marker" .Log.Status}} {{.Version}} Log{{template "log" .Log}}{{range .Files}} {{template "marker" .Log.Status}} {{.Name}} {{template "log" .Log}}{{end}}{{end}}
{{range .Bootstraps}}# Bootstrap {{.Version}} {{template "log" .Log}}{{end}} {{end}}