79 lines
2.3 KiB
Bash
Executable File
79 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
|
urequire DEFAULTS
|
|
|
|
function display_help() {
|
|
uecho "$scriptname: configurer ou afficher des informations sur nutools
|
|
|
|
USAGE
|
|
$scriptname [VERSION]
|
|
|
|
OPTIONS
|
|
-C, --configure
|
|
Faire la configuration pour l'utilisateur courant en appelant uenv -u
|
|
-v, --version
|
|
Afficher la version de nutools installée. C'est l'option par défaut
|
|
-c, --check
|
|
Calculer si la version installée correspond à la version spécifiée
|
|
-o, --oper OPERATOR
|
|
Spécifier l'opérateur à utiliser avec l'option --check (par défaut,
|
|
utiliser l'opérateur ge, qui permet de vérifier si la version minimum
|
|
spécifiée est installée)
|
|
--eq
|
|
--ne
|
|
--lt
|
|
--le
|
|
--gt
|
|
--ge
|
|
--same
|
|
--diff
|
|
Ces options sont des raccourcis. L'option '--OP' est équivalente à
|
|
'--check --op OP'"
|
|
}
|
|
|
|
action=show
|
|
coper=
|
|
args=(
|
|
--help '$exit_with display_help'
|
|
-C,--configure action=configure
|
|
-v,--version action=show
|
|
-c,--check action=check
|
|
-o:,--oper:,--op: '$action=check; set@ coper'
|
|
--eq '$action=check; coper=eq'
|
|
--ne '$action=check; coper=ne'
|
|
--lt '$action=check; coper=lt'
|
|
--le '$action=check; coper=le'
|
|
--gt '$action=check; coper=gt'
|
|
--ge '$action=check; coper=ge'
|
|
--same '$action=check; coper=same'
|
|
--diff '$action=check; coper=diff'
|
|
)
|
|
parse_args "$@"; set -- "${args[@]}"
|
|
|
|
case "$action" in
|
|
configure)
|
|
"$scriptdir/uenv" -u
|
|
;;
|
|
show)
|
|
setx nutoolsver="$scriptdir/pver" -F "$scriptdir/VERSION.txt" --show
|
|
setx ulibver="$scriptdir/ulib" -v
|
|
if isatty; then
|
|
eecho "Répertoire d'installation: $scriptdir"
|
|
eecho "Version de nutools: ${COULEUR_BLEUE}$nutoolsver${COULEUR_NORMALE}"
|
|
eecho "Version de ulib: ${COULEUR_BLEUE}$ulibver${COULEUR_NORMALE}"
|
|
else
|
|
echo "$nutoolsver"
|
|
fi
|
|
;;
|
|
check)
|
|
[ -n "$coper" ] || coper=ge
|
|
cvers="$1"
|
|
[ -n "$cvers" ] || die "Vous devez spécifier la version pour la comparaison"
|
|
case "$coper" in
|
|
eq|ne|lt|le|gt|ge|same|diff) "$scriptdir/pver" -F "$scriptdir/VERSION.txt" "--$coper" "$cvers";;
|
|
*) die "$coper: Opérateur invalide";;
|
|
esac
|
|
;;
|
|
esac
|