1- #! /bin/bash
2-
3- # Fonction pour afficher des messages en couleur
4- function echo_color() {
5- local color_code=$1
6- shift
7- echo -e " \e[${color_code} m$@ \e[0m"
8- }
9-
10- # Nom du dépôt GitHub
11- REPO=" fastfetch-cli/fastfetch"
12-
13- # Détecter l'architecture de la machine
14- ARCH=$( dpkg --print-architecture)
15- echo_color " 32" " Architecture détectée : $ARCH "
16-
17- # Récupération de la dernière version du dépôt
18- echo_color " 34" " Récupération de la dernière version du dépôt $REPO ..."
19- LATEST_RELEASE=$( curl --silent " https://api.github.com/repos/$REPO /releases/latest" | grep ' "tag_name":' | sed -E ' s/.*"([^"]+)".*/\1/' )
20- echo_color " 32" " Dernière version trouvée : $LATEST_RELEASE "
21-
22- # Recherche du fichier correspondant à l'architecture
23- echo_color " 34" " Recherche du fichier correspondant à l'architecture $ARCH ..."
24- ASSET_URL=$( curl --silent " https://api.github.com/repos/$REPO /releases/latest" | grep " browser_download_url.*$ARCH .deb" | cut -d ' "' -f 4)
25-
26- # Vérification si l'URL a été trouvée
27- if [ -z " $ASSET_URL " ]; then
28- echo_color " 31" " Aucun fichier correspondant à l'architecture $ARCH trouvé."
29- exit 1
30- fi
31-
32- # Extraction du nom du fichier à partir de l'URL
33- FILENAME=$( basename " $ASSET_URL " )
34- echo_color " 32" " Fichier trouvé : $FILENAME "
35-
36- # Téléchargement du paquet Debian
37- echo_color " 34" " Téléchargement du fichier $FILENAME ..."
38- curl -sL " $ASSET_URL " -o " $FILENAME "
39- echo_color " 32" " Téléchargement terminé : $FILENAME "
40-
41- # Vérification et installation de sudo si nécessaire
42- if ! command -v sudo & > /dev/null; then
43- echo_color " 33" " La commande 'sudo' n'est pas installée. Installation de 'sudo'..."
44- apt-get update -qq && apt-get install -y -qq sudo
45- fi
46-
47- # Installation du paquet Debian
48- echo_color " 34" " Installation du paquet $FILENAME ..."
49- sudo dpkg -i " $FILENAME " & > /dev/null
50-
51- # Suppression automatique du fichier temporaire
52- rm " $FILENAME "
1+ #! /bin/bash
2+
3+ # Fonction pour afficher des messages en couleur
4+ function echo_color() {
5+ local color_code=$1
6+ shift
7+ echo -e " \e[${color_code} m$@ \e[0m"
8+ }
9+
10+ # Nom du dépôt GitHub
11+ REPO=" fastfetch-cli/fastfetch"
12+
13+ # Détecter l'architecture de la machine
14+ ARCH=$( dpkg --print-architecture)
15+ echo_color " 32" " Architecture détectée : $ARCH "
16+
17+ # Récupération de la dernière version du dépôt
18+ echo_color " 34" " Récupération de la dernière version du dépôt $REPO ..."
19+ LATEST_RELEASE=$( curl --silent " https://api.github.com/repos/$REPO /releases/latest" | grep ' "tag_name":' | sed -E ' s/.*"([^"]+)".*/\1/' )
20+ echo_color " 32" " Dernière version trouvée : $LATEST_RELEASE "
21+
22+ # Recherche du fichier correspondant à l'architecture
23+ echo_color " 34" " Recherche du fichier correspondant à l'architecture $ARCH ..."
24+ ASSET_URL=$( curl --silent " https://api.github.com/repos/$REPO /releases/latest" | grep " browser_download_url.*$ARCH .deb" | cut -d ' "' -f 4)
25+
26+ # Vérification si l'URL a été trouvée
27+ if [ -z " $ASSET_URL " ]; then
28+ echo_color " 31" " Aucun fichier correspondant à l'architecture $ARCH trouvé."
29+ exit 1
30+ fi
31+
32+ # Extraction du nom du fichier à partir de l'URL
33+ FILENAME=$( basename " $ASSET_URL " )
34+ echo_color " 32" " Fichier trouvé : $FILENAME "
35+
36+ # Téléchargement du paquet Debian
37+ echo_color " 34" " Téléchargement du fichier $FILENAME ..."
38+ curl -sL " $ASSET_URL " -o " $FILENAME "
39+ echo_color " 32" " Téléchargement terminé : $FILENAME "
40+
41+ # Vérification et installation de sudo si nécessaire
42+ if ! command -v sudo & > /dev/null; then
43+ echo_color " 33" " La commande 'sudo' n'est pas installée. Installation de 'sudo'..."
44+ apt-get update -qq && apt-get install -y -qq sudo
45+ fi
46+
47+ # Installation du paquet Debian
48+ echo_color " 34" " Installation du paquet $FILENAME ..."
49+ sudo dpkg -i " $FILENAME " & > /dev/null
50+
51+ # Suppression automatique du fichier temporaire
52+ rm " $FILENAME "
5353echo_color " 32" " Fichier $FILENAME supprimé."
0 commit comments