- #!/usr/bin/env bash
-
- # XXX: this script is intended to be run from
- # a fresh Digital Ocean droplet with Ubuntu
-
- # upon its completion, you must either reset
- # your terminal or run `source ~/.profile`
-
- # as written, this script will install
- # tendermint core from master branch
- REPO=github.com/tendermint/tendermint
-
- # change this to a specific release or branch
- BRANCH=master
-
- GO_VERSION=1.12
-
- sudo apt-get update -y
- sudo apt-get install -y make
-
- # get and unpack golang
- curl -O https://storage.googleapis.com/golang/go$GO_VERSION.linux-amd64.tar.gz
- tar -xvf go$GO_VERSION.linux-amd64.tar.gz
-
- # move go folder and add go binary to path
- sudo mv go /usr/local
- echo "export PATH=\$PATH:/usr/local/go/bin" >> ~/.profile
-
- # create the go directory, set GOPATH, and put it on PATH
- mkdir go
- echo "export GOPATH=$HOME/go" >> ~/.profile
- echo "export PATH=\$PATH:\$GOPATH/bin" >> ~/.profile
- source ~/.profile
-
- # get the code and move into repo
- go get $REPO
- cd "$GOPATH/src/$REPO"
-
- # build & install
- git checkout $BRANCH
- # XXX: uncomment if branch isn't master
- # git fetch origin $BRANCH
- make tools
- make install
-
- # the binary is located in $GOPATH/bin
- # run `source ~/.profile` or reset your terminal
- # to persist the changes
|