Remettre le proxy APT en session live, que l'arrêt anticipé avait fait sauter

Depuis que la session live est écartée en tête de script, celui-ci s'arrête
avant configuration_apt, seul endroit où auto-apt-proxy était posé. Or c'est
depuis la session live que l'installateur télécharge paquets de langue et
mises à jour : sans le proxy, tout partait sur Internet au lieu de passer par
alpicache.

La pose du proxy devient une fonction, poser_apt_proxy, appelée en live avant
le relevé — seule exception au « rien n'est installé ici » — et reprise telle
quelle par configuration_apt sur le système installé. En live, un échec est
signalé sans arrêter le script : le relevé, qui donne l'heure de départ, passe
avant.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Cédrix 2026-09-26 10:48:01 +02:00
parent 4b56a7967d
commit 8c9d5ea755

View file

@ -34,6 +34,12 @@ fi
# rien laisser. Le script s'arrête donc après le relevé, et se relance après # rien laisser. Le script s'arrête donc après le relevé, et se relance après
# l'installation. # l'installation.
# #
# Une exception : le proxy APT. L'installateur télécharge lui aussi (paquets de
# langue, mises à jour), et c'est depuis la session live qu'il le fait. Sans
# auto-apt-proxy ici, tout part sur Internet au lieu de passer par alpicache.
# Avant le 26/09, c'est configuration_apt qui s'en chargeait, avant le test de
# session live ; l'arrêt anticipé l'avait fait disparaître.
#
# La détection est celle du relevé, éprouvée le 24/09/2026 : la racine montée # La détection est celle du relevé, éprouvée le 24/09/2026 : la racine montée
# en overlay ou squashfs, ce qu'aucun système installé ne fait, et « boot=casper » # en overlay ou squashfs, ce qu'aucun système installé ne fait, et « boot=casper »
# sur la ligne de commande du noyau. L'existence de /cdrom n'en fait pas partie : # sur la ligne de commande du noyau. L'existence de /cdrom n'en fait pas partie :
@ -49,9 +55,23 @@ en_session_live() {
&& findmnt -n -o FSTYPE /cdrom 2>/dev/null | grep -qE '^(iso9660|squashfs)$'; } && findmnt -n -o FSTYPE /cdrom 2>/dev/null | grep -qE '^(iso9660|squashfs)$'; }
} }
# Partagée avec configuration_apt. Appelée en root, ou via « sudo » en live.
poser_apt_proxy() {
echo -e "==> Configuration de apt-proxy\n"
apt-get update -qq || return 1
DEBIAN_FRONTEND=noninteractive apt-get install -y auto-apt-proxy || return 1
echo 'Acquire::http::ProxyAutoDetect "auto-apt-proxy";' > /etc/apt/apt.conf.d/01proxy
}
if en_session_live; then if en_session_live; then
echo "" echo ""
echo "==> Session live détectée : rien ne sera installé." echo "==> Session live détectée : seul le proxy APT sera installé."
echo ""
if [ "$(id -u)" = "0" ]; then
poser_apt_proxy
else
sudo bash -c "$(declare -f poser_apt_proxy); poser_apt_proxy"
fi || echo " Échec de l'installation d'auto-apt-proxy : l'installateur ira sur Internet."
echo "" echo ""
releve="$(dirname "$0")/alpi-fiche.sh" releve="$(dirname "$0")/alpi-fiche.sh"
if [ -x "$releve" ]; then if [ -x "$releve" ]; then
@ -399,10 +419,7 @@ configuration_apt() {
# Met à jour les langues pour toutes les applications Flatpak installées # Met à jour les langues pour toutes les applications Flatpak installées
flatpak update -y flatpak update -y
# Configuration de apt-proxy poser_apt_proxy || abort "Échec de l'installation d'auto-apt-proxy"
echo -e "==> Configuration de apt-proxy\n"
apt install -y auto-apt-proxy || abort "Échec de l'installation d'auto-apt-proxy"
echo 'Acquire::http::ProxyAutoDetect "auto-apt-proxy";' > /etc/apt/apt.conf.d/01proxy
} }