mirror of
https://github.com/rootzoll/raspiblitz.git
synced 2025-02-25 15:10:38 +01:00
72 lines
2.1 KiB
Bash
Executable file
72 lines
2.1 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# set version, check: https://github.com/golang/go/releases
|
|
goVersion="1.13.3"
|
|
|
|
# get cpu architecture
|
|
isARM=$(uname -m | grep -c 'arm')
|
|
isAARCH64=$(uname -m | grep -c 'aarch64')
|
|
isX86_64=$(uname -m | grep -c 'x86_64')
|
|
isX86_32=$(uname -m | grep -c 'i386\|i486\|i586\|i686\|i786')
|
|
|
|
# make sure go is installed
|
|
echo "Check Framework: Go"
|
|
goInstalled=$(go version 2>/dev/null | grep -c 'go')
|
|
if [ ${goInstalled} -eq 0 ];then
|
|
if [ ${isARM} -eq 1 ] ; then
|
|
goOSversion="armv6l"
|
|
fi
|
|
if [ ${isAARCH64} -eq 1 ] ; then
|
|
goOSversion="arm64"
|
|
fi
|
|
if [ ${isX86_64} -eq 1 ] ; then
|
|
goOSversion="amd64"
|
|
fi
|
|
if [ ${isX86_32} -eq 1 ] ; then
|
|
goOSversion="386"
|
|
fi
|
|
|
|
echo "*** Installing Go v${goVersion} for ${goOSversion} ***"
|
|
|
|
# wget https://storage.googleapis.com/golang/go${goVersion}.linux-${goOSversion}.tar.gz
|
|
wget https://dl.google.com/go/go${goVersion}.linux-${goOSversion}.tar.gz
|
|
if [ ! -f "./go${goVersion}.linux-${goOSversion}.tar.gz" ]
|
|
then
|
|
echo "!!! FAIL !!! Download not success."
|
|
exit 1
|
|
fi
|
|
sudo tar -C /usr/local -xzf go${goVersion}.linux-${goOSversion}.tar.gz
|
|
sudo rm *.gz
|
|
sudo mkdir /usr/local/gocode
|
|
sudo chmod 777 /usr/local/gocode
|
|
export GOROOT=/usr/local/go
|
|
export PATH=$PATH:$GOROOT/bin
|
|
export GOPATH=/usr/local/gocode
|
|
export PATH=$PATH:$GOPATH/bin
|
|
sudo bash -c "echo 'GOROOT=/usr/local/go' >> /etc/profile"
|
|
sudo bash -c "echo 'PATH=\$PATH:\$GOROOT/bin/' >> /etc/profile"
|
|
sudo bash -c "echo 'GOPATH=/usr/local/gocode' >> /etc/profile"
|
|
sudo bash -c "echo 'PATH=\$PATH:\$GOPATH/bin/' >> /etc/profile"
|
|
|
|
# set GOPATH https://github.com/golang/go/wiki/SettingGOPATH
|
|
go env -w GOPATH=/usr/local/gocode
|
|
|
|
goInstalled=$(go version 2>/dev/null | grep -c 'go')
|
|
fi
|
|
if [ ${goInstalled} -eq 0 ];then
|
|
echo "FAIL: Was not able to install Go"
|
|
sleep 4
|
|
exit 1
|
|
fi
|
|
|
|
correctGoVersion=$(go version | grep -c "go${goVersion}")
|
|
if [ ${correctGoVersion} -eq 0 ]; then
|
|
echo "WARNING: You work with an untested version of GO - should be ${goVersion} .. trying to continue"
|
|
go version
|
|
sleep 3
|
|
echo ""
|
|
fi
|
|
|
|
echo ""
|
|
echo "Installed $(go version)"
|
|
echo ""
|