ajout support sudo
This commit is contained in:
parent
b1e434ac9a
commit
877b612c90
64
install.sh
64
install.sh
@ -1,4 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
# Couleurs de texte
|
# Couleurs de texte
|
||||||
NOIR='\e[30m'
|
NOIR='\e[30m'
|
||||||
ROUGE='\e[31m'
|
ROUGE='\e[31m'
|
||||||
@ -26,11 +27,17 @@ CLIGNOTANT='\e[5m'
|
|||||||
INVERSE='\e[7m'
|
INVERSE='\e[7m'
|
||||||
NORMAL='\e[0m'
|
NORMAL='\e[0m'
|
||||||
|
|
||||||
#Vérification des prérequis
|
|
||||||
echo -e "$BLEU""Vérification si les prérequis sont disponibles""$NORMAL"
|
# Initialisation
|
||||||
LISTE_APPLIS="curl basename php"
|
sudook=false
|
||||||
BIN_DIR="$HOME/bin"
|
|
||||||
AUTOPOST_DIR="$HOME/autopost"
|
if sudo -n true 2>/dev/null; then
|
||||||
|
# On peut faire sudo sans mot de passe (ticket sudo en cours ou NOPASSWD)
|
||||||
|
sudook=true
|
||||||
|
else
|
||||||
|
# Ni root ni sudo dispo
|
||||||
|
sudook=false
|
||||||
|
fi
|
||||||
|
|
||||||
# Vérifier si le dossier bin existe, sinon le créer
|
# Vérifier si le dossier bin existe, sinon le créer
|
||||||
echo -e "$BLEU""Vérification de la présence du dossier bin""$NORMAL"
|
echo -e "$BLEU""Vérification de la présence du dossier bin""$NORMAL"
|
||||||
@ -38,17 +45,50 @@ if [ ! -d "$BIN_DIR" ]; then
|
|||||||
mkdir -p "$BIN_DIR"
|
mkdir -p "$BIN_DIR"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#Vérification des prérequis
|
||||||
|
echo -e "$BLEU""Vérification si les prérequis sont disponibles""$NORMAL"
|
||||||
|
BIN_DIR="$HOME/bin"
|
||||||
|
AUTOPOST_DIR="$HOME/autopost"
|
||||||
|
|
||||||
LISTE_APPLIS=()
|
LISTE_APPLIS=()
|
||||||
|
LISTE_APPLIS+=("curl basename php")
|
||||||
|
|
||||||
# Vérifier et installer mediainfo si manquant
|
# Vérifier et installer mediainfo si manquant
|
||||||
if command -v mediainfo > /dev/null 2>&1; then
|
if command -v mediainfo > /dev/null 2>&1; then
|
||||||
LISTE_APPLIS+=("mediainfo")
|
LISTE_APPLIS+=("mediainfo")
|
||||||
else
|
else
|
||||||
|
if $sudook; then
|
||||||
|
# URLs dans l’ordre souhaité
|
||||||
|
urls=(
|
||||||
|
"https://mediaarea.net/download/binary/libzen0/0.4.41/libzen0v5_0.4.41-1_amd64.Debian_12.deb"
|
||||||
|
"https://mediaarea.net/download/binary/libmediainfo0/25.04/libmediainfo0v5_25.04-1_amd64.Debian_12.deb"
|
||||||
|
"https://mediaarea.net/download/binary/mediainfo/25.04/mediainfo_25.04-1_amd64.Debian_12.deb"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Télécharger
|
||||||
|
for url in "${urls[@]}"; do
|
||||||
|
wget -q "$url"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Extraire les noms de fichiers, dans le même ordre
|
||||||
|
files=("${urls[@]##*/}")
|
||||||
|
|
||||||
|
# Installer dans l’ordre défini
|
||||||
|
for pkg in "${files[@]}"; do
|
||||||
|
sudo dpkg -i "$pkg"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Nettoyer
|
||||||
|
rm -f "${files[@]}"
|
||||||
|
LISTE_APPLIS+=("mediainfo")
|
||||||
|
echo -e "${VERT}mediainfo installé${NORMAL}"
|
||||||
|
else
|
||||||
echo -e "${ROUGE}mediainfo est manquant. Installation en cours...${NORMAL}"
|
echo -e "${ROUGE}mediainfo est manquant. Installation en cours...${NORMAL}"
|
||||||
curl -L -o "$BIN_DIR/mediainfo" "https://mediaarea.net/download/binary/mediainfo/20.09/mediainfo-20.09.glibc2.3-x86_64.AppImage"
|
curl -L -o "$BIN_DIR/mediainfo" "https://mediaarea.net/download/binary/mediainfo/20.09/mediainfo-20.09.glibc2.3-x86_64.AppImage"
|
||||||
chmod 777 "$BIN_DIR/mediainfo"
|
chmod 777 "$BIN_DIR/mediainfo"
|
||||||
LISTE_APPLIS+=("$BIN_DIR/mediainfo")
|
LISTE_APPLIS+=("$BIN_DIR/mediainfo")
|
||||||
echo -e "${VERT}mediainfo installé dans $BIN_DIR${NORMAL}"
|
echo -e "${VERT}mediainfo installé dans $BIN_DIR${NORMAL}"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Vérifier et installer sqlite3 si manquant
|
# Vérifier et installer sqlite3 si manquant
|
||||||
@ -56,11 +96,13 @@ if command -v sqlite3 > /dev/null 2>&1; then
|
|||||||
LISTE_APPLIS+=("sqlite3")
|
LISTE_APPLIS+=("sqlite3")
|
||||||
else
|
else
|
||||||
echo -e "${ROUGE}sqlite3 est manquant. Installation en cours...${NORMAL}"
|
echo -e "${ROUGE}sqlite3 est manquant. Installation en cours...${NORMAL}"
|
||||||
curl -L -o sqlite-tools.zip "https://www.sqlite.org/2025/sqlite-tools-linux-x64-3480000.zip"
|
if $sudook; then
|
||||||
|
sudo apt install sqlite3
|
||||||
|
LISTE_APPLIS+=("sqlite3")
|
||||||
|
echo -e "${VERT}sqlite3 installé${NORMAL}"
|
||||||
|
else
|
||||||
|
curl -L -o sqlite-tools.zip "https://www.sqlite.org/2024/sqlite-tools-linux-x64-3470000.zip"
|
||||||
unzip sqlite-tools.zip -d "$BIN_DIR"
|
unzip sqlite-tools.zip -d "$BIN_DIR"
|
||||||
|
|
||||||
# Recherche et déplacement du binaire sqlite3 uniquement
|
|
||||||
find "$BIN_DIR" -type f -name "sqlite3" -exec mv {} "$BIN_DIR/sqlite3" \;
|
|
||||||
chmod 777 "$BIN_DIR/sqlite3"
|
chmod 777 "$BIN_DIR/sqlite3"
|
||||||
|
|
||||||
# Nettoyage des fichiers inutiles
|
# Nettoyage des fichiers inutiles
|
||||||
@ -68,6 +110,8 @@ else
|
|||||||
|
|
||||||
LISTE_APPLIS+=("$BIN_DIR/sqlite3")
|
LISTE_APPLIS+=("$BIN_DIR/sqlite3")
|
||||||
echo -e "${VERT}sqlite3 installé dans $BIN_DIR${NORMAL}"
|
echo -e "${VERT}sqlite3 installé dans $BIN_DIR${NORMAL}"
|
||||||
|
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Vérifier et installer jq si manquant
|
# Vérifier et installer jq si manquant
|
||||||
@ -308,3 +352,5 @@ fi
|
|||||||
|
|
||||||
echo "Suppression du script après exécution..."
|
echo "Suppression du script après exécution..."
|
||||||
rm -- "$0"
|
rm -- "$0"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user