Files
shell-scripts/README.md
T
andrew 08e062efb4 Squashed 'golang-install/' changes from 2bb9d3b..f252ea6
f252ea6 Revise OS compatibility section in README
90d4f7a Fix download URL and add auto-detection of latest Go version (#75)
a9cb3b4 Update to Go 1.24.4 (#74)

git-subtree-dir: golang-install
git-subtree-split: f252ea6773ae636e82f60a147111029c4defdc63
2025-12-07 18:10:58 -05:00

82 lines
2.1 KiB
Markdown

# golang-tools-install-script
Bash script to automate installation and removal of single-user Go language tools.
Feel free to change the variables on the beginning to match whatever version of Go you need.
Tested working on:
* :white_check_mark: Ubuntu
* ⚠️ macOS, generally [^1]
* :white_check_mark: Fedora (Workstation)
[^1]: I no longer have the ability to perform automated testing for free. Testers are welcome!
Supported shells:
* Bash, fish, Zsh
## :hammer: Requirements
* `wget` or `curl`
* Bash shell
## :fast_forward: Install
Download and run with `wget` or `curl`. Here's the short version using the official git.io shortening:
```shell
# Linux typically has wget installed
wget -q -O - https://git.io/vQhTU | bash
# macOS typically has curl installed
curl -L https://git.io/vQhTU | bash
```
Or, if you are more comfortable with the raw URL:
```shell
wget -q -O - https://raw.githubusercontent.com/canha/golang-tools-install-script/master/goinstall.sh | bash
# or...
curl https://raw.githubusercontent.com/canha/golang-tools-install-script/master/goinstall.sh | bash
```
## :package: Install a custom Go version
Pass the `--version` option into the script including the version that you wish to install.
##### Example:
```shell
wget -q -O - https://git.io/vQhTU | bash -s -- --version 1.18
# or...
curl -L https://git.io/vQhTU | bash -s -- --version 1.18
```
## :no_entry_sign: Uninstall
Pass the `--remove` option into the script:
```shell
wget -q -O - https://git.io/vQhTU | bash -s -- --remove
# or...
curl -L https://git.io/vQhTU | bash -s -- --remove
```
## :pencil: Notes
By default, the script will create `.go` and `go` folders on your home directory and add the needed variables and `PATH` expansion.
`$HOME/.go is the directory where Go will be installed to.`
`$HOME/go is the default workspace directory.`
Read more about the [workspace](http://golang.org/doc/code.html).
In order to install Go into another location, set the environment variables `$GOROOT` and `$GOPATH` before (un)installing:
```shell
export GOROOT=/opt/go
export GOPATH=$HOME/projects/go
```