Fix the install-deps script.

This commit is contained in:
Gav Wood 2016-02-04 12:57:59 +01:00
parent 280ef77f44
commit 5f9b110b08

View File

@ -349,23 +349,88 @@ function run_installer()
function get_linux_dependencies() function get_linux_dependencies()
{ {
find_git
find_make
find_gcc
find_apt find_apt
} }
function find_apt() function find_apt()
{ {
depCount=$((depCount+1))
APT_PATH=`which apt-get 2>/dev/null` APT_PATH=`which apt-get 2>/dev/null`
if [[ -f $APT_PATH ]] if [[ -f $APT_PATH ]]
then then
depFound=$((depFound+1))
check "apt-get" check "apt-get"
echo "$($APT_PATH -v)" echo "$($APT_PATH -v)"
isApt=true isApt=true
else else
uncheck "apt-get is missing" uncheck "apt-get is missing"
isApt=false isApt=false
if [[ $isGCC == false || $isGit == false || $isMake == false ]]; then
canContinue=false
errorMessages+="${red}==>${reset} ${b}Couldn't find apt-get:${reset} We can only use apt-get in order to grab our dependencies.\n"
errorMessages+=" Please switch to a distribution such as Debian or Ubuntu or manually install the required packages, git, make and g++/gcc.\n"
fi
fi fi
} }
function find_gcc()
{
depCount=$((depCount+1))
GCC_PATH=`which g++ 2>/dev/null`
if [[ -f $GCC_PATH ]]
then
depFound=$((depFound+1))
check "g++"
isGCC=true
else
uncheck "g++ is missing"
isGCC=false
INSTALL_FILES+="${blue}${dim}==> g++:${reset}\n"
fi
}
function find_git()
{
depCount=$((depCount+1))
GIT_PATH=`which git 2>/dev/null`
if [[ -f $GIT_PATH ]]
then
depFound=$((depFound+1))
check "git"
isGit=true
else
uncheck "git is missing"
isGit=false
INSTALL_FILES+="${blue}${dim}==> git:${reset}\n"
fi
}
function find_make()
{
depCount=$((depCount+1))
MAKE_PATH=`which make 2>/dev/null`
if [[ -f $MAKE_PATH ]]
then
depFound=$((depFound+1))
check "make"
isMake=true
else
uncheck "make is missing"
isMake=false
INSTALL_FILES+="${blue}${dim}==> make:${reset}\n"
fi
}
function linux_rocksdb_installer() function linux_rocksdb_installer()
{ {
oldpwd=`pwd` oldpwd=`pwd`
@ -382,15 +447,26 @@ function run_installer()
function linux_installer() function linux_installer()
{ {
info "Installing git" if [[ $isGCC == false || $isGit == false || $isMake == false ]]; then
info "Installing build dependencies..."
sudo apt-get update
if [[ $isGit == false ]]; then
sudo apt-get install -q -y git sudo apt-get install -q -y git
fi
if [[ $isGCC == false ]]; then
sudo apt-get install -q -y g++ gcc
fi
if [[ $isMake == false ]]; then
sudo apt-get install -q -y make
fi
echo echo
fi
info "Installing rocksdb" info "Installing rocksdb..."
linux_rocksdb_installer linux_rocksdb_installer
echo echo
info "Installing multirust" info "Installing multirust..."
curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sudo sh -s -- --yes curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sudo sh -s -- --yes
sudo multirust update nightly sudo multirust update nightly
sudo multirust default nightly sudo multirust default nightly
@ -445,13 +521,15 @@ function run_installer()
head "Checking OS dependencies" head "Checking OS dependencies"
detectOS detectOS
if [[ $INSTALL_FILES != "" ]]; then
echo echo
head "In addition to the parity build dependencies, this script will install:" head "In addition to the parity build dependencies, this script will install:"
echo "$INSTALL_FILES" echo "$INSTALL_FILES"
echo echo
fi
# Prompt user to continue or abort # Prompt user to continue or abort
wait_for_user "${b}OK,${reset} let's go!" wait_for_user "${b}Last chance!${reset} Sure you want to install this software?"
# Install dependencies and eth # Install dependencies and eth
install install