-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup-go.sh
36 lines (26 loc) · 857 Bytes
/
setup-go.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
printf "Checking latest Go version...\n";
LATEST_GO_VERSION="$(curl --silent https://go.dev/VERSION?m=text | head -n 1)";
PLATFORM=$(uname -m)
case $PLATFORM in
"aarch64")
PLATFORM="arm64";;
*)
PLATFORM="amd64";;
esac
LATEST_GO_DOWNLOAD_URL="https://go.dev/dl/${LATEST_GO_VERSION}.linux-$PLATFORM.tar.gz"
printf "cd to home ($USER) directory \n"
cd $HOME
printf "Downloading ${LATEST_GO_DOWNLOAD_URL}\n\n";
curl -OJ -L --progress-bar $LATEST_GO_DOWNLOAD_URL
printf "Extracting file...\n"
tar -xf ${LATEST_GO_VERSION}.linux-$PLATFORM.tar.gz
export GOROOT="$HOME/go"
export GOPATH="$HOME/go/packages"
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
printf 'ADD THIS TO YOUR ~/.bashrc
export GOROOT="$HOME/go"
export GOPATH="$HOME/go/packages"
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
\n'
printf "You are ready to Go!";
go version