From e64f68211aa24a7b4f286a658107087ec41c5599 Mon Sep 17 00:00:00 2001 From: MatMoul Date: Fri, 21 Aug 2015 00:21:43 +0200 Subject: [PATCH] Add archdi --- archdi | 133 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100755 archdi diff --git a/archdi b/archdi new file mode 100755 index 0000000..72a3019 --- /dev/null +++ b/archdi @@ -0,0 +1,133 @@ +#!/bin/bash + + +# Arch Linux Desktop Install (archdi) +# ----------------------------------- +# author : MatMoul +# https://github.com/MatMoul +# http://sourceforge.net/u/matmoul +# project : https://github.com/MatMoul/archdi +# http://sourceforge.net/projects/archdi/ +# license : GPLv3 (http://opensource.org/licenses/GPL-3.0) + + + +apptitle="Arch Linux Desktop Install (archdi) - Version: 2015.04.26.22.14.52 (GPLv3)" +cachedir=~/.cache/archdi + +liburl=https://raw.githubusercontent.com/MatMoul/archdi-pkg/master/lib +liburl=http://archdi.sourceforge.net/archdi/archdi-lib +#version="2015.04.26.22.14.52" + + + +help(){ + echo "-h | --help : this screen" + echo "-i | --install : install" + echo "no args : start setup" +} + +install(){ + dependencies + echo "Install $apptitle ..." + echo "" + chmod 755 $0 2>/dev/null + mv $0 /usr/bin/archdi 2>/dev/null + echo "" + echo "$apptitle is installed." + echo "type archdi to start." +} + +run(){ + dependencies + rm -R $cachedir 2>/dev/null + mkdir -p $cachedir 2>/dev/null + cd $cachedir 2>/dev/null + wget -O lib $liburl 2>/dev/null + chmod 755 lib 2>/dev/null + if [ "$chrootoption" = "true" ]; then + ./lib --chroot + else + ./lib --root + fi + cd 2>/dev/null + rm -R $cachedir 2>/dev/null +} + +dependencies(){ + needinstall="false" + clear + echo "Checking internet connexion and sourceforge server..." + if (curl $liburl 1>/dev/null 2>/dev/null) then + echo "Connexion OK." + else + echo "No connexion, please check your internet connexion !" + exit 1 + fi + echo "" + echo "Checking $apptitle dependencies :" + echo "" + if [ -e /usr/bin/wget ]; then + echo "wget : installed" + else + echo "wget : not installed" + needinstall="true" + fi + if [ -e /usr/bin/whiptail ]; then + echo "libnewt : installed" + else + echo "libnewt : not installed" + needinstall="true" + fi + if [ "$needinstall" = "true" ]; then + echo "" + echo "Install missing dependencies ?" + while read -n1 -p "[Y/N] :" -s yesno; do + if [[ $yesno = [YyNn] ]]; then + [[ $yesno = [Yy] ]] && yesno=1 + [[ $yesno = [Nn] ]] && yesno=0 + break + fi + echo "" + done + echo "" + if [ $yesno = 1 ]; then + pacman -S --needed wget libnewt + else + exit 1 + fi + fi + echo "" + echo "Checking bin version..." + #chkupgrade +} + +chkupgrade(){ + if [ -f "/usr/bin/archdi" ]; then + chkver=$version + #chkver=$(curl archdi.sourceforge.net/archdi/version) + if [ ! "$version" = "$chkver" ]; then + if (whiptail --backtitle "$apptitle" --yesno "New version found !\n\nInstall last version ?" 0 0) then + cd /tmp + wget archdi.sourceforge.net/archdi + sh archdi -i + exit 0 + fi + fi + fi +} + +while (( "$#" )); do + case $1 in + -h|--help) help + exit 0;; + -i|--install) install + exit 0;; + #--rc) isrc=true + # liburl=$liburl-rc;; + --chroot) chrootoption="true";; + esac + shift +done + +run