diff --git a/.install/1-install_requirements.sh b/.install/1-install_requirements.sh index 03b4c0f..2c041da 100755 --- a/.install/1-install_requirements.sh +++ b/.install/1-install_requirements.sh @@ -6,48 +6,81 @@ isARM=$(uname -a | grep arm) # Basics sudo apt update -sudo apt install curl jq zip unzip htop tree ntpdate gnupg ssmtp mpack imagemagick qrencode bc jq libttspico-utils libttspico0 libttspico-data -y +sudo apt install curl jq zip unzip htop tree ntpdate gnupg ssmtp mpack imagemagick qrencode bc libttspico-utils libttspico0 libttspico-data -y + # Silkaj + Duniterpy -libsodium=$(sudo apt search libsodium | grep -v "header" | grep "Network communication" -B1 | head -n1 | awk -F '/' '{ print $1 }') -sudo apt install python3-pip $libsodium -y -pip3 install duniterpy -pip3 install silkaj --user +silkaj() { + libsodium=$(sudo apt search libsodium 2>/dev/null | grep -v -E "header|debug symbols" | grep "Network communication" -B1 | head -n1 | awk -F '/' '{ print $1 }') + [[ $libsodium =~ " " ]] && libsodium=$(echo $libsodium | awk '{ print $2 }') + sudo apt install python3-pip $libsodium -y + pip3 install duniterpy + pip3 install silkaj --user +} + # Install IPFS -[[ -f /usr/local/bin/ipfs ]] && sudo service ipfs stop -if [[ -z $isARM ]]; then - wget https://dist.ipfs.io/ipfs-update/v1.5.2/ipfs-update_v1.5.2_linux-amd64.tar.gz -O $MY_PATH/ipfs-update.tar.gz -else - wget https://dist.ipfs.io/ipfs-update/v1.5.2/ipfs-update_v1.5.2_linux-arm.tar.gz -O $MY_PATH/ipfs-update.tar.gz -fi +ipfs() { + [[ -f /usr/local/bin/ipfs ]] && sudo service ipfs stop + if [[ -z $isARM ]]; then + wget https://dist.ipfs.io/ipfs-update/v1.5.2/ipfs-update_v1.5.2_linux-amd64.tar.gz -O $MY_PATH/ipfs-update.tar.gz + else + wget https://dist.ipfs.io/ipfs-update/v1.5.2/ipfs-update_v1.5.2_linux-arm.tar.gz -O $MY_PATH/ipfs-update.tar.gz + fi -echo "INSTALL ipfs-update" -sudo tar -xvzf $MY_PATH/ipfs-update.tar.gz -C /usr/src/ -rm $MY_PATH/ipfs-update.tar.gz -cd /usr/src/ipfs-update/ -sudo ./install.sh -cd $MY_PATH + echo "INSTALL ipfs-update" + sudo tar -xvzf $MY_PATH/ipfs-update.tar.gz -C /usr/src/ + rm $MY_PATH/ipfs-update.tar.gz + cd /usr/src/ipfs-update/ + sudo ./install.sh + cd $MY_PATH -echo "INSTALL latest ipfs" -sudo ipfs-update install latest + echo "INSTALL latest ipfs" + sudo ipfs-update install latest -echo "CREATE SYSTEMD ipfs SERVICE" -[[ -f /etc/systemd/system/ipfs.service ]] && sudo rm /etc/systemd/system/ipfs.service -sudo cp -f $MY_PATH/templates/ipfs.service /etc/systemd/system/ -sudo sed -i "s/_USER/$USER/g" /etc/systemd/system/ipfs.service - -sudo systemctl daemon-reload -sudo systemctl enable ipfs + echo "CREATE SYSTEMD ipfs SERVICE" + [[ -f /etc/systemd/system/ipfs.service ]] && sudo rm /etc/systemd/system/ipfs.service + sudo cp -f $MY_PATH/templates/ipfs.service /etc/systemd/system/ + sudo sed -i "s/_USER/$USER/g" /etc/systemd/system/ipfs.service + sudo systemctl daemon-reload + sudo systemctl enable ipfs +} # Install gammu -sudo apt install ppp screen git minicom gammu -y -sleep 1 -sudo apt install gammu-smsd -y || sudo apt install -f +gammu() { + sudo apt install ppp screen git minicom gammu -y + sleep 1 + sudo apt install gammu-smsd -y || sudo apt install -f -sudo usermod -aG gammu $USER + sudo usermod -aG gammu $USER +} -umask 027 à /root/.bashrc +# Install PHP + MySQL +php() { + if [[ $(grep buster /etc/os-release) ]]; then + sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8 + sudo add-apt-repository 'deb [arch=amd64] http://mariadb.mirror.liquidtelecom.com/repo/10.4/debian buster main' + sudo apt -y update + sudo apt -y install software-properties-common nginx php php-common php-fpm php-gettext php-gd php-mysql php-curl php-imap php-mbstring php-xml php-cli mariadb-server + elif [[ $(grep stretch /etc/os-release) ]]; then + sudo apt -y install lsb-release apt-transport-https ca-certificates + sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg + echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.3.list + sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 + echo -e "deb [arch=amd64,i386,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.4/debian stretch main\ndeb-src http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.4/debian stretch main" | sudo tee /etc/apt/sources.list.d/mariadb.list + sudo apt -y update + sudo apt -y install software-properties-common dirmngr nginx php7.3 php7.3-common php7.3-gettext php7.3-fpm php7.3-gd php7.3-mysql php7.3-curl php7.3-imap php7.3-mbstring php7.3-xml php7.3-cli mariadb-server + else + echo "${c_red}Votre système n'est pas pris en charge par ce script d'installation.$c_" + exit 1 + fi +} + +# Read arguments +for i in $@; do + echo -e "${c_yellow}Installation de $c_light$i$c_" + $i +done exit 0 diff --git a/install.sh b/install.sh index ab7251e..d981b2b 100755 --- a/install.sh +++ b/install.sh @@ -34,7 +34,7 @@ $MY_PATH/.install/export_colors.sh ## Vérifie si IPFS est installé if [[ $force_req == "o" || -z $(which ipfs) || -z $(which gammu) ]];then echo -e "${c_yellow}IPFS ou gammu n'ont pas été détectés sur votre machine, nous allons installer tous les prérequis...$c_" - $MY_PATH/.install/1-install_requirements.sh || err=1 + $MY_PATH/.install/1-install_requirements.sh silkaj ipfs gammu || err=1 $MY_PATH/.install/2-configure_ipfs_layer.sh || err=1 else echo -e "${c_green}IPFS et gammu sont déjà installé !$c_"