Intégration de la branche release-9.10.0
This commit is contained in:
		
						commit
						337f24c447
					
				
							
								
								
									
										17
									
								
								CHANGES.md
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								CHANGES.md
									
									
									
									
									
								
							| @ -1,3 +1,20 @@ | ||||
| ## Version 9.10.0 du 12/11/2020-23:05 | ||||
| 
 | ||||
| * `24d0519` dk: support merge .shared_env et .machine_env | ||||
| * `45c40d7` dk: support de --pull | ||||
| * `c921d2a` pff: support de NOUPSTREAM | ||||
| * `edf956f` dk: BRANCH peut aussi être un ^COMMIT | ||||
| * `85842f3` renommer start-screen en Sscreen | ||||
| * `e395720` maj doc | ||||
| * `4603b1a` bug | ||||
| * `a91542b` maj .gitattributes par défaut | ||||
| * `51c4c33` support sélection java 11 | ||||
| * `82a7952` dm: support des aliases pour ssh aussi | ||||
| * `d1d32de` dk: bug avec update-devel | ||||
| * `037cb1a` maj template sql | ||||
| * `04d037f` support rhel8 / ol8 | ||||
| * `725ba6d` cssh: donner un nom à la session | ||||
| 
 | ||||
| ## Version 9.9.0 du 21/09/2020-18:08 | ||||
| 
 | ||||
| * `2ec6c21` support gros doigt de python2 sur les systèmes modernes | ||||
|  | ||||
| @ -33,8 +33,9 @@ function __auto_screen() { | ||||
| 
 | ||||
|     local msgprefix | ||||
|     local screens count | ||||
|     local session_name="nutools-$USER" | ||||
| 
 | ||||
|     screens="$(LANG=C screen -ls | grep -Ei "attached|detached")" | ||||
|     screens="$(LANG=C screen -ls | grep -Ei "${session_name}.*attached|detached")" | ||||
|     if [ -n "$screens" ]; then | ||||
|         count="$(echo "$screens" | wc -l)" | ||||
|     else | ||||
| @ -52,14 +53,14 @@ La première session" | ||||
|         if __ask " | ||||
| $msgprefix sera reconnectée automatiquent dans 2 secondes | ||||
| Voulez-vous reconnecter la session screen? [On] "; then | ||||
|             exec screen -q -s -/bin/bash -xRR | ||||
|             exec screen -q -s -/bin/bash -xRR -S "$session_name" | ||||
|         else | ||||
|             exec /bin/bash -l | ||||
|         fi | ||||
|     elif __ask " | ||||
| Une ${COULEUR_VERTE}nouvelle session screen${COULEUR_NORMALE} sera lancée automatiquement dans 2 secondes | ||||
| Voulez-vous lancer une session screen? [On] "; then | ||||
|         exec screen -q -s -/bin/bash -RR | ||||
|         exec screen -q -s -/bin/bash -RR -S "$session_name" | ||||
|     else | ||||
|         exec /bin/bash -l | ||||
|     fi | ||||
| @ -1 +1 @@ | ||||
| 9.9.0 | ||||
| 9.10.0 | ||||
|  | ||||
							
								
								
									
										6
									
								
								cssh
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								cssh
									
									
									
									
									
								
							| @ -24,15 +24,15 @@ eval "$vars" | ||||
| [ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter" | ||||
| 
 | ||||
| [ ${#args[*]} -gt 0 ] && cmd="$(qvals "${args[@]}"); " || cmd= | ||||
| cmd="$cmd$(<"$scriptdir/start-screen")" | ||||
| cmd="$cmd$(<"$scriptdir/Sscreen")" | ||||
| cmd="'${cmd//\'/\'\\\'\'}'" | ||||
| 
 | ||||
| for host in "${hosts[@]}"; do | ||||
|     "$ssh" \ | ||||
|         "${options[@]}" -qt "$host" -- \ | ||||
|         "[ -x /usr/local/nutools/start-screen ] && exec /usr/local/nutools/start-screen $(qvals "${args[@]}") || exit 123" | ||||
|         "[ -x /usr/local/nutools/Sscreen ] && exec /usr/local/nutools/Sscreen $(qvals "${args[@]}") || exit 123" | ||||
|     if [ $? -eq 123 ]; then | ||||
|         # pas de start-screen en face, le faire à la main | ||||
|         # pas de Sscreen en face, le faire à la main | ||||
|         ${exec:+exec} \ | ||||
|             "$ssh" "${options[@]}" -t "$host" -- \ | ||||
|             /bin/bash -c "$cmd" | ||||
|  | ||||
							
								
								
									
										63
									
								
								dk
									
									
									
									
									
								
							
							
						
						
									
										63
									
								
								dk
									
									
									
									
									
								
							| @ -18,7 +18,7 @@ Certaines commandes ci-dessous ont le même nom que des commandes docker, et | ||||
| nécessitent un projet docker ou docker-compose. Si ces commandes sont lancées | ||||
| alors qu'on n'est pas dans un projet docker, alors elles sont passées telle | ||||
| quelles à docker. ATTENTION: comme la commande est exécutée par docker, cela | ||||
| veut dire qu'elle n'aura pas la même sématique. | ||||
| veut dire qu'elle n'aura pas la même sémantique. | ||||
| 
 | ||||
| COMMANDES | ||||
|     get-profile | ||||
| @ -273,7 +273,7 @@ OPTIONS générales | ||||
|         Spécifier l'hôte pour la commande systemd-unit | ||||
| 
 | ||||
| OPTIONS build | ||||
|     (ces options ne sont valides que pour les commandes build, brd, bs, bd, bpd) | ||||
|     (ces options ne sont valides que pour les commandes build, brd, bs, by, bpy) | ||||
|     --stack | ||||
|         Indiquer que le build est fait pour un déploiement avec deploy. | ||||
|         S'il existe un fichier docker-stack.yml, il est utilisé de préférence à | ||||
| @ -281,9 +281,11 @@ OPTIONS build | ||||
|         forme docker-stack.PROFILE.yml sont utilisés de préférence aux fichiers | ||||
|         docker-compose.PROFILE.yml | ||||
|         Cette option n'est nécessaire qu'avec build puisque les commandes | ||||
|         deploy, bd, bpd et update impliquent --stack | ||||
|         deploy, by, bpy et update impliquent --stack | ||||
|     -j, --no-cache | ||||
|         Ne pas utiliser le cache lors du build | ||||
|     -U, --pull | ||||
|         Essayer de récupérer une version plus récente de l'image source | ||||
|     -g, --ug, --no-update-apps | ||||
|         ne pas mettre à jour les dépôts dépendants. ces dépôts sont définis dans | ||||
|         le fichier update-apps.conf qui a le format suivant: | ||||
| @ -342,6 +344,8 @@ VARIABLES de update-apps.conf | ||||
|         vaut 'origin' par défaut | ||||
|     BRANCH | ||||
|         vaut 'develop' par défaut | ||||
|         Pour toutes les variables de type BRANCH, utiliser la syntaxe ^COMMIT | ||||
|         pour ignorer ORIGIN et sélectionner un commit en particulier | ||||
|     TYPE | ||||
|         vaut 'composer' par défaut si le fichier composer.json existe à la | ||||
|         racine du projet. sinon vaut 'none' par défaut | ||||
| @ -447,10 +451,6 @@ function docker_set_env_args() { | ||||
|     [ -n "$PROFILE" -a -f ".build.$PROFILE.env" ] && source "./.build.$PROFILE.env" | ||||
|     [ -n "$PROFILE" -a -f "build.$PROFILE.env" ] && source "./build.$PROFILE.env" | ||||
| } | ||||
| function docker_set_run_args() { | ||||
|     replace_run_args+=(--env-file "$1") | ||||
|     source "$1" | ||||
| } | ||||
| function docker_check_name() { | ||||
|     [ -n "$NAME" ] || die "Vous devez définir NAME dans .build.env" | ||||
| 
 | ||||
| @ -765,7 +765,9 @@ function build_update_apps() { | ||||
|         fi | ||||
| 
 | ||||
|         DEVEL_SRCDIR="${var}_DEVEL_SRCDIR"; DEVEL_SRCDIR="${!DEVEL_SRCDIR}" | ||||
|         [ -n "$DEVEL_SRCDIR" ] || DEVEL_SRCDIR="$DEFAULT_DEVEL_SRCDIR/${URL##*/}" | ||||
|         if [ -z "$DEVEL_SRCDIR" -a -n "$URL" ]; then | ||||
|             DEVEL_SRCDIR="$DEFAULT_DEVEL_SRCDIR/${URL##*/}" | ||||
|         fi | ||||
| 
 | ||||
|         DEST="${var}_DEST"; DEST="${!DEST}" | ||||
|         [ -n "$DEST" ] || DEST="$app/b" | ||||
| @ -792,7 +794,7 @@ function build_update_apps() { | ||||
|         # calculer le type maintenant, on en a besoin pour le mode devel | ||||
|         TYPE="${var}_TYPE"; TYPE="${!TYPE}" | ||||
| 
 | ||||
|         if [ -n "$BUILD_UPDATE_DEVEL" ]; then | ||||
|         if [ -n "$BUILD_UPDATE_DEVEL" -a -n "$DEVEL_SRCDIR" ]; then | ||||
|             mkdir -p "$DEST" || { eend; return 1; } | ||||
|             DEST="$DEST/$NAME" | ||||
| 
 | ||||
| @ -831,14 +833,26 @@ function build_update_apps() { | ||||
|                 setx cwd=pwd | ||||
|                 cd "$DEST" | ||||
|                 git fetch --all -p -f || { eend; return 1; } | ||||
|                 git reset --hard "$ORIGIN/$BRANCH" || { eend; return 1; } | ||||
|                 if [ "${BRANCH#^}" != "$BRANCH" ]; then | ||||
|                     git reset --hard "${BRANCH#^}" || { cd "$cwd"; eend; return 1; } | ||||
|                 else | ||||
|                     git reset --hard "$ORIGIN/$BRANCH" || { cd "$cwd"; eend; return 1; } | ||||
|                 fi | ||||
|                 cd "$cwd" | ||||
|             else | ||||
|                 # reliquat mode devel? | ||||
|                 [ -d "$DEST" ] && rm -rf "$DEST" | ||||
|                 # clonage initial | ||||
|                 estep "Clonage $URL:$BRANCH --> $DEST" | ||||
|                 git clone -o "$ORIGIN" -b "$BRANCH" "$URL" "$DEST" || { eend; return 1; } | ||||
|                 if [ "${BRANCH#^}" != "$BRANCH" ]; then | ||||
|                     git clone -o "$ORIGIN" "$URL" "$DEST" || { eend; return 1; } | ||||
|                     setx cwd=pwd | ||||
|                     cd "$DEST" | ||||
|                     git reset --hard "${BRANCH#^}" || { cd "$cwd"; eend; return 1; } | ||||
|                     cd "$cwd" | ||||
|                 else | ||||
|                     git clone -o "$ORIGIN" -b "$BRANCH" "$URL" "$DEST" || { eend; return 1; } | ||||
|                 fi | ||||
|             fi | ||||
| 
 | ||||
|             if [ -z "$TYPE" ]; then | ||||
| @ -965,6 +979,27 @@ function build_update_apps() { | ||||
|     eend | ||||
| } | ||||
| 
 | ||||
| function build_merge_env() { | ||||
|     # si les fichiers .env-all et/ou .env-machine-$MACHINE existent, où $MACHINE | ||||
|     # est la machine actuellement sélectionnée, alors les merger pour créer le | ||||
|     # fichier .env | ||||
|     # Si DOCKER_MACHINE n'est pas défini, prendre par défaut HOSTNAME | ||||
|     local machine="${DOCKER_MACHINE_NAME:-$HOSTNAME}" | ||||
|     local shared=.shared_env for_machine=".${machine}_env" | ||||
|     [ -f "$shared" -o -f "$for_machine" ] || return 0 | ||||
| 
 | ||||
|     echo >.env "## fichier auto-généré. ne pas modifier ##" | ||||
| 
 | ||||
|     if [ -f "$shared" ]; then | ||||
|         echo "## $shared ##" >>.env | ||||
|         cat "$shared" >>.env | ||||
|     fi | ||||
|     if [ -f "$for_machine" ]; then | ||||
|         echo "## $for_machine ##" >>.env | ||||
|         cat "$for_machine" >>.env | ||||
|     fi | ||||
| } | ||||
| 
 | ||||
| function initialize_build_env() { | ||||
|     CTXDIR=. | ||||
|     NAME= | ||||
| @ -993,6 +1028,7 @@ function default_compose_build() { | ||||
|         "${replace_env_args[@]}" "${env_args[@]}" \ | ||||
|         build \ | ||||
|         ${NO_CACHE:+--no-cache} \ | ||||
|         ${PULL:+--pull} \ | ||||
|         "${replace_build_args[@]}" "${build_args[@]}" \ | ||||
|         "$@" | ||||
| } | ||||
| @ -1003,6 +1039,7 @@ function default_docker_build() { | ||||
|     done | ||||
|     ${FAKE:+qvals} "$DOCKER" build \ | ||||
|         ${NO_CACHE:+--no-cache} \ | ||||
|         ${PULL:+--pull} \ | ||||
|         "${replace_env_args[@]}" "${env_args[@]}" \ | ||||
|         "${replace_build_args[@]}" "${build_args[@]}" \ | ||||
|         "$@" "$CTXDIR" | ||||
| @ -1036,6 +1073,7 @@ function auto_build() { | ||||
|         compose_set_env_args | ||||
|         update_build_env "${bargs[@]}" | ||||
|         build_update_apps || return 1 | ||||
|         build_merge_env | ||||
|         compose_build "$@" | ||||
|     elif [ -f Dockerfile ]; then | ||||
|         docker_parse_env_args | ||||
| @ -1050,6 +1088,7 @@ function auto_build() { | ||||
|         done | ||||
|         ${FAKE:+qvals} "$DOCKER" build \ | ||||
|             ${NO_CACHE:+--no-cache} \ | ||||
|             ${PULL:+--pull} \ | ||||
|             "${replace_build_args[@]}" "$@" | ||||
|     fi | ||||
| } | ||||
| @ -1939,6 +1978,7 @@ FAKE= | ||||
| VARS=() | ||||
| FORCE= | ||||
| NO_CACHE= | ||||
| PULL= | ||||
| HOST= | ||||
| WITH_REGISTRY_AUTH=1 | ||||
| update_apps_mode=ub | ||||
| @ -1960,6 +2000,7 @@ args=( | ||||
|     -e:,--build-arg:,--env: VARS | ||||
|     -f,--force FORCE=1 | ||||
|     -j,--no-cache NO_CACHE=1 | ||||
|     -U,--pull PULL=1 | ||||
|     -h:,--host: HOST= | ||||
|     -g,--ug,--no-update-apps update_apps_mode=b | ||||
|     -u,--uu,--update-apps-only update_apps_mode=u | ||||
|  | ||||
| @ -7,35 +7,40 @@ if [ -n "$UTOOLS_DOCKER_ALIASES" ]; then | ||||
|     #    alias dm=docker-machine | ||||
|     #fi | ||||
|     function dm() { | ||||
|         if [ "$1" == use -a -n "$2" -a -f ~/etc/default/dk ]; then | ||||
|             # chercher les aliases éventuels | ||||
|             local machine="$2"; shift; shift | ||||
|             machine="$( | ||||
|                 CLUSTERDIRS=() | ||||
|                 DM_ALIASES=() | ||||
|                 source ~/etc/default/dk | ||||
|                 for alias_machine in "${DM_ALIASES[@]}"; do | ||||
|                     if [ "${alias_machine%%:*}" == "$machine" ]; then | ||||
|                         echo "${alias_machine#*:}" | ||||
|                         exit | ||||
|                     fi | ||||
|                 done | ||||
|                 for clusterdir in "${CLUSTERDIRS[@]}"; do | ||||
|                     if [ -f "$clusterdir/0config/configure.conf" ]; then | ||||
|                         DM_ALIASES=() | ||||
|                         source "$clusterdir/0config/configure.conf" | ||||
|                         for alias_machine in "${DM_ALIASES[@]}"; do | ||||
|                             if [ "${alias_machine%%:*}" == "$machine" ]; then | ||||
|                                 echo "${alias_machine#*:}" | ||||
|                                 exit | ||||
|                             fi | ||||
|                         done | ||||
|                     fi | ||||
|                 done | ||||
|                 echo "$machine" | ||||
|             )" | ||||
|             set -- use "$machine" "$@" | ||||
|         case "$1" in | ||||
|         use|ssh) | ||||
|             if [ -n "$2" -a -f ~/etc/default/dk ]; then | ||||
|                 # chercher les aliases éventuels | ||||
|                 local cmd="$1"; shift | ||||
|                 local machine="$1"; shift | ||||
|                 machine="$( | ||||
|     CLUSTERDIRS=() | ||||
|     DM_ALIASES=() | ||||
|     source ~/etc/default/dk | ||||
|     for alias_machine in "${DM_ALIASES[@]}"; do | ||||
|         if [ "${alias_machine%%:*}" == "$machine" ]; then | ||||
|             echo "${alias_machine#*:}" | ||||
|             exit | ||||
|         fi | ||||
|     done | ||||
|     for clusterdir in "${CLUSTERDIRS[@]}"; do | ||||
|         if [ -f "$clusterdir/0config/configure.conf" ]; then | ||||
|             DM_ALIASES=() | ||||
|             source "$clusterdir/0config/configure.conf" | ||||
|             for alias_machine in "${DM_ALIASES[@]}"; do | ||||
|                 if [ "${alias_machine%%:*}" == "$machine" ]; then | ||||
|                     echo "${alias_machine#*:}" | ||||
|                     exit | ||||
|                 fi | ||||
|             done | ||||
|         fi | ||||
|     done | ||||
|     echo "$machine" | ||||
| )" | ||||
|                 set -- "$cmd" "$machine" "$@" | ||||
|             fi | ||||
|             ;; | ||||
|         esac | ||||
|         if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then | ||||
|             __docker_machine_wrapper "$@" | ||||
|         else | ||||
|  | ||||
| @ -86,7 +86,13 @@ function generate_sql() { | ||||
| 
 | ||||
|     check_overwrite "$1" || return | ||||
|     estep "$(ppath "$file")" | ||||
|     echo >"$file" "-- -*- coding: $encoding ${mode:+mode: $mode }-*- vim:sw=4:sts=4:et:ai:si:sta:fenc=$encoding" | ||||
|     echo >"$file" "\ | ||||
| -- -*- coding: $encoding ${mode:+mode: $mode }-*- vim:sw=4:sts=4:et:ai:si:sta:fenc=$encoding | ||||
| -- @database xxx | ||||
| 
 | ||||
| start transaction; | ||||
| 
 | ||||
| commit;" | ||||
|     [ -n "$2" ] && array_add "$2" "$file" | ||||
|     return 0 | ||||
| } | ||||
|  | ||||
							
								
								
									
										177
									
								
								lib/ulib/java
									
									
									
									
									
								
							
							
						
						
									
										177
									
								
								lib/ulib/java
									
									
									
									
									
								
							| @ -8,24 +8,27 @@ urequire base sysinfos | ||||
| 
 | ||||
| ################################################################################ | ||||
| # versions installées sur le système | ||||
| JAVA_VMS13=(); JAVA_HOMES13=() | ||||
| JAVA_VMS14=(); JAVA_HOMES14=() | ||||
| JAVA_VMS1_3=(); JAVA_HOMES1_3=() | ||||
| JAVA_VMS1_4=(); JAVA_HOMES1_4=() | ||||
| JAVA_VMS5=(); JAVA_HOMES5=() | ||||
| JAVA_VMS6=(); JAVA_HOMES6=() | ||||
| JAVA_VMS7=(); JAVA_HOMES7=() | ||||
| JAVA_VMS8=(); JAVA_HOMES8=() | ||||
| JAVA_VMS11=(); JAVA_HOMES11=() | ||||
| # versions locales 32 bits | ||||
| JAVA32_VMS13=(); JAVA32_HOMES13=() | ||||
| JAVA32_VMS14=(); JAVA32_HOMES14=() | ||||
| JAVA32_VMS1_3=(); JAVA32_HOMES1_3=() | ||||
| JAVA32_VMS1_4=(); JAVA32_HOMES1_4=() | ||||
| JAVA32_VMS5=(); JAVA32_HOMES5=() | ||||
| JAVA32_VMS6=(); JAVA32_HOMES6=() | ||||
| JAVA32_VMS7=(); JAVA32_HOMES7=() | ||||
| JAVA32_VMS8=(); JAVA32_HOMES8=() | ||||
| JAVA32_VMS11=(); JAVA32_HOMES11=() | ||||
| # versions locales 64 bits | ||||
| JAVA64_VMS5=(); JAVA64_HOMES5=() | ||||
| JAVA64_VMS6=(); JAVA64_HOMES6=() | ||||
| JAVA64_VMS7=(); JAVA64_HOMES7=() | ||||
| JAVA64_VMS8=(); JAVA64_HOMES8=() | ||||
| JAVA64_VMS11=(); JAVA64_HOMES11=() | ||||
| # version sélectionnée | ||||
| SELECTED_JAVA_VM=; SELECTED_JAVA_HOME= | ||||
| SELECTED_JAVA=; SELECTED_JAVAC= | ||||
| @ -37,7 +40,7 @@ function __java_add() { | ||||
| 
 | ||||
| function __java_compute_vms() { | ||||
|     # calculer la liste de VMs disponibles et initialiser les tableaux | ||||
|     # JAVA{,32,64}_{VMS,HOMES}{13,14,5,6,7,8} | ||||
|     # JAVA{,32,64}_{VMS,HOMES}{1_3,1_4,5,6,7,8} | ||||
|     [ -z "$__COMPUTED_JAVA_VMS" ] || return | ||||
| 
 | ||||
|     local vms vm v | ||||
| @ -48,8 +51,8 @@ function __java_compute_vms() { | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#sun-jdk-}" | ||||
|             if [ "$v" == 1.4 ]; then | ||||
|                 __java_add VMS14 "$vm" 32 | ||||
|                 __java_add HOMES14 "$HOME/opt/jvm32/$vm" 32 | ||||
|                 __java_add VMS1_4 "$vm" 32 | ||||
|                 __java_add HOMES1_4 "$HOME/opt/jvm32/$vm" 32 | ||||
|             elif [ "$v" == 1.5 ]; then | ||||
|                 __java_add VMS5 "$vm" 32 | ||||
|                 __java_add HOMES5 "$HOME/opt/jvm32/$vm" 32 | ||||
| @ -66,8 +69,8 @@ function __java_compute_vms() { | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "j2sdk1.4.2*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS14 "$vm" 32 | ||||
|             __java_add HOMES14 "$HOME/opt/jvm32/$vm" 32 | ||||
|             __java_add VMS1_4 "$vm" 32 | ||||
|             __java_add HOMES1_4 "$HOME/opt/jvm32/$vm" 32 | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "jdk1.5.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
| @ -106,6 +109,14 @@ function __java_compute_vms() { | ||||
|                 __java_add HOMES8 "$HOME/opt/jvm64/$vm" 64 | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" jdk11)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#jdk}" | ||||
|             if [ "$v" == 11 ]; then | ||||
|                 __java_add VMS11 "$vm" 64 | ||||
|                 __java_add HOMES11 "$HOME/opt/jvm64/$vm" 64 | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk1.5.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS5 "$vm" 64 | ||||
| @ -126,13 +137,18 @@ function __java_compute_vms() { | ||||
|             __java_add VMS8 "$vm" 64 | ||||
|             __java_add HOMES8 "$HOME/opt/jvm64/$vm" 64 | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk-11.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS11 "$vm" 64 | ||||
|             __java_add HOMES11 "$HOME/opt/jvm64/$vm" 64 | ||||
|         done | ||||
|         # Puis chercher dans les JVMs installées manuellement dans ~/opt | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt" "sun-jdk-*")" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#sun-jdk-}" | ||||
|             if [ "$v" == 1.4 ]; then | ||||
|                 __java_add VMS14 "$vm" | ||||
|                 __java_add HOMES14 "$HOME/opt/$vm" | ||||
|                 __java_add VMS1_4 "$vm" | ||||
|                 __java_add HOMES1_4 "$HOME/opt/$vm" | ||||
|             elif [ "$v" == 1.5 ]; then | ||||
|                 __java_add VMS5 "$vm" | ||||
|                 __java_add HOMES5 "$HOME/opt/$vm" | ||||
| @ -147,10 +163,18 @@ function __java_compute_vms() { | ||||
|                 __java_add HOMES8 "$HOME/opt/$vm" | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt" jdk11)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#jdk}" | ||||
|             if [ "$v" == 11 ]; then | ||||
|                 __java_add VMS11 "$vm" | ||||
|                 __java_add HOMES11 "$HOME/opt/$vm" | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt" "j2sdk1.4.2*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS14 "$vm" | ||||
|             __java_add HOMES14 "$HOME/opt/$vm" | ||||
|             __java_add VMS1_4 "$vm" | ||||
|             __java_add HOMES1_4 "$HOME/opt/$vm" | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt" "jdk1.5.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
| @ -172,13 +196,18 @@ function __java_compute_vms() { | ||||
|             __java_add VMS8 "$vm" | ||||
|             __java_add HOMES8 "$HOME/opt/$vm" | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "$HOME/opt" "jdk-11.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS11 "$vm" | ||||
|             __java_add HOMES11 "$HOME/opt/$vm" | ||||
|         done | ||||
|         # Puis chercher dans les JVMs installées manuellement dans /opt | ||||
|         array_from_lines vms "$(list_dirs "/opt" "sun-jdk-*")" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#sun-jdk-}" | ||||
|             if [ "$v" == 1.4 ]; then | ||||
|                 __java_add VMS14 "$vm" | ||||
|                 __java_add HOMES14 "/opt/$vm" | ||||
|                 __java_add VMS1_4 "$vm" | ||||
|                 __java_add HOMES1_4 "/opt/$vm" | ||||
|             elif [ "$v" == 1.5 ]; then | ||||
|                 __java_add VMS5 "$vm" | ||||
|                 __java_add HOMES5 "/opt/$vm" | ||||
| @ -193,10 +222,18 @@ function __java_compute_vms() { | ||||
|                 __java_add HOMES8 "/opt/$vm" | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "/opt" jdk11)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             v="${vm#jdk}" | ||||
|             if [ "$v" == 11 ]; then | ||||
|                 __java_add VMS11 "$vm" | ||||
|                 __java_add HOMES11 "/opt/$vm" | ||||
|             fi | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "/opt" "j2sdk1.4.2*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS14 "$vm" | ||||
|             __java_add HOMES14 "/opt/$vm" | ||||
|             __java_add VMS1_4 "$vm" | ||||
|             __java_add HOMES1_4 "/opt/$vm" | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "/opt" "jdk1.5.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
| @ -218,6 +255,11 @@ function __java_compute_vms() { | ||||
|             __java_add VMS8 "$vm" | ||||
|             __java_add HOMES8 "/opt/$vm" | ||||
|         done | ||||
|         array_from_lines vms "$(list_dirs "/opt" "jdk-11.*" | LANG=C sort -r)" | ||||
|         for vm in "${vms[@]}"; do | ||||
|             __java_add VMS11 "$vm" | ||||
|             __java_add HOMES11 "/opt/$vm" | ||||
|         done | ||||
|         # Puis chercher dans les JVMs installées par le système dans | ||||
|         # /usr/lib/jvm | ||||
|         if check_sysinfos -d gentoo; then | ||||
| @ -226,8 +268,8 @@ function __java_compute_vms() { | ||||
|             for vm in "${vms[@]}"; do | ||||
|                 v="${vm#sun-jdk-}" | ||||
|                 if [ "$v" == 1.4 ]; then | ||||
|                     __java_add VMS14 "$vm" | ||||
|                     __java_add HOMES14 "/usr/lib/jvm/$vm" | ||||
|                     __java_add VMS1_4 "$vm" | ||||
|                     __java_add HOMES1_4 "/usr/lib/jvm/$vm" | ||||
|                 elif [ "$v" == 1.5 ]; then | ||||
|                     __java_add VMS5 "$vm" | ||||
|                     __java_add HOMES5 "/usr/lib/jvm/$vm" | ||||
| @ -246,12 +288,15 @@ function __java_compute_vms() { | ||||
|             # sur debian | ||||
|             array_from_lines vms "$(list_dirs /usr/lib/jvm)" | ||||
|             for vm in "${vms[@]}"; do | ||||
|                 v="${vm%-sun}" | ||||
|                 v="$vm" | ||||
|                 v="${v%-sun}" | ||||
|                 v="${v%-amd64}" | ||||
|                 v="${v%-openjdk}" | ||||
|                 v="${v#java-}" | ||||
|                 v="${v#j2sdk}" | ||||
|                 if [ "$v" == 1.4 ]; then | ||||
|                     __java_add VMS14 "$vm" | ||||
|                     __java_add HOMES14 "/usr/lib/jvm/$vm" | ||||
|                     __java_add VMS1_4 "$vm" | ||||
|                     __java_add HOMES1_4 "/usr/lib/jvm/$vm" | ||||
|                 elif [ "$v" == 1.5 -o "$v" == 1.5.0 ]; then | ||||
|                     __java_add VMS5 "$vm" | ||||
|                     __java_add HOMES5 "/usr/lib/jvm/$vm" | ||||
| @ -264,11 +309,14 @@ function __java_compute_vms() { | ||||
|                 elif [ "$v" == 8 -o "$v" == 1.8 ]; then | ||||
|                     __java_add VMS8 "$vm" | ||||
|                     __java_add HOMES8 "/usr/lib/jvm/$vm" | ||||
|                 elif [ "$v" == 11 ]; then | ||||
|                     __java_add VMS11 "$vm" | ||||
|                     __java_add HOMES11 "/usr/lib/jvm/$vm" | ||||
|                 fi | ||||
|             done | ||||
|             if [ -d /usr/lib/j2sdk1.4-sun ]; then | ||||
|                 __java_add VMS14 j2sdk1.4-sun | ||||
|                 __java_add HOMES14 /usr/lib/j2sdk1.4-sun | ||||
|                 __java_add VMS1_4 j2sdk1.4-sun | ||||
|                 __java_add HOMES1_4 /usr/lib/j2sdk1.4-sun | ||||
|             fi | ||||
|         elif check_sysinfos -d redhatlike; then | ||||
|             # XXX sur redhat | ||||
| @ -276,12 +324,12 @@ function __java_compute_vms() { | ||||
|         fi | ||||
|     elif check_sysinfos -s macosx; then | ||||
|         if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.3" ]; then | ||||
|             __java_add VMS13 "1.3" | ||||
|             __java_add HOMES13 "/System/Library/Frameworks/JavaVM.framework/Versions/1.3/Home" | ||||
|             __java_add VMS1_3 "1.3" | ||||
|             __java_add HOMES1_3 "/System/Library/Frameworks/JavaVM.framework/Versions/1.3/Home" | ||||
|         fi | ||||
|         if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.4" ]; then | ||||
|             __java_add VMS14 "1.4" | ||||
|             __java_add HOMES14 "/System/Library/Frameworks/JavaVM.framework/Versions/1.4/Home" | ||||
|             __java_add VMS1_4 "1.4" | ||||
|             __java_add HOMES1_4 "/System/Library/Frameworks/JavaVM.framework/Versions/1.4/Home" | ||||
|         fi | ||||
|         if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.5" ]; then | ||||
|             __java_add VMS5 "1.5" | ||||
| @ -305,7 +353,7 @@ function __java_compute_vms() { | ||||
| 
 | ||||
| function __java_dump_vms() { | ||||
|     local v b i vms homes | ||||
|     for v in 13 14 5 6 7 8; do | ||||
|     for v in 1_3 1_4 5 6 7 8 11; do | ||||
|         for b in "" 32 64; do | ||||
|             vms="JAVA${b}_VMS${v}[@]"; vms=("${!vms}") | ||||
|             homes="JAVA${b}_HOMES${v}[@]"; homes=("${!homes}") | ||||
| @ -336,7 +384,7 @@ function __java_select_vms() { | ||||
| } | ||||
| 
 | ||||
| function __java_select() { | ||||
|     # Sélectionner la version de java $1 (qui peut être 13, 14, 5, 6, 7 ou 8) | ||||
|     # Sélectionner la version de java $1 (qui peut être 1_3, 1_4, 5, 6, 7, 8 ou 11) | ||||
|     # Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la | ||||
|     # version 32bits ou 64 bits. Sinon, la version sélectionnée peut être 32bits | ||||
|     # ou 64bits selon ce qui est disponible. | ||||
| @ -380,8 +428,8 @@ function __java_select() { | ||||
| 
 | ||||
| function __java_select_default() { | ||||
|     # Sélectionner la version de java par défaut. Si JAVA_HOME est défini, | ||||
|     # prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, puis 14 | ||||
|     # la version 13 n'est jamais sélectionnée automatiquement | ||||
|     # prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, 11 puis 1_4 | ||||
|     # la version 1_3 n'est jamais sélectionnée automatiquement | ||||
|     if [ -n "$JAVA_HOME" ]; then | ||||
|         export JAVA_HOME # s'assurer que cette variable est exportée | ||||
|         export JAVA="$JAVA_HOME/bin/java" | ||||
| @ -392,7 +440,7 @@ function __java_select_default() { | ||||
|         return 0 | ||||
|     fi | ||||
|     local vm | ||||
|     for vm in 5 6 7 8 14; do | ||||
|     for vm in 5 6 7 8 11 1_4; do | ||||
|         __java_select "$vm" && return 0 | ||||
|     done | ||||
|     return 1 | ||||
| @ -400,39 +448,44 @@ function __java_select_default() { | ||||
| 
 | ||||
| function select_java() { | ||||
|     # sélectionner la version *minimum* de java correspondant à $1 | ||||
|     # $1== 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+ | ||||
|     # $1 == 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+|11|11+ | ||||
|     # Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la | ||||
|     # version 32bits ou 64 bits | ||||
|     local v vms homes | ||||
| 
 | ||||
|     case "$1" in | ||||
|     1.3|1.3+|13|13+) | ||||
|         for v in 13 14 5 6 7 8; do | ||||
|     1.3|1.3+) | ||||
|         for v in 1_3 1_4 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.4|1.4+|14|14+) | ||||
|         for v in 14 5 6 7 8; do | ||||
|     1.4|1.4+) | ||||
|         for v in 1_4 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.5|1.5+|5|5+) | ||||
|         for v in 5 6 7 8; do | ||||
|         for v in 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.6|1.6+|6|6+) | ||||
|         for v in 6 7 8; do | ||||
|         for v in 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.7|1.7+|7|7+) | ||||
|         for v in 7 8; do | ||||
|         for v in 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.8|1.8+|8|8+) | ||||
|         for v in 8; do | ||||
|         for v in 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     11|11+) | ||||
|         for v in 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -442,26 +495,26 @@ function select_java() { | ||||
| 
 | ||||
| function select_java_exact() { | ||||
|     # sélectionner la version *exacte* de java correspondant à $1 | ||||
|     # $1== 1.3|1.4|1.5|1.6|1.7|1.8 pour une correspondance exacte | ||||
|     # $1== 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+ pour une version minimum | ||||
|     # $1 == 1.3|1.4|1.5|1.6|1.7|1.8|11 pour une correspondance exacte | ||||
|     # $1 == 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+|11+ pour une version minimum | ||||
|     # Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la | ||||
|     # version 32bits ou 64 bits | ||||
|     local v vms homes | ||||
| 
 | ||||
|     case "$1" in | ||||
|     1.3|13) | ||||
|         __java_select 13 && return 0 | ||||
|     1.3) | ||||
|         __java_select 1_3 && return 0 | ||||
|         ;; | ||||
|     1.3+|13+) | ||||
|         for v in 13 14 5 6 7 8; do | ||||
|     1.3+) | ||||
|         for v in 1_3 1_4 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     1.4|14) | ||||
|         __java_select 14 && return 0 | ||||
|     1.4) | ||||
|         __java_select 1_4 && return 0 | ||||
|         ;; | ||||
|     1.4+|14+) | ||||
|         for v in 14 5 6 7 8; do | ||||
|     1.4+) | ||||
|         for v in 1_4 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -469,7 +522,7 @@ function select_java_exact() { | ||||
|         __java_select 5 "$2" && return 0 | ||||
|         ;; | ||||
|     1.5+|5+) | ||||
|         for v in 5 6 7 8; do | ||||
|         for v in 5 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -477,7 +530,7 @@ function select_java_exact() { | ||||
|         __java_select 6 "$2" && return 0 | ||||
|         ;; | ||||
|     1.6+|6+) | ||||
|         for v in 6 7 8; do | ||||
|         for v in 6 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -485,7 +538,7 @@ function select_java_exact() { | ||||
|         __java_select 7 "$2" && return 0 | ||||
|         ;; | ||||
|     1.7+|7+) | ||||
|         for v in 7 8; do | ||||
|         for v in 7 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -493,7 +546,15 @@ function select_java_exact() { | ||||
|         __java_select 8 "$2" && return 0 | ||||
|         ;; | ||||
|     1.8+|8+) | ||||
|         for v in 8; do | ||||
|         for v in 8 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
|     11) | ||||
|         __java_select 11 "$2" && return 0 | ||||
|         ;; | ||||
|     11+) | ||||
|         for v in 11; do | ||||
|             __java_select "$v" "$2" && return 0 | ||||
|         done | ||||
|         ;; | ||||
| @ -505,9 +566,9 @@ function select_java_any() { | ||||
|     # Sélectionner la version exacte de java correspondant aux arguments, dans | ||||
|     # l'ordre, jusqu'à ce qu'un argument corresponde. DEFAULT correspond à la | ||||
|     # valeur actuelle de JAVA_HOME, si elle est définie. | ||||
|     # Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 1.4" | ||||
|     # Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 11 1.4" | ||||
|     local v | ||||
|     [ -n "$*" ] || set -- DEFAULT 5 6 7 8 1.4 | ||||
|     [ -n "$*" ] || set -- DEFAULT 5 6 7 8 11 1.4 | ||||
|     for v in "$@"; do | ||||
|         if [ "$v" == DEFAULT ]; then | ||||
|             if [ -n "$JAVA_HOME" ]; then | ||||
|  | ||||
| @ -28,8 +28,8 @@ debianlike_SYSVERS=() | ||||
| debian_SYSVERS=(buster stretch jessie wheezy squeeze lenny etch) | ||||
| ubuntu_SYSVERS=(oneiric natty maverick lucid karmic jaunty intrepid hardy) | ||||
| redhatlike_SYSVERS=() | ||||
| ol_SYSVERS=(ol7 ol6 redhat7 redhat6) | ||||
| rhel_SYSVERS=(rhel7 rhel6 rhel5 rhel4 redhat7 redhat6 redhat5 redhat4) | ||||
| ol_SYSVERS=(ol8 ol7 ol6 redhat8 redhat7 redhat6) | ||||
| rhel_SYSVERS=(rhel8 rhel7 rhel6 rhel5 rhel4 redhat8 redhat7 redhat6 redhat5 redhat4) | ||||
| fedora_SYSVERS=(fedora14 fedora13 fedora12 fedora11) | ||||
| centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4) | ||||
| suse_SYSVERS=() | ||||
| @ -157,6 +157,7 @@ function __compute_sysinfos() { | ||||
|         elif [ -n "$oracle_release" ]; then | ||||
|             MYSYSDIST=(ol rhel redhatlike) | ||||
|             case "$oracle_release" in | ||||
|             Oracle*Linux*release\ 8*) MYSYSVER=(ol8 rhel8 redhat8);; | ||||
|             Oracle*Linux*release\ 7*) MYSYSVER=(ol7 rhel7 redhat7);; | ||||
|             Oracle*Linux*release\ 6*) MYSYSVER=(ol6 rhel6 redhat6);; | ||||
|             esac | ||||
| @ -172,10 +173,12 @@ function __compute_sysinfos() { | ||||
|             Fedora*13*) MYSYSVER=(fedora13);; | ||||
|             Fedora*12*) MYSYSVER=(fedora12);; | ||||
|             Fedora*11*) MYSYSVER=(fedora11);; | ||||
|             Red*Hat*Enterprise*Linux*release\ 8*) MYSYSVER=(rhel8 redhat8);; | ||||
|             Red*Hat*Enterprise*Linux*release\ 7*) MYSYSVER=(rhel7 redhat7);; | ||||
|             Red*Hat*Enterprise*Linux*release\ 6*) MYSYSVER=(rhel6 redhat6);; | ||||
|             Red*Hat*Enterprise*Linux*release\ 5*) MYSYSVER=(rhel5 redhat5);; | ||||
|             Red*Hat*Enterprise*Linux*release\ 4*) MYSYSVER=(rhel4 redhat4);; | ||||
|             CentOS*release\ 8*) MYSYSVER=(centos8 redhat8);; | ||||
|             CentOS*release\ 7*) MYSYSVER=(centos7 redhat7);; | ||||
|             CentOS*release\ 6*) MYSYSVER=(centos6 redhat6);; | ||||
|             CentOS*release\ 5*) MYSYSVER=(centos5 redhat5);; | ||||
|  | ||||
							
								
								
									
										27
									
								
								pff
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								pff
									
									
									
									
									
								
							| @ -30,6 +30,7 @@ PFFCONFVARS=( | ||||
|     "MKDIRS//Répertoires qui doivent toujours exister" | ||||
|     "FILTERS//Filtres appliqués aux fichiers lors de l'intégration, de la forme 'filespec:filter'. Cf la doc pour le détail du format" | ||||
|     "NOMERGES=//Fichiers qu'il ne faut pas chercher à fusionner. Cf la doc pour le détail du format" | ||||
|     "NOUPSTREAM=//Indiquer qu'il n'y a pas de fichiers upstream. pff est uniquement utilisé pour gérer des profils de fichiers" | ||||
| ) | ||||
| 
 | ||||
| if [ "$#" -eq 1 -a "$1" == --nutools-makelinks ]; then | ||||
| @ -190,6 +191,13 @@ pff: | ||||
|           que les fichiers ayant l'extension .c situés dans le répertoire du | ||||
|           projet | ||||
| 
 | ||||
|     NOUPSTREAM -- indiquer qu'il n'y a pas de distribution upstream ni de | ||||
|         fichiers origine. pff est alors uniquement utilisé pour gérer des | ||||
|         profils de fichier. | ||||
|         Pour le moment, la seule différence est que le mode des fichiers de | ||||
|         pff/Base n'est pas forcé à 0444. Ainsi, ces fichiers sont traités au | ||||
|         même titre que ceux du répertoire pff/Common | ||||
| 
 | ||||
| COMMANDES / OPTIONS | ||||
| Les arguments du script dépendent de la commande utilisée. Les commandes | ||||
| supportées sont: | ||||
| @ -571,8 +579,11 @@ function autoinit() { | ||||
|     local pffdir="$1" profile mkdir | ||||
|     [ -d "$pffdir/pff/Current" ] || mkdir -p "$pffdir/pff/Current" | ||||
|     [ -d "$pffdir/pff/Base" ] || mkdir -p "$pffdir/pff/Base" | ||||
|     # tous les fichiers du profil Base doivent être en lecture seule | ||||
|     find "$pffdir/pff/Base" -type f -perm /222 -exec chmod a-w '{}' + | ||||
|     # tous les fichiers du profil Base doivent être en lecture seule, sauf si | ||||
|     # NOUPSTREAM=1 | ||||
|     if [ -z "$NOUPSTREAM" ]; then | ||||
|         find "$pffdir/pff/Base" -type f -perm /222 -exec chmod a-w '{}' + | ||||
|     fi | ||||
|     # Créer les répertoires de MKDIRS | ||||
|     for mkdir in "${MKDIRS[@]}"; do | ||||
|         mkdir -p "$pffdir/$mkdir" | ||||
| @ -1144,7 +1155,7 @@ function patch_cmd() { | ||||
|                 setx rfile=get_rfile "$bfile" "$pffdir" | ||||
|                 mkdirof "$rfile" | ||||
|                 cp -a "$bfile" "$rfile" | ||||
|                 chmod +w "$rfile" | ||||
|                 [ -z "$NOUPSTREAM" ] && chmod +w "$rfile" | ||||
|             done | ||||
|             git add -A | ||||
|             [ -n "$(git status --porcelain)" ] && git commit -qm "Base" | ||||
| @ -1249,9 +1260,9 @@ $(qvals eimportant "Sinon, tapez ${COULEUR_ROUGE}Abort${COULEUR_NORMALE} pour ar | ||||
|             etitle "Finaliser intégration de la version $version" | ||||
|             for vlfile in "${vlfiles[@]}"; do | ||||
|                 bfile="${vlfile%__pv-${version}__}" | ||||
|                 chmod +w "$bfile" | ||||
|                 [ -z "$NOUPSTREAM" ] && chmod +w "$bfile" | ||||
|                 mv "$vlfile" "$bfile" | ||||
|                 chmod a-w "$bfile" | ||||
|                 [ -z "$NOUPSTREAM" ] && chmod a-w "$bfile" | ||||
|             done | ||||
|             eop_version=1 | ||||
|             VERSION="$version" | ||||
| @ -1308,7 +1319,9 @@ function add_global__link() { | ||||
|         # Création des liens pour $rfile | ||||
|         mkdirof "$bfile" || return | ||||
|         mv "$pfile" "$bfile" || return | ||||
|         chmod a-w "$bfile" || return | ||||
|         if [ -z "$NOUPSTREAM" ]; then | ||||
|             chmod a-w "$bfile" || return | ||||
|         fi | ||||
|         [ -L "$pfile" ] || ln -sf "$plink" "$pfile" || return | ||||
|         mkdirof "$cfile" || return | ||||
|         [ -L "$cfile" ] || ln -sf "$clink" "$cfile" || return | ||||
| @ -1412,7 +1425,7 @@ function add_local__link() { | ||||
|         cp "$Cfile" "$Pfile" | ||||
|     else | ||||
|         cp "$bfile" "$Pfile" | ||||
|         chmod +w "$Pfile" | ||||
|         [ -z "$NOUPSTREAM" ] && chmod +w "$Pfile" | ||||
|     fi | ||||
|     # mettre à jour le profil courant | ||||
|     setx cfile=get_cfile "$pfile" "$pffdir" | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user