You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
1.4 KiB
87 lines
1.4 KiB
#!/usr/bin/env bash
|
|
|
|
set -eu
|
|
set -x
|
|
|
|
OPTS=""
|
|
TEST=0
|
|
|
|
synopsis() {
|
|
cat << EOF
|
|
Usage :
|
|
`basename $0` [-h] [-f] [-t]
|
|
`basename $0` list
|
|
EOF
|
|
}
|
|
|
|
help() {
|
|
cat << EOF
|
|
|
|
`basename $0` : installe les logiciels nécessaires à l'utilisation de vdn.
|
|
|
|
`synopsis`
|
|
|
|
-h : affiche cette aide
|
|
-f : force l'installation des paquets : pas de demande de confirmation.
|
|
-t : test l'installation (code de retour à 1 si logiciels manquants).
|
|
|
|
`basename $0` list : affiche la liste des distributions sur lesquelles VDN
|
|
est porté.
|
|
|
|
EOF
|
|
}
|
|
|
|
usage() {
|
|
synopsis
|
|
exit 1
|
|
}
|
|
|
|
args() {
|
|
local opt
|
|
while getopts "hft" opt; do
|
|
case $opt in
|
|
h) help; exit 0;;
|
|
f) OPTS="-y";;
|
|
t) TEST=1;;
|
|
?) usage;;
|
|
esac
|
|
done
|
|
shift $(($OPTIND - 1))
|
|
[ $# -ne 0 ] && usage || :
|
|
}
|
|
|
|
# Programme principal
|
|
|
|
VDN_PATH=$(readlink -f $(dirname $0)/..); . $VDN_PATH/bin/functions.sh
|
|
|
|
[ $# -ge 1 ] && [ "$1" = "list" ] && {
|
|
cd $VDN_PATH/distribs/hosts
|
|
find . -mindepth 2 -type d | sed -re 's,^\./,,'
|
|
exit
|
|
}
|
|
|
|
|
|
args $@
|
|
|
|
[ ! -d $VDN_PATH/distribs/hosts/$HOST_RELEASE ] && {
|
|
echo "VDN n'est pas porté pour la distribution $HOST_RELEASE !" >&2
|
|
echo "Consultez les FAQ.">&2
|
|
exit 1
|
|
}
|
|
|
|
source $VDN_PATH/distribs/hosts/$HOST_RELEASE/prepare.sh
|
|
|
|
if [ $TEST = 1 ]; then
|
|
testInstallDebian
|
|
exit
|
|
fi
|
|
|
|
ID=$(id -u -n)
|
|
|
|
[ $ID != root ] && error "Installation réservée à l'administrateur"
|
|
|
|
PATH="$PATH:/usr/local/sbin:/usr/sbin:/sbin"
|
|
|
|
runInstall $OPTS
|
|
|