Avez-vous déjà eu un dysfonctionnement d'un programme lié au fait qu'un paquet recommandé, que vous ne jugiez pas utile, avait été enlevé alors qu'il était, en fait, utile ?
Parce que les paquets recommandés sont maintenant installés par défaut en même temps que le paquet demandé, mais pas toujours (il y a une heuristique un peu spéciale pour ne pas tenter de réinstaller tout le temps le même paquet dont vous ne voulez vraiment pas ; pour autant que je le sache, il s'agit de ne pas installer un paquet recommandé s'il aurait dû l'être et qu'il ne l'est pas, tout simplement). Au bout d'un certain temps, ça peut être agréable (nécessaire ?) de faire un inventaire des paquets qui auraient pu être installés mais refusés à un moment donné. De plus, certaines manipulations brutales du gestionnaire de paquets peuvent mettre des paquets sur votre système et qu'il lui manque une vraie dépendance (Depends ou Pre-Depends). Même si aptitude est capable de lister les problèmes for la deuxième question (aptitude search ~i~b est grosso modo la réponse), le premier problème n'admet pas de solutions simples (les recherches avec aptitude ne permettent pas de faire la différence entre un dépendance de A ou B, et une dépendance de A et B).
J'ai donc écrit (toujours en python avec python-apt ≥ 0.7.93, donc dans unstable actuellement) un programme apt-missing.
Seules les dépendances positives ont été envisagées (Pre-Depends, Depends, Recommends, Suggests et aussi si on veut Enhances). Les dépendances négatives ne sont pas encore traitées mais là c'est la présence d'un paquet dépendant dans une clause qui doit déclencher une réaction, pas l'absence de tous les paquets de la clause.
Le programme est hébergé là, et les paquets sont hébergés ici.
Exemples
Lancerapt-missing seul (comme apt-missing --recommends) :
# Package abiword has some Recommends missing:D'ailleurs, j'ai pu ainsi localiser des modules noyaux installés qui recommandaient des noyaux absents, parce que tout simplement ils avaient disparus. J'ai donc pu les effacer.
abiword-docs
# Package defoma has some Recommends missing:
libfont-freetype-perl
# Package doc-debian-fr has some Recommends missing:
developers-reference-fr
maint-guide-fr
apt-howto-fr
# Package dwww has some Recommends missing:
swish++
[...]
# Package xchat has some Recommends missing:
tcl
## "Depends" broken in 0 packages
## "Pre-Depends" broken in 0 packages
## "Recommends" broken in 31 packages
apt-missing -a cherche tous les types de dépendance positifs :
# Package a2ps has some Suggests missing:
html2ps
t1-cyrillic
# Package abiword has some Recommends missing:
abiword-docs
[...]
## "Depends" broken in 0 packages
## "Pre-Depends" broken in 0 packages
## "Recommends" broken in 31 packages
## "Suggests" broken in 377 packages
Options
- -h|--help
- Ce texte d'aide
- -d|--depends
- Depends ou Pre-Depends manquants
- -r|--recommends
- Recommends manquants (par défaut)
- -s|--suggests
- Suggests manquants
- -a|--any
- N'importe quelle dépendance positive (comme ci-dessus)
- -t|--type=string
- Dépendance quelconque (par ex. Enhances)
- -p|--package=string
- Liste de paquets à analyser séparés par un espace (on peut répéter l'option, et si aucune option -p n'est présente, tous les paquets sont analysés)




