améliorations

This commit is contained in:
sky
2025-09-11 15:27:30 +02:00
parent 6fa530e297
commit ee46094d6d
5 changed files with 120 additions and 71 deletions

View File

@@ -34,6 +34,9 @@ tasksel tasksel/first multiselect minimal
d-i pkgsel/include string \
gnome-core \
gnome-tweaks \
gnome-shell-extension-manager \
gnome-shell-extension-dashtodock \
gnome-shell-extension-appindicator \
vim \
fish \
git \
@@ -56,28 +59,31 @@ d-i pkgsel/include string \
lld \
llvm
# gnome-core: Environnement de bureau GNOME
# gnome-tweaks: Outil de personnalisation GNOME
# vim: Éditeur de texte
# fish: Shell moderne
# git: Gestionnaire de versions
# wget: Téléchargeur HTTP/FTP
# curl: Client HTTP/FTP
# gpg: Chiffrement/signatures
# btop: Moniteur système moderne
# fastfetch: Info système colorée
# flatpak: Gestionnaire d'apps universelles
# pavucontrol: Contrôleur audio PulseAudio
# easyeffects: Effets audio avancés
# gnome-software-plugin-flatpak: Plugin Flatpak pour GNOME Software
# ffmpeg: Codecs audio/vidéo
# libavcodec-extra: Codecs supplémentaires
# libavformat-extra: Formats multimédias supplémentaires
# spice-vdagent: Agent SPICE pour machine virtuelle
# dkms: Système de modules kernel dynamiques
# libdw-dev: Bibliothèque de débogage DWARF
# clang: Compilateur C/C++/Objective-C
# lld: Éditeur de liens LLVM
# gnome-core: Environnement de bureau GNOME minimal
# gnome-tweaks: Outil de personnalisation GNOME avancé
# gnome-shell-extension-manager: Extensions pour GNOME Shell
# gnome-shell-extension-dashtodock: Dock personnalisable pour GNOME
# gnome-shell-extension-appindicator: Support des indicateurs d'applications
# vim: Éditeur de texte en ligne de commande
# fish: Shell interactif moderne et convivial
# git: Système de contrôle de version distribué
# wget: Utilitaire de téléchargement HTTP/HTTPS/FTP
# curl: Outil de transfert de données avec URLs
# gpg: Suite de chiffrement et signature numérique
# btop: Moniteur système interactif coloré
# fastfetch: Affichage rapide d'informations système
# flatpak: Gestionnaire d'applications sandboxées
# pavucontrol: Interface graphique pour PulseAudio
# easyeffects: Suite d'effets audio pour PipeWire
# gnome-software-plugin-flatpak: Intégration Flatpak dans GNOME Software
# ffmpeg: Framework multimédia complet
# libavcodec-extra: Codecs audio/vidéo supplémentaires
# libavformat-extra: Support de formats multimédias étendus
# spice-vdagent: Agent pour optimisation VM SPICE
# dkms: Gestion dynamique des modules noyau
# libdw-dev: Bibliothèques de développement DWARF
# clang: Compilateur C/C++/Objective-C moderne
# lld: Éditeur de liens rapide LLVM
# llvm: Infrastructure de compilation modulaire
# Installation GRUB avec support multi-OS

View File

@@ -1,8 +1,8 @@
=== Debian Gaming Deployment Tool Log - Démarré le mer 10 sep 2025 21:21:44 CEST ===
=== Debian Gaming Deployment Tool Log - Démarré le jeu 11 sep 2025 14:42:37 CEST ===
Fichier de log: ./gaming_installer.log
Utilisateur: sky
Répertoire de travail: /home/sky/Documents/gitea/custom-debian-iso/files_to_inject/preseeds
[2025-09-10 21:21:44] INFO: Script démarré avec succès
[2025-09-10 21:21:44] INFO: Vérification du système de logging
[2025-09-10 21:21:44] INFO: Fichier de log créé dans: /home/sky/Documents/gitea/custom-debian-iso/files_to_inject/preseeds/gaming_installer.log
[2025-09-11 14:42:37] INFO: Script démarré avec succès
[2025-09-11 14:42:37] INFO: Vérification du système de logging
[2025-09-11 14:42:37] INFO: Fichier de log créé dans: /home/sky/Documents/gitea/custom-debian-iso/files_to_inject/preseeds/gaming_installer.log

View File

@@ -1654,7 +1654,7 @@ uninstall_proton_plus() {
(
echo "50" ; echo "# Désinstallation de ProtonUp-Qt..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.vysp3r.ProtonPlus >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.vysp3r.ProtonPlus >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de ProtonUp-Qt"
echo "# Erreur lors de la désinstallation de ProtonUp-Qt"
@@ -1696,7 +1696,7 @@ uninstall_proton_plus_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.vysp3r.ProtonPlus >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.vysp3r.ProtonPlus >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de ProtonUp-Qt"
return 1
@@ -1742,7 +1742,7 @@ uninstall_bottles() {
(
echo "50" ; echo "# Désinstallation de Bottles..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.usebottles.bottles >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.usebottles.bottles >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Bottles"
echo "# Erreur lors de la désinstallation de Bottles"
@@ -1784,7 +1784,7 @@ uninstall_bottles_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.usebottles.bottles >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.usebottles.bottles >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Bottles"
return 1
@@ -1940,7 +1940,7 @@ uninstall_retroarch() {
(
echo "50" ; echo "# Désinstallation de RetroArch..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y org.libretro.RetroArch >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y org.libretro.RetroArch >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de RetroArch"
echo "# Erreur lors de la désinstallation de RetroArch"
@@ -1982,7 +1982,7 @@ uninstall_retroarch_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y org.libretro.RetroArch >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y org.libretro.RetroArch >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de RetroArch"
return 1
@@ -2121,7 +2121,7 @@ uninstall_gearlever() {
(
echo "50" ; echo "# Désinstallation de Gear Lever..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y it.mijorus.gearlever >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y it.mijorus.gearlever >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Gear Lever"
echo "# Erreur lors de la désinstallation de Gear Lever"
@@ -2163,7 +2163,7 @@ uninstall_gearlever_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y it.mijorus.gearlever >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y it.mijorus.gearlever >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Gear Lever"
return 1
@@ -2209,7 +2209,7 @@ uninstall_discord() {
(
echo "50" ; echo "# Désinstallation de Discord..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.discordapp.Discord >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.discordapp.Discord >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Discord"
echo "# Erreur lors de la désinstallation de Discord"
@@ -2251,7 +2251,7 @@ uninstall_discord_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.discordapp.Discord >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.discordapp.Discord >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Discord"
return 1
@@ -2297,7 +2297,7 @@ uninstall_vesktop() {
(
echo "50" ; echo "# Désinstallation de Vesktop via Flatpak..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y dev.vencord.Vesktop >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y dev.vencord.Vesktop >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Vesktop via Flatpak"
echo "# Erreur lors de la désinstallation de Vesktop"
@@ -2339,7 +2339,7 @@ uninstall_vesktop_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y dev.vencord.Vesktop >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y dev.vencord.Vesktop >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Vesktop"
return 1
@@ -2385,7 +2385,7 @@ uninstall_teamspeak() {
(
echo "50" ; echo "# Désinstallation de TeamSpeak via Flatpak..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.teamspeak.TeamSpeak3 >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.teamspeak.TeamSpeak3 >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de TeamSpeak via Flatpak"
echo "# Erreur lors de la désinstallation de TeamSpeak"
@@ -2427,7 +2427,7 @@ uninstall_teamspeak_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.teamspeak.TeamSpeak3 >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.teamspeak.TeamSpeak3 >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de TeamSpeak"
return 1
@@ -2566,7 +2566,7 @@ uninstall_flatseal() {
(
echo "50" ; echo "# Désinstallation de Flatseal via Flatpak..."
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.github.tchx84.Flatseal >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.github.tchx84.Flatseal >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Flatseal via Flatpak"
echo "# Erreur lors de la désinstallation de Flatseal"
@@ -2608,7 +2608,7 @@ uninstall_flatseal_silent() {
fi
# Désinstaller sans confirmation ni interface graphique
echo "$password" | timeout $TIMEOUT_APT sudo -S flatpak uninstall -y com.github.tchx84.Flatseal >> "$LOG_FILE" 2>&1
timeout $TIMEOUT_APT flatpak uninstall -y com.github.tchx84.Flatseal >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Flatseal"
return 1
@@ -2694,27 +2694,48 @@ uninstall_lutris_silent() {
local password="$1"
log_info "Début de la désinstallation de Lutris (mode silencieux)"
# Vérifier si Lutris est installé
if ! dpkg -l | grep -q "^ii.*lutris" && ! command -v lutris &> /dev/null; then
# Vérifier si Lutris est installé via différentes méthodes
local lutris_apt=false
local lutris_flatpak=false
if dpkg -l | grep -q "^ii.*lutris"; then
lutris_apt=true
fi
if flatpak list 2>/dev/null | grep -q "net.lutris.Lutris"; then
lutris_flatpak=true
fi
if [ "$lutris_apt" = false ] && [ "$lutris_flatpak" = false ]; then
log_info "Lutris non installé"
return 0
fi
# Désinstaller sans confirmation ni interface graphique
# Désinstaller via apt si installé ainsi
if [ "$lutris_apt" = true ]; then
log_info "Désinstallation de Lutris via apt..."
echo "$password" | timeout $TIMEOUT_APT sudo -S apt-get purge -y lutris >> "$LOG_FILE" 2>&1
if ! check_apt_success $? "lutris" "désinstallation"; then
log_error "Échec de la désinstallation de Lutris"
log_error "Échec de la désinstallation de Lutris (apt)"
return 1
fi
# Nettoyage des paquets orphelins
echo "$password" | timeout $TIMEOUT_APT sudo -S apt-get autoremove -y >> "$LOG_FILE" 2>&1
if ! check_apt_success $? "paquets orphelins" "nettoyage"; then
log_info "Avertissement: Erreur lors du nettoyage des paquets orphelins"
fi
# Désinstaller via flatpak si installé ainsi
if [ "$lutris_flatpak" = true ]; then
log_info "Désinstallation de Lutris via flatpak..."
timeout $TIMEOUT_APT flatpak uninstall -y net.lutris.Lutris >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Lutris (flatpak)"
return 1
fi
fi
# Vérifier si la désinstallation a réussi
if ! dpkg -l | grep -q "^ii.*lutris" && ! command -v lutris &> /dev/null; then
if ! dpkg -l | grep -q "^ii.*lutris" && ! flatpak list 2>/dev/null | grep -q "net.lutris.Lutris"; then
log_info "Lutris désinstallé avec succès"
return 0
else
@@ -2793,27 +2814,48 @@ uninstall_heroic_silent() {
local password="$1"
log_info "Début de la désinstallation de Heroic Game Launcher (mode silencieux)"
# Vérifier si Heroic est installé
if ! dpkg -l | grep -q "^ii.*heroic" && ! command -v heroic &> /dev/null; then
# Vérifier si Heroic est installé via différentes méthodes
local heroic_apt=false
local heroic_flatpak=false
if dpkg -l | grep -q "^ii.*heroic"; then
heroic_apt=true
fi
if flatpak list 2>/dev/null | grep -q "com.heroicgameslauncher.hgl"; then
heroic_flatpak=true
fi
if [ "$heroic_apt" = false ] && [ "$heroic_flatpak" = false ]; then
log_info "Heroic Game Launcher non installé"
return 0
fi
# Désinstaller sans confirmation ni interface graphique
# Désinstaller via apt si installé ainsi
if [ "$heroic_apt" = true ]; then
log_info "Désinstallation de Heroic via apt..."
echo "$password" | timeout $TIMEOUT_APT sudo -S apt-get purge -y heroic >> "$LOG_FILE" 2>&1
if ! check_apt_success $? "heroic" "désinstallation"; then
log_error "Échec de la désinstallation de Heroic Game Launcher"
log_error "Échec de la désinstallation de Heroic Game Launcher (apt)"
return 1
fi
# Nettoyage des paquets orphelins
echo "$password" | timeout $TIMEOUT_APT sudo -S apt-get autoremove -y >> "$LOG_FILE" 2>&1
if ! check_apt_success $? "paquets orphelins" "nettoyage"; then
log_info "Avertissement: Erreur lors du nettoyage des paquets orphelins"
fi
# Désinstaller via flatpak si installé ainsi
if [ "$heroic_flatpak" = true ]; then
log_info "Désinstallation de Heroic via flatpak..."
timeout $TIMEOUT_APT flatpak uninstall -y com.heroicgameslauncher.hgl >> "$LOG_FILE" 2>&1
if [ $? -ne 0 ]; then
log_error "Échec de la désinstallation de Heroic Game Launcher (flatpak)"
return 1
fi
fi
# Vérifier si la désinstallation a réussi
if ! dpkg -l | grep -q "^ii.*heroic" && ! command -v heroic &> /dev/null; then
if ! dpkg -l | grep -q "^ii.*heroic" && ! flatpak list 2>/dev/null | grep -q "com.heroicgameslauncher.hgl"; then
log_info "Heroic Game Launcher désinstallé avec succès"
return 0
else

View File

@@ -60,12 +60,13 @@ def download_file(
output_file.write(file_response.content)
else:
if (show_progress):
total_length = int(total_length)
progress_bar = tqdm(
total=total_length,
desc="Downloading",
bar_format='{desc}: {elapsed} [{bar:30}] {rate_fmt}',
unit="B",
unit_scale=True,
unit_divisor=1024
unit_divisor=1024,
ncols=80
)
for data in file_response.iter_content(chunk_size=4096):

View File

@@ -23,7 +23,7 @@ def main():
parser = get_argument_parser()
args = parser.parse_args()
# parse and verify output file if sepcified
# parse and verify output file if specified
if args.path_to_output_file:
path_to_output_file = Path(args.path_to_output_file)
if "~" in str(path_to_output_file):
@@ -36,7 +36,7 @@ def main():
else:
path_to_output_file = None
# parse and verify output dir if sepcified
# parse and verify output dir if specified
if args.path_to_output_dir:
path_to_output_dir = Path(args.path_to_output_dir)
if "~" in str(path_to_output_dir):