Ajoute option distro et arch

This commit is contained in:
Enzo Tuihagi 2025-12-04 02:23:13 +00:00
parent c596ba1a6f
commit 70da8f017b

View File

@ -29,27 +29,27 @@ while [[ "$#" -gt 0 ]]; do
shift shift
;; ;;
# -d|--distro) -d|--distro)
# if [ -n "$2" ]; then if [ -n "$2" ]; then
# OUTPUT_DIR="$2" DISTRO="$2"
# echo "Dossier de sortie : $OUTPUT_DIR" echo "Distrib des packages : $DISTRO"
# shift 2 # Déplace de 2 positions ($1 = -o, $2 = valeur) shift 2 # Déplace de 2 positions ($1 = -o, $2 = valeur)
# else else
# echo "Erreur: --distro requiert un argument." >&2 echo "Erreur: --distro requiert un argument." >&2
# exit 1 exit 1
# fi fi
# ;; ;;
# -a|--arch) -a|--arch)
# if [ -n "$2" ]; then if [ -n "$2" ]; then
# OUTPUT_DIR="$2" ARCH="$2"
# echo "Dossier de sortie : $OUTPUT_DIR" echo "Architecture de la distrib : $ARCH"
# shift 2 # Déplace de 2 positions ($1 = -o, $2 = valeur) shift 2 # Déplace de 2 positions ($1 = -o, $2 = valeur)
# else else
# echo "Erreur: --arch requiert un argument." >&2 echo "Erreur: --arch requiert un argument." >&2
# exit 1 exit 1
# fi fi
# ;; ;;
-p|--packages) -p|--packages)
if [ -n "$2" ]; then if [ -n "$2" ]; then
@ -82,9 +82,13 @@ while [[ "$#" -gt 0 ]]; do
esac esac
done done
# Distrib et Architecture par defaut
if [ ! -n "$DISTRO" ];then DISTRO=bookworm;fi
if [ ! -n "$ARCH" ];then ARCH=amd64;fi
# Variables utilisateur # Variables utilisateur
MAX_PARALLEL=5 # On prévoit un nombre de thread curl/wget pour le téléchargement MAX_PARALLEL=5 # On prévoit un nombre de thread curl/wget pour le téléchargement
PACKAGES_FILE=Packages.gz # Autant variabiliser le nom de la liste des paquets PACKAGES_FILE="Packages_${DISTRO}_${ARCH}.gz" # Autant variabiliser le nom de la liste des paquets
PACKAGES_FILE_MAX_AGE=86400 # Age maximum autorisé pour la copie locale du fichier Packages PACKAGES_FILE_MAX_AGE=86400 # Age maximum autorisé pour la copie locale du fichier Packages
# Liste des paquets non souhaités ou déjà installés # Liste des paquets non souhaités ou déjà installés
@ -93,7 +97,7 @@ EXCLUDED_PACKAGES=" debconf-2.0 adduser apparmor apt apt-utils base-files base-p
# Nécessaire pour télécharger la liste des paquets et les paquets eux mêmes (pourront être écrasées si on voulait porter # Nécessaire pour télécharger la liste des paquets et les paquets eux mêmes (pourront être écrasées si on voulait porter
# le script vers une autre distribution) # le script vers une autre distribution)
BASE_URL="https://deb.debian.org/debian/" BASE_URL="https://deb.debian.org/debian/"
PACKAGES_FILE_URL="dists/bookworm/main/binary-amd64/Packages.gz" PACKAGES_FILE_URL="dists/${DISTRO}/main/binary-${ARCH}/Packages.gz"
# Initialiser les queues # Initialiser les queues
declare -A packages_to_download declare -A packages_to_download
@ -169,7 +173,7 @@ get_packagelist_file() { # Récupérer le fichier Packages.gz si la version loca
# Télécharger le fichier # Télécharger le fichier
if [ $download_needed -eq 1 ]; then if [ $download_needed -eq 1 ]; then
echo "Téléchargement de $PACKAGES_FILE" echo "Téléchargement de $PACKAGES_FILE"
$_WGET $_WGET_PARAM "$BASE_URL$PACKAGES_FILE_URL" $_WGET $_WGET_PARAM "$BASE_URL$PACKAGES_FILE_URL" -O $PACKAGES_FILE
else else
if [[ $VERBOSE == 1 ]]; then if [[ $VERBOSE == 1 ]]; then
echo "$PACKAGES_FILE est suffisamment récent" echo "$PACKAGES_FILE est suffisamment récent"
@ -270,4 +274,4 @@ main() {
download_package download_package
} }
main main