README.md
April 30, 2026 ยท View on GitHub
Go Installer ๐น
Install Golang on Linux or Mac
with hassle of environment variables setting.
How to use it ๐ค
Installing (or even updating) Go โฌ๏ธ
You can clone the repository and then run bash go.sh.
Or by simply running whatever suits you from the following commands (wget or curl):
# downloads then runs the script
wget https://git.io/go-installer.sh && bash go-installer.sh
# doesn't download the script ~ runs the script directly
curl -sL https://git.io/go-installer | bash
Now, you can go grab a cup of coffee :coffee:, sit back :relieved: and relax while the magic happens! :crystal_ball:
Note
By default the script will create.goandgofolders on your HOME directory & add the needed variables to your PATH variable.
$HOME/.go is where Go will be installed.
$HOME/go is the default workspace.
In order to install Go to another location or set custom workspace. You can set environment variables GOROOT or GOPATH before installing (or uninstalling) Go.
For example:
export GOROOT=/opt/go # where Go is installed
export GOPATH=$HOME/projects/go # your workspace
Read more about workspaces in Go.
Specifying a version to install ๐ง
By default, the script installs the latest version available.
You can choose what version to install by adding the --version flag, followed by the version you want to install.
bash go.sh --version 1.19.4
Show Help Message ๐
To show the following help message use bash go.sh help.
Uninstalling Go โ
bash go.sh remove
How it works โ๏ธ
The script does the following steps:
- Checks if Go is already installed.
- Detects the installed operating system (Linux or Mac).
- Detects system architecture (armv6, armv8, amd64, i386).
- Parses the https://go.dev/dl download page to find the latest version of Go that is available for your platform and architecture.
- Exits if you have the latest version of Go already installed.
- Downloads the latest version of Go.
- Creates the needed directories for workspace and Go binaries.
- Extracts the files of the downloaded package.
- Adds the binaries to PATH environment variable.
- Removes the downloaded installation file.
๐ฅ WORKS LIKE A CHARM ๐