Résolution interactive des dépendances

Si un problème de dépendances survient qui ne peut être pris en charge par la résolution immédiate, aptitude peut vous aider à le résoudre. Dès qu'un problème arrive, une barre rouge apparaît en bas de l'écran avec un résumé des suggestions d'aptitude pour le résoudre. Par exemple, dans la capture d'écran suivante, aptitude indique qu'il est possible de résoudre le problème en gardant deux paquets dans leur version actuelle.

[vue des paquets, paquets cassés après une tentative de suppression de sound-juicer]

Comme il est indiqué en bas de l'écran, vous pouvez voir d'autres solutions en appuyant sur . et ,, appliquer la solution courante en appuyant sur ! et examiner la solution plus en détail en appuyant sur e. Quand vous examinez la solution courante, un écran semblable au suivant apparaît.

[solveur de dépendances nº 1]

Vous pouvez accéder aux informations sur le paquet affecté par une action en appuyant simplement sur entrée lorsque le paquet est sélectionné. Pour obtenir une explication détaillée sur les raisons d'un choix particulier, il suffit de sélectionner l'élément dans la liste. Dans la moitié basse de l'écran, s'afficheront la dépendance qui a été résolue par aptitude et tous les moyens par lesquels la dépendance aurait pu être résolue.

[explication sur les décisions prises par le solveur de dépendances]

Vous pouvez guider la résolution de dépendances vers la solution de votre choix en approuvant ou rejetant les actions élémentaires d'une solution. Si vous approuvez une action, le solveur choisira, autant que possible, cette action en ignorant les alternatives (s'il y a plusieurs actions approuvées, elles seront toutes choisies). À l'inverse, si vous rejetez une action, le solveur ne choisira jamais cette action.

Pour rejeter une solution, sélectionnez-la et appuyez sur r ; appuyez à nouveau sur r pour annuler ce rejet. De même, pour approuver une action, appuyez sur a. Dans l'écran des solutions, vous pouvez annuler vos actions à tout moment en utilisant AnnulerAnnuler (Contrôle+u). Si vous annulez un rejet ou une approbation, toute solution qui aurait été ignorée sera à nouveau considérée dès la prochaine génération d'une solution.

[Note]Note

Par défaut, le solveur rejette toute action qui changerait l'état de paquets gelés, ou qui installerait une version interdite de paquets. Vous pouvez contourner ces rejets, et donc permettre le gel ou l'interdiction d'être automatiquement contournée, de la même manière que vous contourneriez un autre rejet. Positionner l'option de configuration Aptitude::ProblemResolver::Allow-Break-Holds à la valeur vrai désactivera ce comportement, ce qui signifie que le solveur cassera toujours les gels (avec cependant une pénalité, voir Aptitude::ProblemResolver::BreakHoldScore).

Les actions rejetées sont mises en rouge et marquées avec un « R », et celles approuvées sont mises en vert et marquées avec un « A ». Comme vous pouvez le voir dans la capture suivante où l'action de « conserver gstreamer0.8-cdparanoia dans sa version actuelle » a été rejetée et l'action de « conserver sound-juicer dans sa version actuelle » approuvée.

[refus et accords dans la résolution des dépendances]

Les rejets et les approbations n'affectent que les solutions nouvellement générées. Il est possible de savoir si une nouvelle solution va être générée en regardant l'indicateur en bas à gauche de l'écran. S'il y a un nombre entre parenthèses, celui-ci indique le nombre de solutions générées. Et donc, si le nombre hors des parenthèses et celui à l'intérieur sont égaux (comme ci-dessus), appuyer sur . va générer une nouvelle solution. S'il n'y a pas de nombre entre parenthèses (l'indicateur affiche, par exemple, [1/5]), alors il n'y a pas d'autre solution à générer. À tout moment, vous pouvez sélectionner la dernière solution générée en appuyant sur > et la première avec <.

[Important]Important

L'état du système de résolution des problèmes est mis à zéro quand vous modifiez l'état d'un paquet. Si vous marquez un paquet pour installation, pour mise à jour, pour suppression, etc., aptitude oubliera tous vos rejets et approbations, ainsi que toutes les solutions générées jusque là.

En plus de la sélection des actions dans la liste en haut de l'écran, vous pouvez sélectionner ces actions dans la liste du bas. Pour avoir accès à cette seconde liste, vous pouvez soit cliquer dessus avec votre souris, soit appuyer sur Tab. Enfin, en appuyant sur o, vous afficherez les décisions triées. Cela consiste en une liste des dépendances qui ont été résolues et des actions qui ont amené ce résultat, comme le montre la capture suivante .

[explications des solutions du solveur de dépendances]

Appuyer à nouveau sur o quitte ce mode d'affichage.