61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.6 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: Créer une archive auto-extractible qui installe nutools
 | 
						|
 | 
						|
USAGE
 | 
						|
    $scriptname [options]
 | 
						|
 | 
						|
OPTIONS
 | 
						|
    -o dest
 | 
						|
        Spécifier le fichier de sortie. Par défaut, il s'agit de
 | 
						|
        nutools-installer.run
 | 
						|
    --tmp-archive
 | 
						|
        Spécifier qu'il s'agit d'une archive temporaire. Cette archive
 | 
						|
        s'auto-détruit après utilisation."
 | 
						|
}
 | 
						|
 | 
						|
MAKESELFDIR="$scriptdir/makeself-2.1.5"
 | 
						|
 | 
						|
mode=755
 | 
						|
parse_opts "${PRETTYOPTS[@]}" \
 | 
						|
    --help '$exit_with display_help' \
 | 
						|
    -o: dest \
 | 
						|
    --tmp-archive tmp_archive \
 | 
						|
    @ args -- "$@" && set -- "${args[@]}" || die "$args"
 | 
						|
 | 
						|
srcdir="$(abspath "$scriptdir/..")"
 | 
						|
srcname="$(basename "$srcdir")"
 | 
						|
 | 
						|
[ -n "$dest" ] || dest="nutools-installer.run"
 | 
						|
# si le fichier à générer se trouve dans le répertoire à installer, créer
 | 
						|
# l'archive dans le répertoire au-dessus
 | 
						|
dest="$(abspath "$dest")"
 | 
						|
if [ "$srcdir" == "$dest" -o "${dest#$srcdir/}" != "$dest" ]; then
 | 
						|
    dest="$(dirname "$srcdir")/$(basename "$dest")"
 | 
						|
fi
 | 
						|
 | 
						|
if [ -f "$dest" -a -z "$tmp_archive" ]; then
 | 
						|
    ask_yesno "Voulez-vous remplacer l'archive existante $(ppath "$dest")?" O || exit 0
 | 
						|
fi
 | 
						|
 | 
						|
## préparer l'archive
 | 
						|
ac_set_tmpdir archivedir
 | 
						|
cpnovcs "$srcdir" "$archivedir"
 | 
						|
 | 
						|
## créer l'archive
 | 
						|
args=("$MAKESELFDIR/makeself.sh" --quiet ${tmp_archive:+--tmp-archive} --nox11
 | 
						|
    "$archivedir" "$dest"
 | 
						|
    "nutools installer"
 | 
						|
    /bin/sh "./$srcname/uinst.sh" "$srcname")
 | 
						|
 | 
						|
estep "Création de l'archive $(ppath "$dest")"
 | 
						|
"${args[@]}"
 | 
						|
 | 
						|
[ -n "$mode" ] && chmod "$mode" "$dest"
 | 
						|
 | 
						|
exit 0
 |