• Dave Cheney's avatar
    cmd/go: remove $GOROOT as a go get target · 593d8b0c
    Dave Cheney authored
    Fixes #4186.
    
    Back in the day, before the Go 1.0 release, $GOROOT was mandatory for building from source. Fast forward to now and $GOPATH is mandatory and $GOROOT is optional, and mainly used by those who use the binary distribution in uncommon places.
    
    For example, most novices at least know about `sudo` as they would have used it to install the binary tarball into /usr/local. It is logical they would use the `sudo` hammer to `go get` other Go packages when faced with a permission error talking about the path they just had to use `sudo` on last time.
    
    Even if they had read the documentation and set $GOPATH, go get will not work as expected as `sudo` masks most environment variables.
    
    llucky(~) % ~/go/bin/go env | grep GOPATH
    GOPATH="/home/dfc"
    lucky(~) % sudo ~/go/bin/go env | grep GOPATH
    GOPATH=""
    
    This CL therefore proposes to remove support for using `go get` to download source into $GOROOT.
    
    This CL also proposes an error when GOPATH=$GOROOT, as this is another place where new Go users can get stuck.
    
    Further discussion: https://groups.google.com/d/topic/golang-nuts/VIg3fjHiHRI/discussion
    
    R=rsc, adg, minux.ma
    CC=golang-dev
    https://golang.org/cl/6941058
    593d8b0c
Name
Last commit
Last update
..
cmd Loading commit data...
lib9 Loading commit data...
libbio Loading commit data...
libmach Loading commit data...
pkg Loading commit data...
Make.dist Loading commit data...
all.bash Loading commit data...
all.bat Loading commit data...
all.rc Loading commit data...
clean.bash Loading commit data...
clean.bat Loading commit data...
clean.rc Loading commit data...
make.bash Loading commit data...
make.bat Loading commit data...
make.rc Loading commit data...
run.bash Loading commit data...
run.bat Loading commit data...
run.rc Loading commit data...
sudo.bash Loading commit data...