Skip to content

Instantly share code, notes, and snippets.

@souhaiebtar
Forked from jniltinho/install_golang.sh
Created February 1, 2022 18:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save souhaiebtar/1c977bef3c3b33d80ae20065a2465e6b to your computer and use it in GitHub Desktop.
Save souhaiebtar/1c977bef3c3b33d80ae20065a2465e6b to your computer and use it in GitHub Desktop.
Install Golang on Linux
#!/bin/bash
## Install Golang 1.17.4 64Bits on Linux (Debian|Ubuntu|OpenSUSE|CentOS)
## http://www.linuxpro.com.br/2015/06/golang-aula-1-instalacao-da-linguagem-no-linux.html
## Run as root (sudo su)
## Thank's @geosoft1 | @gwmoura
GO_URL="https://storage.googleapis.com/golang"
GO_VERSION=${1:-"1.17.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 -zxf ${GO_FILE} -C /usr/local
rm -f ${GO_FILE}
echo 'export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/GO
export PATH=$PATH:$GOPATH/bin' >> /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.7 linux/amd64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment