From 5b312f7459480f5cfd3fa1683b4fb8471d6cce1e Mon Sep 17 00:00:00 2001 From: Artemia Date: Sun, 18 Oct 2026 16:48:17 +0200 Subject: [PATCH] Assistant : installe Quarto sous Arch Linux via l'AUR (yay ou paru) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Quarto n'est pas dans les dépôts officiels d'Arch. Si pacman ne connaît pas le paquet, l'assistant utilise yay (ou paru) pour installer quarto-cli-bin (binaire officiel, à jour), sans sudo puisque ces outils l'appellent eux-mêmes. Sans assistant AUR, il explique la marche à suivre. Co-Authored-By: Claude Opus 5.5 --- scripts/assistant.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/scripts/assistant.py b/scripts/assistant.py index bebe22d..36f55b6 100644 --- a/scripts/assistant.py +++ b/scripts/assistant.py @@ -126,6 +126,8 @@ def installer_quarto(): paquet = telecharger_quarto(f"linux-{arch}.deb") print(" Votre mot de passe peut être demandé (installation système).") subprocess.run(["sudo", "apt-get", "install", "-y", str(paquet)]) + elif SYSTEME == "Linux" and shutil.which("pacman"): + return installer_quarto_arch() else: return False except Exception as erreur: # réseau indisponible, fichier introuvable… @@ -134,6 +136,28 @@ def installer_quarto(): return True +def installer_quarto_arch(): + """Arch Linux et dérivées : dépôts officiels si le paquet y existe, sinon AUR via yay (ou paru).""" + for nom in ("quarto-cli", "quarto"): + if subprocess.run(["pacman", "-Si", nom], stdout=subprocess.DEVNULL, + stderr=subprocess.DEVNULL).returncode == 0: + print(" Votre mot de passe peut être demandé (installation système).") + subprocess.run(["sudo", "pacman", "-S", "--needed", nom]) + return True + paquet_aur = "quarto-cli-bin" # binaire officiel empaqueté, à jour (quarto-cli compile depuis les sources) + for assistant_aur in ("yay", "paru"): + if shutil.which(assistant_aur): + print(f" Quarto n'est disponible que dans l'AUR : installation de « {paquet_aur} » avec {assistant_aur}.") + print(" Validez les questions posées ; votre mot de passe sera demandé à la fin.") + # Jamais avec sudo : yay et paru s'exécutent en utilisateur normal et appellent sudo eux-mêmes. + subprocess.run([assistant_aur, "-S", "--needed", paquet_aur]) + return True + print(" Sous Arch, Quarto n'est disponible que dans l'AUR (paquet « quarto-cli-bin »),") + print(" et aucun assistant AUR (yay ou paru) n'a été trouvé sur cet ordinateur.") + print(" Installez yay (https://github.com/Jguer/yay) puis relancez, ou installez le paquet à la main.") + return False + + def verifier_quarto(): titre("1/3 Quarto (outil de mise en page)") quarto = trouver_quarto()