Olá a todos,
Vou dizer primeiro meus motivos, que são poucos:
- Não falo, leio e nem escrevo em espanhol, inglês ou outro idioma
- As atualizações dos pacotes language-pack-es; language-pack-es-base; language-pack-gnome-es; language-pack-gnome-es-base o que fazem no meu sistema? Para mim é demorar no processo de atualização, portanto para mim desnecessário.
Como fazer:
- Primeiro procurar por quais pacotes eu não quero que façam parte da atualização do meu sistema;
dpkg --get-selections | grep <nome_do_pacote>
O comando acima irá mostrar o nome dos pacotes de idiomas instalados no sistema, no meu caso eu precisei apenas especificar “language” após o grep, teclar enter e visualizar os nomes dos pacotes, tá feito isso o comando é mais simples ainda:
sudo apt-mark hold <package-1> <package-2>
Pronto feita a mágica, se por exemplo eu quiser que atualize de novo é trocar o hold por unhold no comando, quer saber quais pacotes estão em hold?
sudo apt-mark showhold
===== Editado para maiores explicações do procedimento =====
-
Vou tentar melhorar a explicação do comando aqui neste mesmo tópico para não poluir o fórum, já que há pacotes/Apps que vem pré-instalados e nós não necessitamos e no GNU/Linux nós temos a vantagem de “de certa forma” para um simples usuário comum como este que vos escreve, ter domínio total sobre o sistema, alterando, modificando (bem isso está na documentação oficial do Linux faz tempo então não irei repetir aqui)…
-
Como descrito no link ao final da mensagem (man apt-mark) é um comando que modifica a (digamos) a necessidade do pacote no seu sistema, mais ou menos, o que mostrei acima, de eu não querer que certo pacote entre na atualização do sistema quando eu por meio do Synaptic, konsole ou Discover clique em atualizar todo o sistema e blá, blá…
apt-mark irá alterar se um pacote foi marcado como sendo instalado automaticamente.
Quando você solicita que um pacote seja instalado e, como resultado, outros pacotes sejam instalados
para satisfazer suas dependências, as dependências são marcadas como sendo instaladas automaticamente.
Uma vez que esses pacotes instalados automaticamente não dependem mais de ninguém manualmente
pacotes instalados, eles serão removidos por exemplo, apt-get ou aptitude .
auto
auto é usado para marcar um pacote como sendo instalado automaticamente, o que fará com que o
pacote a ser removido quando não houver mais pacotes instalados manualmente depender deste pacote.
manual
manual é usado para marcar um pacote como sendo instalado manualmente, o que impedirá o
pacote seja removido automaticamente se nenhum outro pacote depender dele.
aguarde
hold é usado para marcar um pacote como retido, o que impedirá que o pacote seja
automaticamente instalado, atualizado ou removido. O comando é apenas um invólucro
dpkg --set-selections e o estado é portanto mantido pelo dpkg (1) e não
afetado pela opção --file .
desvendar
unhold é usado para cancelar uma espera previamente definida em um pacote para permitir todas as ações
novamente.
showauto
showautoéusado para imprimir uma lista de pacotes instalados automaticamente com cada pacote
em uma nova linha. Todos os pacotes instalados automaticamente serão listados se nenhum pacote for
dado. Se os pacotes forem fornecidos, apenas aqueles que são instalados automaticamente serão
mostrando.
showmanual
showmanual pode ser usado da mesma forma que showauto, exceto que irá imprimir uma lista de
pacotes instalados manualmente.
showhold
showhold é usado para imprimir uma lista de pacotes em espera da mesma forma que para os outros
mostrar comandos.
Vamos dar um outro exemplo que não o que me fez ir atrás dessa possibilidade, em exemplo não quero que o pacote libreoffice-writer não seja atualizado, primeiro vou saber lá o nome do pacote para me certificar do que estou fazendo, abre-se o terminal e:
dpkg --get-selections | grep libreoffice
- Note que como não sei o nome real do pacote coloquei apenas “libreoffice” e o terminal irá vasculhar tudo o que tem de pacote com libreoffice no nome
Depois de saber o nome do pacote simplesmente se coloca ele em hold que em tradução livre seria mais ou menos como “aguardando, manter, segurar”, ai faço o que pretendo manter esse pacote sem atualização ou manter também todas as suas dependências, mas esse procedimento eu não indico, então é isso pessoal, dá para fazer com qualquer pacote/App instalado, porém, temos que usar a coerência ao executar esse procedimento, por exemplo, eu não vou fazer isso com o kernel ou outro pacote de segurança do sistema, enfim qualquer pacote (por sua conta e risco) mas pacotes que não influenciem diretamente o funcionamento do sistema não vos trará problema, finalizando:
sudo apt-mark hold libreoffice-writer
Ou
sudo apt-mark -f libreoffice auto
- Você pode saber como está a situação dos pacotes em:
/var/lib/apt/extended_states
Créditos:
QA Stack
Man Pages | apt-mark
T+