Como falsificar uma dependência no apt-get? [duplicado]

0

Como posso enganar apt-get para acreditar que uma dependência de um pacote prestes a ser instalado já está instalada, para que o pacote de referência possa ser instalado sem instalar a dependência?
Eu tenho que editar /var/lib/dpkg/status ?

No meu caso real, quero instalar nagios sem ter que instalar mailx e postfix .
Fiz um script de shell /usr/local/bin/mailx que usa msmtp para enviar e-mails remotamente e vinculou isso a /usr/bin/mailx usando update-alternatives . Portanto, não preciso e não quero uma infraestrutura de correio local instalada, mas nagios3-common depende de bsd-mailx | mailx .

apt-get --force-yes install nagios3-common não ajuda, nem definir uma prioridade negativa para *mail* packages em /etc/apt/preferences .

    
por Juergen 02.03.2017 / 02:14

1 resposta

0

Solução para o meu caso do mundo real:

apt-get install --no-install-recommends equivs
echo -e 'Package: mailx-dummy\nProvides: mail, mailx\nDescription: fake mail/mailx' > mailx-dummy.ctl
equivs-build mailx-dummy.ctl && dpkg -i mailx-dummy*.deb
apt-get install --no-install-recommends nagios3

Sim, esta é uma duplicata de Como falsificar uma versão de pacote instalada .
Não marcou essa pergunta como uma duplicata porque essa é uma solução específica de quatro linhas para instalar nagios sem mailx e postfix e pode ser útil além da pergunta original.

    
por Juergen 02.03.2017 / 13:55