Risolvere le dipendenze in modo interattivo

Se si verifica un problema di dipendenze che non può essere gestito usando la risoluzione immediata di dipendenze, aptitude può assistere l'utente nella sua risoluzione. Non appena si presenta un problema, appare una barra rossa alla base della schermata con un riassunto dei suggerimenti di aptitude su come risolverlo. Ad esempio, nella schermata seguente, aptitude indica che può risolvere la situazione eliminando 47 pacchetti.

[vista dei pacchetti, pacchetti difettosi dopo la tentata rimozione di sound-juicer]

Come indicato alla base della schermata, ulteriori soluzioni possono essere visualizzate premendo . e ,, si può applicare la soluzione attuale premendo ! ed esaminare la soluzione più in dettaglio premendo e. Quando si esamina la soluzione attuale, appare una schermata simile a:

[risolutore delle dipendenze n.1]

Si può accedere alle informazioni sul pacchetto sui cui ha effetto un'azione semplicemente premendo Invio quando il pacchetto è evidenziato. Per una spiegazione più dettagliata sul perché aptitude ha preso una particolare decisione, si può evidenziare l'elemento nella lista. Quando lo si fa, la metà inferiore della schermata mostra la dipendenza che è stata risolta dalla scelta di aptitude, insieme con tutti i modi in cui tale dipendenza avrebbe potuto essere risolta.

[spiegazione sulle decisioni del risolutore di dipendenze]

Si può guidare il risolutore interattivo verso una soluzione di cui si è soddisfatti, approvando o rifiutando le singole azioni di una soluzione. Se si approva un'azione, il risolutore la sceglie, ogni volta che è possibile, ignorando le alternative (quando esistono diverse alternative approvate, ne può essere scelta una qualsiasi). All'opposto, se si rifiuta un'azione, il risolutore non sceglie mai quell'azione.

Per rifiutare un'azione, evidenziarla e premere r; il rifiuto può essere rimosso premendo nuovamente r. In modo analogo, selezionare un'azione e premere a per approvarla; premere a di nuovo per ripristinare il suo stato originale. Entrambe le scelte possono essere annullate usando AnnullaAnnulla (Control+u) mentre è attiva la schermata del risolutore. Se si rimuove un rifiuto o un'approvazione, qualsiasi soluzione che era stata ignorata diventa disponibile per la prossima volta che si genera una nuova soluzione.

[Nota]Nota

In modo predefinito, il risolutore rifiuta le azioni che cambiano lo stato dei pacchetti bloccati o che installano versioni proibite di pacchetti. È possibile sovrascrivere questi rifiuti, permettendo perciò che il blocco o la proibizione vengano automaticamente ignorati, nello stesso modo in cui si ignora ogni altro rifiuto. Impostando l'opzione di configurazione Aptitude::ProblemResolver::Allow-Break-Holds a true si disabilita questo comportamento, il che significa che il risolutore infrange sempre i blocchi (anche se con una penalità: vedere Aptitude::ProblemResolver::BreakHoldScore).

Le azioni rifiutate vengono colorate di rosso e contrassegnate da una «R», mentre le azioni approvate sono colorate in verde e contrassegnate da una «A». Lo si può vedere nella schermata seguente dove l'azione «rimuovi audacity» è stata rifiutata e l'azione «rimuovi dvdwizard» è stata approvata.

[azioni rifiutate e approvate nella risoluzione di dipendenze]

I rifiuti e le approvazioni hanno effetto solo sulle soluzioni generate successivamente. Si può capire quando verrà generata una nuova soluzione esaminando l'indicatore nell'angolo in basso a sinistra della schermata: se c'è un numero tra parentesi, quello è il numero delle soluzioni che sono state generate. Perciò, quando il numero fuori dalle parentesi e il numero dentro sono identici (come nell'esempio precedente), premendo . si genera una nuova soluzione. Se non c'è alcun numero tra parentesi (ad esempio se l'indicatore è nella forma [1/5]) allora non ci sono più soluzioni da generare. In qualsiasi momento, è possibile selezionare l'ultima soluzione generata premendo >, e la prima premendo <.

[Importante]Importante

Lo stato del risolutore dei problemi viene azzerato quando si modifica lo stato di un qualsiasi pacchetto. Se si contrassegna un pacchetto per l'installazione, l'aggiornamento, la rimozione, ecc., il risolutore dimentica tutti i rifiuti e le approvazioni, così come tutte le soluzioni che erano state generate fino a quel momento.

In aggiunta ad usare l'elenco in alto nella schermata, è possibile selezionare le azioni anche nell'elenco nella metà inferiore. Per accedere a questo elenco, fare clic su di esso con il mouse o premere Tab. Da ultimo, per vedere le decisioni che il risolutore di problemi ha preso organizzate in ordine, premere o. Questo fornisce un elenco delle dipendenze che sono state risolte e l'azione presa per risolverle, come nella schermata seguente.

[spiegazione delle soluzioni del risolutore di dipendenze]

Si può uscire da questa modalità di visualizzazione premendo nuovamente o.