Compare commits

..

No commits in common. "main" and "stable" have entirely different histories.
main ... stable

View file

@ -21,78 +21,6 @@ if [ "$(id -u)" = "0" ] && [ -x "$(dirname "$0")/alpi-fiche.sh" ]; then
"$(dirname "$0")/alpi-fiche.sh" || true "$(dirname "$0")/alpi-fiche.sh" || true
fi fi
##################################################
# Une session live : relever, et ne rien installer
#
# On lance ce script dès la session live, avant même d'installer : c'est ce
# premier relevé qui donne au serveur l'heure de départ. La durée réelle d'une
# installation est l'écart entre les deux relevés d'une même machine, horodatés
# par le serveur — sans le premier, on ne mesure rien.
#
# Rien n'est installé ici. Le système live vit en mémoire et disparaîtra au
# redémarrage : y poser des paquets coûterait du temps et de la place, sans
# rien laisser. Le script s'arrête donc après le relevé, et se relance après
# 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
# 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 :
# l'installateur de Mint en laisse un vide derrière lui, et s'y fier faisait
# prendre des machines installées pour des sessions live.
##################################################
en_session_live() {
findmnt -n -o FSTYPE / 2>/dev/null | grep -qE '^(overlay|aufs|squashfs)$' \
|| grep -qE '(^| )boot=(casper|live)( |$)' /proc/cmdline 2>/dev/null \
|| mountpoint -q /rofs 2>/dev/null \
|| { mountpoint -q /cdrom 2>/dev/null \
&& 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
echo ""
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 ""
releve="$(dirname "$0")/alpi-fiche.sh"
if [ -x "$releve" ]; then
if [ "$(id -u)" = "0" ]; then
"$releve" --check || true
else
sudo "$releve" --check || true
fi
echo ""
echo "==> Le serveur a noté l'heure de départ de cette installation."
else
echo " Le relevé alpi-fiche.sh n'est pas à côté de ce script : le"
echo " décompte ne démarrera pas. Prenez-le sur le serveur :"
echo " wget http://alpicache.lan/alpi-fiche.sh && chmod +x alpi-fiche.sh"
fi
echo " Relancez ce script après l'installation, sur le système installé."
echo ""
exit 0
fi
# Script de post-installation pour Linux Mint 22.3 # Script de post-installation pour Linux Mint 22.3
# testé le 25/03/2026 # testé le 25/03/2026
@ -235,12 +163,13 @@ opti_apt() {
modif_systeme() { modif_systeme() {
configuration_apt configuration_apt
# La session live est écartée en tête de script, avant toute modification : # Vérification Live USB
# ce test-ci arrivait après « configuration_apt », et ne reposait que sur un if [ -f "/cdrom/preseed/linuxmint.seed" ]; then
# fichier de /cdrom — le signe dont on sait depuis le 24/09 qu'il désigne echo "Mode Live détecté. Fin du script."
# aussi des machines installées. exit 0
fi
install_logiciels install_logiciels
config_firefox_fr config_firefox_fr
config_timeshift_desactive config_timeshift_desactive
@ -419,8 +348,11 @@ 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
poser_apt_proxy || abort "Échec de l'installation d'auto-apt-proxy" # Configuration de 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
} }
############################################################### ###############################################################