Gravar Lista de Pacotes instalados via Invocação Manual do apt-get para Arquivo

6

Estou tentando instalar uma nova versão do Ubuntu a partir do zero, mas gostaria de uma lista dos pacotes que eu instalei manualmente (em vez de instalar como dependência ou que veio com o sistema).

Eu posso obter uma aproximação razoável no Synaptic olhando apenas meus Installed (manual) packages e só olhando para os pacotes não suportados pelo Ubuntu (ou seja, todos esses arquivos sem o símbolo Ubuntu Unity próximo a eles). No entanto, não consigo fazer com que o Synaptic exporte uma lista desses pacotes.

Portanto, minha pergunta é se é possível gerar uma lista de pacotes que foram instalados manualmente através do comando apt-get install ?

O seguinte não funciona:

  • Usando apt-mark showmanual . Ele produz todos os pacotes considerados essenciais, bem como pacotes instalados manualmente. Eu só quero meus pacotes instalados manualmente.
  • %código%. Existem way muitos pacotes que estão sendo mostrados (de maneira nenhuma eu instalei manualmente > 1000 pacotes).
  • O script Python dado por @txwikinger em Gerando lista de pacotes instalados manualmente e consulta de pacotes individuais . Existem pacotes (como aptitude search '!~M ~i' ) que eu instalei, mas não aparecem na saída desse script.
  • O script bash dado por @Johan no link . Mais uma vez, muitos pacotes são mostrados.

Esta pergunta é similar em sabor a outras perguntas que foram feitas tanto em sites do Stack Exchange quanto em outros lugares (como Gerando lista de pacotes instalados manualmente e consultando pacotes individuais , e link ).

David Kalnischkies, no link , oferece uma perspectiva sobre o porquê de definir exatamente o que " manualmente instalado "significa que é difícil (por exemplo, programas que você executou que pacotes instalados contam como" instalado manualmente "?). Portanto, limitei especificamente essa questão (diferentemente das outras que listei) para invocações apenas de bsdgames .

Editar: Como visualizar uma lista de pacotes que foram instalados manualmente sem suas dependências tem uma boa idéia para usar os arquivos de log do apt-get para fazer isso. Infelizmente isso não controla quais pacotes foram removidos. E mesmo se eu fosse simplesmente apt-get install e pegasse o grep 'apt-get purge' das duas listas que eu recebo, ainda não levaria em conta o caso extremo em que eu instalei um pacote, o desinstalei e depois o reinstalei.

    
por badcook 18.11.2013 / 02:45

2 respostas

2

Como não foi encontrada nenhuma resposta usando o apt , sugiro entrar em Gerenciador de Pacotes Synaptic , clique no botão Status no canto inferior esquerdo e clique em Instalado (manual) no canto superior esquerdo para ver uma lista de pacotes instalados.

Em seguida, você pode enviar uma lista do Synaptic com File | Save Markings As e salvar o arquivo onde você pode trabalhar com ele.

    
por K7AAY 15.02.2014 / 19:25
0

Acabei de postar este pensamento em uma página anterior sobre isso, desculpe se isso é indelicado (sinta-se à vontade para remover isso, se for), mas

  1. obtenha o arquivo "manifest" da sua versão do Ubuntu no link Tanto quanto eu entendo, que lista todos os pacotes que estão em uma instalação de estoque.
  2. do apt-mark showmanual para gerar uma lista de todos os pacotes que o apt-mark considera terem sido instalados manualmente.
  3. elimine os dups entre essa lista e o manifesto, deixando os pacotes na saída de apt-mark showmanual que não faziam parte da instalação de estoque.

Provavelmente isso é grosseiro e não lida com as sutilezas do que exatamente constitui um pacote "manualmente instalado", mas para mim parece uma ótima aproximação. Ou talvez a solução Synaptic seja a melhor.

    
por sam 09.06.2014 / 17:40