Por que não renomeá-lo com antecedência e depois substituí-lo pelo que você quer?
Para este fim você tem que usar métodos / maneiras conforme a página oficial do Debian abaixo:
https://wiki.debian.org/Renaming_a_Package
Estou criando um pacote Debian foo
, que precisa substituir um pacote existente bar
nos sistemas nos quais ele está instalado.
Eu li:
E concluiu que as cláusulas corretas no DEBIAN/control
devem ser semelhantes:
Provides: foo
Conflicts: bar
Replaces: bar
No entanto, quando tento instalar o pacote foo
em um sistema que já possui bar
instalado, o sistema é reticente porque foo
está em conflito com bar
.
Se eu remover a entrada Conflicts: bar
, então dpkg
permitirá que ambos os pacotes sejam instalados lado-a-lado, o que é um problema, pois foo
deve substituir bar
.
Quais são as cláusulas adequadas do arquivo control
para conseguir isso?
Eu tentei Breaks
em vez de Conflicts
:
dpkg: regarding foo_DEV-22._i386.deb containing foo:
foo breaks bar
bar (version 3.2.2.1-x86NX4.4-x86) is present and installed.
bar provides bar and is present and installed.
dpkg: error processing foo_DEV-22._i386.deb (--install):
installing foo would break existing software
Errors were encountered while processing:
foo_DEV-22._i386.deb
Por que não renomeá-lo com antecedência e depois substituí-lo pelo que você quer?
Para este fim você tem que usar métodos / maneiras conforme a página oficial do Debian abaixo:
https://wiki.debian.org/Renaming_a_Package