Verifique se existem várias dependências antes de instalar um pacote no Debian ou Ubuntu

8

Eu já sei que posso verificar se existem várias dependências necessárias para instalar um pacote no Debian ou Ubuntu nos meus repositórios, executando o seguinte comando:

apt policy first-package second-package ... last-package  

Este comando também me diz se eu tenho cada pacote atualmente instalado ou não.

Minha pergunta é como verificar rapidamente se há vários pacotes de dependência em uma versão suportada do Debian ou Ubuntu que eu não tenho atualmente instalado. Como não tenho esse sistema operacional atualmente instalado, não posso verificar se os pacotes de dependência existem local e offline, mas quero verificar se os pacotes de dependência necessários existem nos repositórios padrão do terminal.

Um possível uso para esta informação é verificar se uma aplicação que está instalada no Ubuntu também pode ser instalada na versão mais recente do Ubuntu antes de instalar a versão mais recente do Ubuntu ou atualizar o sistema operacional existente para a versão mais recente.

    
por karel 29.04.2018 / 10:56

2 respostas

10

A ferramenta ideal para isso é rmadison , que é um Um script Perl simples com poucas dependências (o URI module e wget ou curl ), para que ele possa ser executado praticamente em qualquer lugar. Ele interroga os serviços de Madison hospedados pelo Debian e pelo Ubuntu para determinar a disponibilidade de pacotes:

rmadison gcc-7

informa quais versões do GCC 7 estão disponíveis nos vários pacotes Debian,

rmadison -u ubuntu gcc-7

faz o mesmo com o Ubuntu.

Você pode restringir a saída a uma versão específica:

rmadison -u ubuntu -s bionic gcc-7
    
por 29.04.2018 / 14:42
3

rmadison pode procurar por pacotes Debian e Ubuntu ao mesmo tempo, e também procura por pacotes nas versões do Ubuntu no final da vida (12.04) e não lançadas (18.10). Estes são ótimos recursos, mas o rmadison não pode fazer buscas parciais de palavras-chave no meu computador. Às vezes não consigo lembrar o nome completo do pacote que estou procurando. Só consigo me lembrar de parte dela, e as instruções a seguir também funcionam nessa situação. Caso contrário, use o rmadison, que pode ser instalado pelo comando sudo apt-get install devscripts no Ubuntu e no Debian.

  1. Crie um script de shell para consultar se existem vários pacotes chamados Open-multiple-URLs-in-Firefox.sh. O script contém o seguinte código:

    #!/bin/bash
    while read line; do
        firefox --new-tab "https://packages.ubuntu.com/$line"
    done < packages.txt
    
  2. Torne o script executável.

    chmod +x Open-multiple-URLs-in-Firefox.sh
    
  3. Crie um arquivo chamado packages.txt que contenha os nomes de todos os pacotes de dependência necessários, cada pacote em uma linha separada. Salve packages.txt no mesmo diretório que Open-multiple-URLs-in-Firefox.sh.

  4. Execute o script.

    ./Open-multiple-URLs-in-Firefox.sh  
    

A página da Web que contém informações sobre cada pacote de dependência necessário será aberta em uma guia separada no Firefox.

Para procurar por vários pacotes em Debian , substitua https://packages.ubuntu.com/ no script de shell com https://packages.debian.org/search?keywords=

Este comando é uma alternativa mais simples ao script de shell acima para ser usado quando você está procurando apenas por 1 ou 2 pacotes.

firefox --new-tab https://packages.ubuntu.com/first-package https://packages.ubuntu.com/next-package https://packages.ubuntu.com/last-package
    
por 29.04.2018 / 11:17