Como ser avisado quando o downgrade de um pacote irá quebrar um

1

Quando eu quero instalar um pacote, mas esse pacote depende de uma versão de pacote mais antiga do que a que está instalada no meu sistema, como posso determinar se a desclassificação do pacote quebrará qualquer outro pacote que tenha dependido de uma versão superior?

Eu tive que fazer isso para um lote de pacotes desde a reinstalação do Ubuntu 12.10 em 12.04. isso é um problema relacionado?

O que eu tentei: -

  • Pesquisando Fóruns do Ubuntu e AskUbuntu (questões não relevantes)
  • pesquisando (novamente, dá resultados irrelevantes ou não)
  • Experimentando por mim mesmo (não foi possível encontrar um conjunto de pacotes adequados para experimentar)

Peço desculpas se esta pergunta já tiver sido feita antes, já que eu provavelmente não havia estruturado minhas pesquisas com a terminologia correta. 10x.

    
por Yatharth Agarwal 02.07.2013 / 17:37

1 resposta

2

Vamos usar evince e gedit como exemplos. Abra um terminal e execute:

apt-cache show evince | grep Conflicts
apt-cache show evince | grep Breaks

Este par de comandos informará se evince quebra ou entra em conflito com outra coisa. No meu caso eu recebo

$ apt-cache show evince | grep Conflicts
Conflicts: evince-gtk

$ apt-cache show evince | grep Breaks
<blank>

então evince conflitos com evince-gtk significa que eles não devem ser instalados ao mesmo tempo (o APT irá reclamar se isso acontecer).

No meu caso, evince não declara quebrar nenhum pacote, então vamos pular para gedit . Agora, corra

$ apt-cache show gedit | grep Conflicts
<blank>

$ apt-cache show gedit | grep Breaks
Breaks: gedit-plugins (<< 2.91)

Como você pode ver, gedit não está em conflito com ninguém. No entanto, ele quebra o pacote chamado gedit-plugins para versões estritamente menores que 2.91 . Isso significa que gedit-plugins é mais recente que esta versão para funcionar corretamente com gedit e, em particular, o APT se recusará a instalar gedit , a menos que você remova gedit-plugins (<< 2.91) primeiro.

Observe que, mesmo que o gedit-plugins nos repositórios oficiais seja recente o suficiente, talvez você queira fazer o download (de github maybe) de um determinado plugin GEdit que seja mais antigo, esta linha serve como um resto deve não funcionar com a versão atual do GEdit.

Para mais detalhes sobre as relações de pacotes (e as definições oficiais de quebras e conflitos), consulte Debian. Manual de Políticas - Capítulo 7 .

    
por edwin 03.07.2013 / 18:21