--fix-broken install can't fix because of NVIDIA drivers [duplicate]
Solution 1:
Warning: This answer is dangerous and may lead to a broken system (because this will effectively install the package but new problems may arise when both the packages try to use the same library/file/binary). Use Avinash Raj's answer instead. Also consider reporting a bug for both conflicting packages.
You have to force overwrite the files causing issues:
sudo dpkg -i --force-overwrite <file-path>
In your case it would be:
sudo dpkg -i --force-overwrite /var/cache/apt/archives/libjline-java_1.0-1_all.deb
Check that everything is fixed by running:
sudo apt-get --fix-broken install
If you still have problems, rerun the first step with any of the dpkg: error processing (...)
remaining.
Solution found on webupd8
Solution 2:
Please don't go for the danjjl answer directly, if you face this kind of "trying to overwrite" error, is likely that you have conflicting packages that need to be solved first.
The immediate fix for the issue is to remove the conflicting package that is undesirable, in this case scala
,
sudo dpkg -P scala
Next it would be recommended to submit a bug report with the respective package maintainers. This normally imply adding a Conflict: package
line in the control file.
Also see this answer for more detailed explanation about this error.
Solution 3:
@danjjl's command works for .deb
files. I found this command works with apt
/apt-get
:
sudo apt-get -o Dpkg::Options::="--force-overwrite" install <package-name>
Solution 4:
Not sure that is a global fix as I had the same issue, but with a libglx-mesa file in the cache conflicting with Nvidia-390. I removed the file and issued an apt install -f -y
, let that finished and then proceeded with the apt update
, upgrade
and autoremove
in that sequence.
I got the error while executing an apt dist-upgrade
on Ubuntu 18.04 and continued the process again, no more issues and that seemed to be "my" fix.
Commands:
sudo su -
mv /var/cache/apt/archives/libglx-mesa0_18.0.0~rc5-1ubuntu1_amd64.deb ~
apt install -f -y
apt update -y
apt upgrade -y
apt autoremove -y
apt dist-upgrade
PS: Forcing an overwrite was a bad idea that I tried and I got lucky. But it's better to find the root cause, and fix it. I still have to investigate but the error lead me to move the file out the way.