From f8742efed4d86425af8635d38a23ec4171637e4f Mon Sep 17 00:00:00 2001 From: Lucas Date: Fri, 10 Oct 2025 09:20:16 +0200 Subject: [PATCH] ajout de la verfication de la presences des commandes --- .launcher.sh.un~ | Bin 8117 -> 53986 bytes launcher.sh | 41 ++++++++++++++++++++++++++--------------- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/.launcher.sh.un~ b/.launcher.sh.un~ index 57c2cf52c39ef69a5da678c55715ff2115aa9e41..b23153f6189d81717ccbc604394922d78ee7e62d 100755 GIT binary patch literal 53986 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 delta 117 zcmaE~lzFRtVpwMG{Lnm?{HF{|RpBRWXB}nXsI&O_?&@Ri{kz$}#2Rnp4i>rTv?%In waRmbd!!IC)0Tv*G5r_q$0w5ZO88V*7$+3WBnKmYN$}%!+el2@~k?Hv=0MWT0od5s; diff --git a/launcher.sh b/launcher.sh index a51be07..01772ca 100755 --- a/launcher.sh +++ b/launcher.sh @@ -6,7 +6,7 @@ # Auteur : Lucas Morel # Version : v1.1 (https://github.com/PixPix20/Minecraft-Installer) # -# 1) Objet : Ce script vise à automatiser le lancement de PrismLauncher. +# 1) Objet : Ce script vise à automatiser le lancement et l'installation de PrismLauncher. # # 2) Garantie : Fourni "tel quel", sans garantie expresse ou implicite. # @@ -24,15 +24,11 @@ set -euo pipefail VERSION="1.1" -#On verifie qu'il y a assez de place pour installer minecraft en plus de garder un peu de place pour le reste -#STOCKAGE -max_storage=2147483648 #2Go, le stockage max de l'afs, je deconseille fortement d'augmenter cette valeur ! -minecraft_storage=943718400 #900Mo, j'utilise cette valeur si vous voulez jouer avec un modpack qui est lourd -margin_storage=419430400 #400Mo, marge de securité pour que vous puissiez utiliser l'afs aprés l'installation du jeu, je deconseille de modifier cette valeur env="prod" #AFS if [ "$env" = "dev" ]; then afs="$HOME/test" + printf "ATTENTION: Vous etes en mode 'dev'." else afs="$HOME/afs" i3="$afs/.confs/config/i3/config" @@ -43,6 +39,12 @@ i3_config=$i3/config mkdir -p $afs $i3 +max_storage=2147483648 #2Go, le stockage max de l'afs, je deconseille fortement d'augmenter cette valeur ! + +max_storage=2147483648 +minecraft_storage=943718400 +margin_storage=419430400 + #LAUNCHER minecraft_path="$afs/minecraft" #dossier qui contient minecraft la conf du launcher etc @@ -77,13 +79,26 @@ Options: EOF } +check_commands(){ + #Check si les commandes utilisées sont installées + for cmd in wget curl sed grep nix-shell; do + if ! command --version "$cmd" &> /dev/null; then + printf "${cmd} n'est pas installée" + fi + done +} check_storage(){ #verification si l'AFS peut installer minecraft en plus de garder un marge pour les autre fichiers local used_storage total_storage used_storage=$(du -sb "$afs"|awk '{print $1}') - total_storage=$((used_storage + minecraft_storage + margin_storage)) #On additionne le stockage déja utilisé, la taille (~) de MC puis on ajoute une marge de secu. - + total_storage=$((used_storage + minecraft_storage + margin_storage)) #On additionne le stockage déja utilisé, la taille (~) de MC puis on ajoute une marge de secu. + if ((max_storage < $total_storage)); then + printf "Erreur, pas assez de place pour l'installation ! ${total_storage}Mo requis." + return 1 + else + return 0 + fi } check_path(){ @@ -110,19 +125,15 @@ add_to_dmenu() { sed -i "s|bindsym \$mod+d exec --no-startup-id dmenu_run|bindsym \$mod+d exec --no-startup-id PATH=$bin_path:\$PATH dmenu_run|" "$i3_config" echo "export PATH=$bin_path:\$PATH" >> "$HOME/.bashrc" echo "bindsym $mod+m exec --no-startup-id minecraft-launcher -l" >> "$i3_config" - source "$HOME/.bashrc" cp "$0" "$bin_path/minecraft-launcher" - - chmod +x "$bin_path/minecraft-launcher" - #echo "Ajouté à dmenu !" + chmod +x "$bin_path/minecraft-launcher" } remove_all() { - #echo "Suppression de Minecraft et du launcher..." + #Supprime PrismLauncher et les dossiers de minecraft rm -rf "$minecraft_path" sed -i "s|PATH=$bin_path:\$PATH||g" "$HOME/.bashrc" - #echo "Suppression terminée." } update_script() { @@ -147,6 +158,7 @@ get_remote_version() { } check_script_update() { + #Met à jour le script vers la nouvelle version local_version="$VERSION" remote_version=$(get_remote_version) @@ -184,7 +196,6 @@ check_account(){ check_launcher(){ #telechargement du launcher si inexistant if [ ! -f "$launcher_appimage" ]; then - #echo "Téléchargement de $name..." mkdir -p "$(dirname "$launcher_appimage")" #curl -L -o "$launcher_appimage" "$launcher_url" #si wget ne marche pas, décommentez cette ligne et commentez l'autre wget -q -O "$launcher_appimage" "$launcher_url"