From 80964338a522ece87a52e723242f9dd79caf8e63 Mon Sep 17 00:00:00 2001 From: Michael Matloob Date: Mon, 20 May 2024 10:44:43 -0400 Subject: [PATCH] cmd/dist: set GOPROXY=off when GOPATH is set to be in GOROOT Avoid downloading modules into a modcache in the GOROOT directory. That creates read only files in GOROOT, which is undesirable. Fixes #67463 Change-Id: I6d10c605be5eba967648d823ee8fc915716b4b5b Reviewed-on: https://go-review.googlesource.com/c/go/+/586078 Reviewed-by: Robert Findley LUCI-TryBot-Result: Go LUCI --- src/cmd/dist/build.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go index 99f517e758..c033beabdb 100644 --- a/src/cmd/dist/build.go +++ b/src/cmd/dist/build.go @@ -1394,6 +1394,12 @@ func cmdbootstrap() { // go tool may complain. os.Setenv("GOPATH", pathf("%s/pkg/obj/gopath", goroot)) + // Set GOPROXY=off to avoid downloading modules to the modcache in + // the GOPATH set above to be inside GOROOT. The modcache is read + // only so if we downloaded to the modcache, we'd create readonly + // files in GOROOT, which is undesirable. See #67463) + os.Setenv("GOPROXY", "off") + // Use a build cache separate from the default user one. // Also one that will be wiped out during startup, so that // make.bash really does start from a clean slate.