add comments

This commit is contained in:
bruno 2023-07-26 09:12:06 -04:00
parent 677523b151
commit 499857ffae
1 changed files with 102 additions and 83 deletions

View File

@ -1,101 +1,91 @@
#!/usr/bin/env sh
echo "=> DÉBUT de l'installation :"
# Fonctions d'affichage de messages d'erreur
error() {
printf "\x1b[31m$1\e[0m\n"
exit 1
}
# Fonctions d'affichage de messages d'information
info() {
printf "$1\n"
}
echo "=> Validation des DÉPENDENCES pour l'installation :"
echo "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --"
# Fonctions d'affichage de messages d'avertissement
warn() {
printf "⚠️ \x1b[33m$1\e[0m\n"
}
# Affichage d'une ligne de séparation
line() {
printf "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --"
}
# Fonction de validation de dépendance
validate_dependency() {
if ! command -v $1 >/dev/null; then
error "!! => $1 est requis pour installer scut. svp installer $1 et essayer a nouveau.\n"
fi
}
# Fonction de validation de tous les dépendances
validate_dependencies() {
validate_dependency wget
echo "===> wget ... OK"
info "===> wget ... OK"
validate_dependency unzip
echo "===> unzpip ... OK"
info "===> unzpip ... OK"
validate_dependency sha256sum
echo "===> sha256sum ... OK"
info "===> sha256sum ... OK"
}
# Fonction de téléchargement du logiciel
downloadSoftware() {
# # Vérifie si wget est installé
# if ! hash wget 2>/dev/null; then
# echo " !! => wget n'est pas installé. Veuillez l'installer."
# exit 1
# fi
# echo "===> wget ... OK"
# # Vérifie si zip est installé
# if ! hash zip 2>/dev/null; then
# echo "zip n'est pas installé. Veuillez l'installer."
# exit 1
# fi
# echo "===> zip ... OK"
# # Vérifie si unzip est installé
# if ! hash unzip 2>/dev/null; then
# echo "unzip n'est pas installé. Veuillez l'installer."
# exit 1
# fi
# echo "===> unzip ... OK"
# # Vérifier si sha256sum est installé
# if ! hash sha256sum 2>/dev/null; then
# echo "sha256sum n'est pas installé. Veuillez l'installer."
# exit 1
# fi
# echo "===> sha256sum ... OK"
# download scut-latest.zip
echo "=> TÉLÉCHARGEMENT du programme :"
echo "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --"
wget -q https://git.bcmaison.cf/Outils/scut-reminder/raw/branch/main/scut-latest.zip
# Vérifie le code de retour de wget
if [ $? -eq 0 ]; then
echo "===> Téléchargement de scut-latest.zip réussi!"
info "===> Téléchargement de scut-latest.zip réussi!"
else
echo "!! => Erreur lors du téléchargement."
exit 1
error "!! => Erreur lors du téléchargement."
fi
# Vérifie que le fichier a bien été téléchargé
if [ -f "scut-latest.zip" ]; then
echo "===> Fichier scut-latest.zip téléchargé avec succès."
info "===> Fichier scut-latest.zip téléchargé avec succès."
else
echo "!! => Échec du téléchargement du fichier scut-latest.zip."
exit 1
error "!! => Échec du téléchargement du fichier scut-latest.zip."
fi
# Télécharge le fichier de checksum
}
# Fonction de vérification du checksum du logiciel
checksumSoftware() {
wget -q https://git.bcmaison.cf/Outils/scut-reminder/raw/branch/main/scut-latest.zip.sha256
# Extrait le checksum du fichier
CHECKSUM=$(cat scut-latest.zip.sha256 | awk '{ print $1 }')
echo $CHECKSUM
# Vérifie le checksum du fichier téléchargé
checksum_actuel=$(sha256sum scut-latest.zip | awk '{ print $1 }')
if [ "$CHECKSUM" == "$checksum_actuel" ]; then
echo "===> Checksum validé - Fichier intègre."
info "===> Checksum validé - Fichier intègre."
else
echo "!! => Erreur de checksum - Fichier corrompu."
exit 1
error "!! => Erreur de checksum - Fichier corrompu."
fi
# unzip scut-<date>.zip in ~/.config/scut/
echo "=> INSTALLATION du programme :"
echo "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --"
}
# Fonction d'installation du logiciel
installSoftware() {
# Vérifier si le répertoire existe déjà
if [ ! -d "~/.config/scut/" ]; then
# Le répertoire n'existe pas, on le crée
mkdir -p ~/.config/scut
info "===> répertoire ~/.config/scut/ créé avec succès."
fi
# Désarchiver le zip dans ce dossier
@ -107,4 +97,33 @@ if [ $(ls -A ~/.config/scut/ | wc -l) -eq 0 ]; then
exit 1
fi
}
# début du script
# ==--==--==--==--==--==--==
line
info "=> DÉBUT de l'installation :"
info "=> Validation des DÉPENDENCES pour l'installation :"
line
validate_dependencies
# download scut-latest.zip
# ==--==--==--==--==--==--==
info "=> TÉLÉCHARGEMENT du programme :"
line
# Télécharge le fichier de checksum
# ==--==--==--==--==--==--==
checksumSoftware
# unzip scut-<date>.zip in ~/.config/scut/
# ==--==--==--==--==--==--==
echo "=> INSTALLATION du programme :"
line
installSoftware
# Fin du script
# ==--==--==--==--==--==--==
echo "=> FIN de l'installation ! :-)"
line