[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Solução do dselect (tinha desselecionado metade da minha distrib)



Olá povo!

Descobri como resolver o problema do dselect. Uma solução trabalhosa
mas limpa e elegante. É claro que a limpeza e elegância ficaram por
conta da distribuição Debian! :-)

No diretório /var/lib/dpkg há um arquivo chamado status. Lá estão
todos os pacotes deb instalados, pendentes ou já removidos e
o estado atual em que eles se encontram além das pendências e conflitos.

(aposto como alguém vai dizer "você não sabia????" :-)  bom, a
resposta é NÃO! :-)

Um espetáculo de organização e clareza! E tudo em formato TEXTO!
O dselect - acho que todo mundo, na verdade: apt, debconf etc - vai
verificar nele o que é que pode ser feito e como.

O problema original era que meu cérebro estava uns ciclos atrás dos
dedos e eu dei ok em uma cascata de exclusão (em função de pendências
de um programa). Isso deixou meu dselect "pronto" para excluir metade
da minha instalação na primeira bobeada que eu desse "ok".

Bom, é o seguinte:
Dentro do /var/lib/dpkg/status, para cada pacote deb instalado há uma
seqüência de informações. Uma delas é a linha "status:". Para os
pacotes que eu havia dado ok (pedido para excluir) constava:

"status: deinstall ok installed".

Verifiquei todos os "deinstall" (para saber se eram quem eu
procurava) e mandei substituir no editor de texto (nedit)
todos os "deinstall" por "install". E só!

Rodei o dselect e tudo estava correto como dantes no quartel de
Abrantes!

Aproveitei para corrigir um problema estranho que apareceu quando eu
misturei meu progeny com os helix-gnome de um cd da Revista do Linux.
O deselect dizia que o sawfish conflitava com o sawfish-gnome e que era
dependente do sawfish-gnome. Editei o status e alterei a linha,
exluindo a dependência (espúria). É claro que é sensacional mexer
direto mas também é meio assustador. Principalmente quando você
_já_ havia feito algo estúpido e está só tentando consertar... :-)

Abraço

Cláudio Max






Reply to: