É possível desinstalar individualmente pacotes previamente instalados usando um meta-pacote?

2

Não tenho necessidade do utilitário de ajuda, do visualizador de documentos, do aplicativo de contatos, etc. que o Gnome criou no shell do gnome.

É possível remover apenas esses pacotes? Toda vez que eu tento, quero que eu remova gnome3 todos juntos.

Eu sinto que isso deveria ser possível e que estou sentindo falta de algo.

    
por Andrew 10.09.2014 / 19:05

3 respostas

3

A desinstalação de pacotes puxados por um meta-pacote é sempre difícil, se não impossível . No entanto, como você está desesperadamente disposto a removê-las, mesmo usando adivinhações manuais, posso sugerir uma boa alternativa.

Os pacotes instalados, atualizados ou removidos são registrados no arquivo /var/log/apt/history.log . É relativamente mais fácil simplesmente copiar os nomes dos pacotes da seção relevante e desinstalá-los manualmente.

Aqui está um exemplo de uma seção do arquivo

Start-Date: 2016-12-12  19:15:40
Commandline: aptdaemon role='role-commit-packages' sender=':1.293'
Install: libva-tpi1:amd64 (1.7.1-2~gd~x), intel-gpu-tools:amd64 (1.15-1intel1), libva-egl1:amd64 (1.7.1-2~gd~x), vainfo:amd64 (1.7.1-2~gd~x), libva-glx1:amd64 (1.7.1-2~gd~x)
Upgrade: libgles2-mesa:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libdrm-nouveau2:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-nouveau2:i386 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libegl1-mesa-dev:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgles1-mesa:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libglapi-mesa:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libglapi-mesa:i386 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), mesa-common-dev:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libxatracker2:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libegl1-mesa-drivers:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libegl1-mesa:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgbm1:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libdrm-amdgpu1:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-amdgpu1:i386 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libwayland-egl1-mesa:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgles2-mesa-dev:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libdrm2:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm2:i386 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libgl1-mesa-dev:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgl1-mesa-dri:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgl1-mesa-dri:i386 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libosmesa6:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libosmesa6:i386 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgl1-mesa-glx:amd64 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libgl1-mesa-glx:i386 (13.1~git1611130730.151aec~gd~x, 13.1~git1612120730.609216~gd~x), libdrm-intel1:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-intel1:i386 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-radeon1:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-radeon1:i386 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x), libdrm-dev:amd64 (2.4.73+git1611221830.1924b6~gd~x, 2.4.74+git1612060630.082579~gd~x)
End-Date: 2016-12-12  19:16:59

Você pode encontrar o nome do pacote necessário no valor do campo Install: . Talvez até empregue alguma análise textual para extrair os nomes dos pacotes.

Espero que isso ajude um pouco, pelo menos.

Atualizar

Eu escrevi um script Ruby para ajudar a ver os pacotes instalados com um comando, para que eles possam ser removidos posteriormente. Mas o cuidado deve ser praticado porque o seu pacote posterior instalado também pode ser dependente de alguns deles. Ainda não está terminado e quero expandi-lo. Enfim, confira aqui link

  1. Faça o download do arquivo zip ou clone o repositório
  2. cd para o diretório e
  3. Executar ruby search-apt-log.rb . Ele pedirá um termo de pesquisa, dê-o. Em seguida, ele lhe dará uma história de todos os eventos aptos envolvendo esse termo. Você pode então ver quais pacotes são instalados e removê-los copiando os nomes.
por Anwar 31.12.2016 / 10:19
1

Eu vi que o tamanho / espaço de instalação a ser liberado para esses pacotes ao chamar apt-get era de alguns MBs, então eu usei o marcador e deixei apt-get fazer o que estava certo, e tudo estava OK.

Portanto, se alguém não tiver tanta certeza sobre a remoção de pacotes, certifique-se de que o tamanho de instalação / desinstalação esteja correto para o pacote e que tudo fique bem. Se aparecer como algumas centenas de MBs, não pressione Y

    
por Andrew 10.09.2014 / 19:11
0

Algum tempo atrás eu escrevi um sh script chamado apt-holepunch que faz isso ( link ). Aviso: este script é extremamente perigoso.

Contexto completo aqui: link

Acontece que, sim, há boas razões para não querer instalar todos os pacotes de um meta-pacote, mas deixar o metapacote instalado para que os futuros adicionados sejam instalados. De alguma forma, a equipe de desenvolvimento não entende isso.

    
por Joshua 02.11.2015 / 05:57