Firefox sta tentando di creare un diversivo, quando esiste già un diversivo con quel nome.
Devi prima rimuovere la deviazione esistente.
Questa è la riga di errore:
dpkg-divert: error: 'diversion of /usr/bin/firefox to /usr/bin/firefox.real by firefox-esr' clashes with 'diversion of /usr/bin/firefox to /usr/bin/firefox.real by purebrowser'
Da questa soluzione:
sudo dpkg-divert --remove /usr/bin/firefox
Nota:se la deviazione non è causata da /usr/bin/firefox, potrebbe essere necessario identificare la deviazione con sudo dpkg-divert --list | grep firefox
o sudo dpkg-divert --list | grep purebrowser
In una nota a margine, se non ti piace il messaggio di errore locale lanciato da Perl, puoi sbarazzartene esportando il tuo locale, come mostrato qui:
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Se tutto il resto fallisce, apri il record del pacchetto e rimuovi iceweasel a mano:
sudo -i gedit /var/lib/dpkg/status
(probabilmente vedrai un blocco che inizia qualcosa come Package:Iceweasel Status:Install broken). Vedi questo problema simile:Impossibile correggere i pacchetti non funzionanti con sudo apt-get install -f
Usa questo:sudo dpkg -i --force-all /var/cache/apt/archives/firefox-esr_52.6.0esr-1~deb9u1_amd64.deb
e forzerai l'installazione di firefox-esr. 99,9% risolverà il tuo problema. Quindi seguilo con sudo dpkg --configure -a
e molto probabilmente sarai al sicuro.
Come regola generale, quando mescoli cose nelle installazioni troverai un pacchetto che deve sovrascrivere un file da un altro pacchetto. Usando dpkg
con il --force-all
l'opzione in questi casi ti permette di giocare a Dio, ma annulla anche tutti quei simpatici controlli di sicurezza incorporati nel sistema di gestione dei pacchetti di Debian. Ma dopotutto, questo è uno dei fardelli dell'essere la radice utente.