#!/usr/bin/env bash
##makedesc: Install golang v1.21.0
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255

# https://go.dev/dl/
# https://golang.org/doc/install
# https://www.vultr.com/docs/install-the-latest-version-of-golang-on-ubuntu

[ $1 ] && VERSION="$1" || VERSION="1.23.0"
title "Installing golang v$VERSION..."

FILE="go$VERSION.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go && \
    download "https://golang.org/dl/$FILE" "/tmp/$FILE" && \
    sudo tar -xzf "/tmp/$FILE" -C /usr/local && \
    rm -rf "/tmp/$FILE" && \
    sudo chown $USER: -R /usr/local/go && \
    echo 'export PATH="/usr/local/go/bin:$PATH"' >> "$HOME/.profile" && \
    echo "export GOPATH=\"\$HOME/.go\"" >> "$HOME/.profile" && \
    source ~/.profile

[ $? = 0 ] && {
    echo
    success "golang installed!"
    info "NOTE: now run 'source ~/.profile' to apply new env vars"
    go version
    echo
}
