#!/bin/bash # Fonction pour afficher des messages en couleur function echo_color() { local color_code=$1 shift echo -e "\e[${color_code}m$@\e[0m" } # Nom du dépôt GitHub REPO="fastfetch-cli/fastfetch" # Détecter l'architecture de la machine ARCH=$(dpkg --print-architecture) echo_color "32" "Architecture détectée : $ARCH" # Récupération de la dernière version du dépôt echo_color "34" "Récupération de la dernière version du dépôt $REPO..." LATEST_RELEASE=$(curl --silent "https://api.github.com/repos/$REPO/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/') echo_color "32" "Dernière version trouvée : $LATEST_RELEASE" # Recherche du fichier correspondant à l'architecture echo_color "34" "Recherche du fichier correspondant à l'architecture $ARCH..." ASSET_URL=$(curl --silent "https://api.github.com/repos/$REPO/releases/latest" | grep "browser_download_url.*$ARCH.deb" | cut -d '"' -f 4) # Vérification si l'URL a été trouvée if [ -z "$ASSET_URL" ]; then echo_color "31" "Aucun fichier correspondant à l'architecture $ARCH trouvé." exit 1 fi # Extraction du nom du fichier à partir de l'URL FILENAME=$(basename "$ASSET_URL") echo_color "32" "Fichier trouvé : $FILENAME" # Téléchargement du paquet Debian echo_color "34" "Téléchargement du fichier $FILENAME..." curl -sL "$ASSET_URL" -o "$FILENAME" echo_color "32" "Téléchargement terminé : $FILENAME" # Vérification et installation de sudo si nécessaire if ! command -v sudo &> /dev/null; then echo_color "33" "La commande 'sudo' n'est pas installée. Installation de 'sudo'..." apt-get update -qq && apt-get install -y -qq sudo fi # Installation du paquet Debian echo_color "34" "Installation du paquet $FILENAME..." sudo dpkg -i "$FILENAME" &> /dev/null # Suppression automatique du fichier temporaire rm "$FILENAME" echo_color "32" "Fichier $FILENAME supprimé."