Dependência quebrada do Ubuntu 19.04 apt: mono

Dependência quebrada do Ubuntu 19.04 apt: mono

Estou tendo um problema com o apt no Ubuntu 19.04. Toda vez que tento instalar ou atualizar um pacote apt aparece o seguinte erro:

You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 mono-complete : Depends: mono-roslyn (= 6.4.0.198-0xamarin3+ubuntu1804b1) but it is not going to be installed
 mono-devel : Depends: mono-roslyn (= 6.4.0.198-0xamarin3+ubuntu1804b1) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

Ao executar sudo apt -f installme deparei com o seguinte erro:

dpkg: error processing archive /var/cache/apt/archives/mono-roslyn_6.4.0.198-0xamarin3+ubuntu1804b1_all.deb (--unpack):
 trying to overwrite '/usr/bin/csc', which is also in package chicken-bin 4.13.0-1
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/mono-roslyn_6.4.0.198-0xamarin3+ubuntu1804b1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Resumindo: mono-roslynestá tentando sobrescrever o cscbinário, que é usado atualmente pelo chicken-bin(compilador do esquema CHICKEN).

Tentei mover o cscbinário de /usr/bin/cscpara /usr/bin/csc-chickenpara verificar se isso resolveria o problema. Isso não aconteceu e ainda tenho o mesmo erro.

Já tive problemas com relação ao apt e ao mono antes, que corrigi com o sudo apt autoremove, que me deu o mesmo erro que o primeiro mostrado aqui.

Preciso corrigir esse problema para poder atualizar ou instalar novos pacotes em meu sistema. Como você pode imaginar, este é um assunto bastante urgente.

Responder1

Depois de alguns dias cheguei a uma solução. Decidi apenas remover chicken-binpara que o mono pudesse ser instalado corretamente (não o ideal, mas minha melhor opção). Como eu disse na minha pergunta apt removenão funcionaria, mas descobri que poderia remover o pacote usando dpkg.

Os seguintes comandos corrigiram meu problema:

$ sudo dpkg --remove --force-remove-reinstreq chicken-bin
$ sudo apt -f install

Espero que alguém ache isso útil.

informação relacionada