Je voulais auditer mes packages installés. J'ai créé un Python appelant dpkg-query
, pour créer une base de données de packages en utilisant Python et listes. L'assistant est assez intelligent pour vérifier que les dépendances sont bien présentes dans le dictionnaire clonant la base de données des packages installés. J'obtiens une erreur avec le wings3d
package: l'assistant m'a notifié un package nommé erlang-abi-13.a
est manquant. Synaptic me dit que ce paquet n'est pas installé. Il répertorie toujours ce package en tant que wings3d
dépendance, mais l'affiche en dépendance, en utilisant l'italique au lieu de la police normale.
Qu'est-ce que cela signifie lorsque Synaptic affiche une dépendance en utilisant l'italique? Comment une dépendance peut-elle manquer alors que le package ne semble pas être cassé?
Tous les packages commençant par erlang-abi
, sont des packages virtuels. Cela ressortira de la sortie apt-cache:
apt-cache show erlang-abi-15.b
N: Can't select versions from package 'erlang-abi-15.b' as it is purely virtual
N: No packages found
Votre assistant ne tient pas compte des packages virtuels, il échoue donc. C'est aussi pourquoi Synaptic montre les packages avec italique.
Faire
apt-cache depends erlang-abi-13.a # see what depends upon it
et
apt-cache rdepends erlang-abi-13.a # see what it depends upon
Faites ensuite la même chose avec wings3d. pour voir si erlang-abi-13.a est répertorié.
Les packages et les exigences peuvent être un peu mélangés lorsque vous effectuez une mise à jour de distribution. Cela pourrait en être la cause.