diff --git a/menu.ksh b/menu.ksh index 44a50f6..f8fe8df 100755 --- a/menu.ksh +++ b/menu.ksh @@ -1,14 +1,18 @@ #! /bin/bash #set -eo pipefail + + #variables +export ROOT_DIR=$(cd "$(dirname "$0")" && pwd) + function check_source { source=$1 - if [[ -f "./sources/${source}" ]]; then + if [[ -f "${ROOT_DIR}/sources/couleurs.ksh" ]]; then { - . ./sources/${source} + . "${ROOT_DIR}/sources/couleurs.ksh" } else { @@ -18,8 +22,6 @@ function check_source fi } - - check_source "couleurs.ksh" @@ -36,11 +38,11 @@ read reponse case ${reponse} in 1) - . ./modules/AutoInstall/autoinstall.ksh + . ${ROOT_DIR}/modules/AutoInstall/autoinstall.ksh ;; 2) - . ./modules/AutoMaj/MAJ.ksh + . ${ROOT_DIR}/modules/AutoMaj/MAJ.ksh ;; 0) diff --git a/modules/AutoInstall/autoinstall.ksh b/modules/AutoInstall/autoinstall.ksh index 1101a2b..a6291ef 100755 --- a/modules/AutoInstall/autoinstall.ksh +++ b/modules/AutoInstall/autoinstall.ksh @@ -5,35 +5,23 @@ #-------------------------------------------- #variables -emplacement_actuel=$(dirname "$(readlink -f "$0")") -fic_couleurs="${emplacement_actuel}/sources/couleurs.ksh" -fic_source="${emplacement_actuel}/modules/AutoInstall/sources/fonctions.ksh" -function verif_source -{ - fichier=$1 - - sources="${emplacement_actuel}/modules/AutoInstall" +if [[ -z "${ROOT_DIR}" ]]; then + echo "Erreur : Veuillez lancer ce script via le menu.ksh principal." + exit 1 +fi - echo "Emplacement = ${emplacement_actuel}" - echo "Sources = ${sources}" - echo "${fichier}" +dir_script=$(cd "$(dirname "$0")" && pwd) +# 2. On charge les couleurs (via la racine globale) +if [[ -f "${ROOT_DIR}/sources/couleurs.ksh" ]]; then + . "${ROOT_DIR}/sources/couleurs.ksh" +fi - if [[ -f ${fichier} ]]; then - { - . ${fichier} - } - else - { - echo "${ROUGE} Erreur : Impossible de charger les dependances ${fichier} ${RESET}" - exit 1 - } - fi -} - -verif_source ${fic_couleurs} -verif_source ${fic_source} +# 3. On charge ses propres fonctions +if [[ -f "${dir_script}/sources/fonctions.ksh" ]]; then + . "${dir_script}/sources/fonctions.ksh" +fi # Recuperation de la distribution diff --git a/modules/AutoMaj/MAJ.ksh b/modules/AutoMaj/MAJ.ksh index 60bd7d0..a663243 100644 --- a/modules/AutoMaj/MAJ.ksh +++ b/modules/AutoMaj/MAJ.ksh @@ -12,6 +12,11 @@ # ############################################################### +if [[ -z "${ROOT_DIR}" ]]; then + echo "Erreur : Veuillez lancer ce script via le menu.ksh principal." + exit 1 +fi + # ---------- Couleurs (facultatives) ---------- # Certaines consoles ne supportent pas tput, on prévoit un fallback vide. RED=$(tput setaf 1 2>/dev/null || printf '')