sl-test
Description:
sl-test est un outil de diagnostique des fichiers sources apt au format ‹ *.list ›, et ‹ *.sources › (DEB822). Par défaut, sl-test liste les fichiers list/sources actifs ou non, teste les domaines associés ainsi que leur éventuel redirection.
sl-test détecte aussi les lignes ‹ pseudo-vides › (contenant des espaces) des fichiers multi-sources, cause de dysfonctionnement apt difficile à diagnostiquer, signalé par « |◄ !! » (avertissement seulement, sans correction) et fichier(s) concerné(s).
Options:
-c , –content : liste le contenu numéroté des lignes non commentées des fichiers list/sources
-e , –enabled : liste les [domaines + branches] uniquement activés, et teste leur éventuel redirection.
remarque: toute modification de fichier list/source doit impérativement être suivie d’un ‹ apt update › pour être prise en compte par apt, et cette option.
sl-test 20260815
#!/bin/bash
# sl-test : liste des fichiers source apt + test domaines # 20260815 #
L=$(grep -slm1 '^[dU]' /etc/apt/s*{t,d/*[st]})
case ${1//-} in
c*) for F in $L ; do printf "%0.s―" {1..23}
printf "\n${F%/*}/\e[38;5;85m${F##*/}\e[m\n"
mawk '!/#/{sub("^ "," |◄ !!")
printf "\x1b[38;5;228m%3d\x1b[m %s\n",NR,$0}' $F
done ;;
e*) P=$(apt-cache policy | sed '\%//%!d;s~.*//~~;s~ amd.*~~')
D=$(sed 's~/.*~~' <<<"$P" | sort -u)
mawk '{printf " %-37s %s\n",$1,$2}' <<<"$P" ;;
*) D=$(mawk -F'//|/' '/^[dU]/{print $2}' $L |sort -u)
sed "s/[^/]*$/\x1b[38;5;85m&\x1b[m/" <<<$L ;;
esac
[[ $1 == *c* ]] || { echo
while read H ; do printf "\e[38;5;117m %-38s\e[m" $H
ping -c1 $H | \
mawk 'NR==1{if($2!=h)printf "\n ↳ %-35s",$2}/%/{print (/0%/?": OK":": ?")}' h=$H
done <<<$D ;}
echo
grep -lm1 '^ ' /etc/apt/s*d/*s && \
printf '\e[38;5;215m !! lignes commençant pas un espace à corriger !!\e[m\n'
exit 0
Exemple:

Test exclusivement des sources actives (option -e):

Contenu des fichiers sources (option -c)

Note: afin que ce fil ne devienne pas une demande de support général, ou demande d’explication sur du code bash, je suggère que toute question/observation soit adressée @Commentaires sur sl-test.
Ce sujet est exclusivement réservé aux utilisateurs de sl-test qui auraient un ‹ vrai bug › à signaler, démonstration factuelle à l’appui, ou une suggestion d’amélioration fonctionnelle.