Parece que você já descobriu a resposta. No entanto, você perguntou a outra com a edição.
I'm still not sure whether it's enough to hold only these packages in order to prevent MySQL upgrade (maybe other MySQL-specific packages should be held out as well?).
A resposta é Não. Você não precisa manter todos os pacotes, dado que você segura o pacote principal do qual o outro pacote depende. Por exemplo, mysql-server, mysql-client packages depende do mysql-common (tanto quanto eu sei), então, manter este pacote é suficiente.
E aptitude
é mais inteligente que apt
em geral e deve entender o que você deseja em espera.
Atualizado com verificação
Para verificar a resposta, eu realmente executei um teste com o pacote libgtk-3-0
, que é o pacote principal para quase todas as aplicações gtk-3. Eu tive a versão de 3.18
alguma coisa. Então eu habilitei um repositório que oferece a versão 3.20
. nautilus
depende deste pacote e o repo também oferece uma versão superior de nautilus
.
Quando tentado com aptitude upgrade -s
( -s
para simulação), ele lista os pacotes que serão atualizados. nautilus
não estava lá, porque libgtk-3-0
não seria atualizado, o que era exigido pela nova versão.
Outra opção é fixar pacotes criando arquivos no diretório /etc/apt/preferences.d
, que oferece mais opções e flexibilidade. Não é necessário em seu caso simples, mas não faz mal saber :) Apt Pinning Howto