Skip to content

Instantly share code, notes, and snippets.

@canthis
Created April 19, 2019 19:48
Show Gist options
  • Save canthis/e6c464fd05cf1e2020f9fb7380b32e07 to your computer and use it in GitHub Desktop.
Save canthis/e6c464fd05cf1e2020f9fb7380b32e07 to your computer and use it in GitHub Desktop.
Install Golang Linux
#!/bin/bash
## Install Golang 1.12.4 64Bits on Linux (Debian|Ubuntu|OpenSUSE|CentOS)
## Run as root (sudo su)
GO_URL="https://storage.googleapis.com/golang"
GO_VERSION=${1:-"1.12.4"}
GO_FILE="go$GO_VERSION.linux-amd64.tar.gz"
# Check if user has root privileges
if [[ $EUID -ne 0 ]]; then
echo "You must run the script as root or using sudo"
exit 1
fi
GET_OS=$(cat /etc/os-release | head -n1 | cut -d'=' -f2 | awk '{ print tolower($1) }'| tr -d '"')
if [[ $GET_OS == 'debian' || $GET_OS == 'ubuntu' ]]; then
apt-get update && apt-get install -y wget git-core
fi
if [[ $GET_OS == 'opensuse' ]]; then
zypper in -y wget git-core
fi
if [[ $GET_OS == 'centos' || $GET_OS == 'amazon' ]]; then
yum -y install wget git-core
fi
cd /tmp
wget --no-check-certificate ${GO_URL}/${GO_FILE}
tar -xzf ${GO_FILE}
mv go /usr/local/go
echo 'export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:/usr/local/go/bin
export PATH=$PATH:$GOBIN' >> /etc/profile
### You do not need to run commands with root or sudo
source /etc/profile
## mkdir -p $HOME/GO
## Test if Golang is working
go version
### The output is this:
## go version go1.12.4 linux/amd64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment