A fork of the Go programming language with all telemetry stripped. Updated from upstream weekly.
No counter data is collected. No uploads are sent. The go telemetry command is
a stub that always reports off. The GOTELEMETRY and GOTELEMETRYDIR
environment variables have been removed. Telemetry hooks in the toolchain call
no-op stubs, so upstream main.go and tool entry points stay unchanged.
export PATH="$HOME/.gonot/bin:$PATH"
./bootstrap.sh install my-fork
go versioncd src
GOROOT_BOOTSTRAP=/path/to/go1.24.6 ./make.bash./bootstrap.sh prefetch # one-time download
./bootstrap.sh build --offline # clang -> go1.4 -> ... -> fork./scripts/sync-upstream.shThis fetches upstream Go, rebases onto
upstream/master, and re-applies the no-telemetry overlays from fork/.
If the rebase conflicts:
git rebase --abort
git reset --hard upstream/master
./scripts/apply-fork.sh
git add -A && git commit -m "Strip telemetry from Go fork"
./scripts/verify-fork.shTo refresh overlays after editing fork/overlays/:
./scripts/apply-fork.sh
./scripts/verify-fork.shSee ./bootstrap.sh --help. Installed versions live under ~/.gonot/versions/.
| Command | Description |
|---|---|
install <name> |
Build and register a named version |
use <name> |
Switch active version |
update |
Rebuild the active version |
list |
Show installed versions |
Add to your shell profile:
export PATH="$HOME/.gonot/bin:$PATH"bootstrap.sh Build script and version manager
fork/overlays/ No-telemetry source replacements (reapplied on sync)
fork/remove.txt Upstream telemetry files to delete on sync
scripts/ sync-upstream.sh, apply-fork.sh, verify-fork.sh
src/ Go standard library and toolchain
GitHub Actions builds with Go 1.24.6 bootstrap and verifies telemetry is off. See .github/workflows/ci.yml.
Push a version tag to publish platform binaries. See .github/workflows/release.yml.
Offline kits are built locally only: ./scripts/make-offline-bundle.sh --tag v1.27.0 --releases ./release
See CONTRIBUTING.md.
Same as Go. See LICENSE.