Eu nunca brinquei com isso antes, mas sugiro que você hold
(ou lock
) a versão das dependências que causam problemas. Dessa forma, apt
há um número mais limitado de soluções possíveis e talvez não fique confuso quando você tenta fazer o downgrade dos outros pacotes.
Se nada mais funcionar, você pode seguir a abordagem manual sugerida nesta resposta: Como fazer o downgrade de um pacote via apt-get? . Basicamente, baixar os necessários .deb
pacotes manualmente, em seguida, instalá-los um por um com o de nível mais baixo dpkg
e um dos seus argumentos contundentes: --ignore-depends
, --force-depends
, --force-depends-version
, ou mesmo --force-all
.
No mesmo espírito que o acima, você tem o --force-downgrade
argumento:
downgrade(*): Install a package, even if newer version of
it is already installed.
Warning: At present dpkg does not do any dependency
checking on downgrades and therefore will not warn you if
the downgrade breaks the dependency of some other pack‐
age. This can have serious side effects, downgrading
essential system components can even make your whole sys‐
tem unusable. Use with care.
Mas isso pressupõe que você leu man dpkg
e entendeu o que faz:
Warning: These options are mostly intended to be used by
experts only. Using them without fully understanding
their effects may break your whole system.
Consulte Erro: número da versão não inicia com dígito e Como instalar uma versão mais antiga do Java e Como instalar uma versão mais antiga do pacote, como o líquido 2.2.2? para exemplos de:
sudo dpkg --force-downgrade -i your_mesa_package.deb
E consulte Como instalar um pacote sem instalar algumas dependências? por exemplo (junto com o aviso apropriado) de:
sudo dpkg --force-all -i your_mesa_package.deb
Outra abordagem seria criar um .deb
pacote fictício usando o equivs
pacote (e talvez um nome ligeiramente diferente). A instalação do pacote fictício deve permitir a remoção do pacote "true", mantendo os deps relevantes e, em seguida, instalar a versão mais antiga. Não tenho certeza de como exatamente isso funcionaria, mas verifique este tópico relevante para obter detalhes: Como remover um deb sem remover suas dependências .
ppa-purge
primeiro?