What exactly does sudo apt-get -f install do?
From man apt-get
:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place. This
option, when used with install/remove, can omit any packages to permit APT
to deduce a likely solution. If packages are specified, these have to
completely correct the problem. The option is sometimes necessary when
running APT for the first time; APT itself does not allow broken package
dependencies to exist on a system. It is possible that a system's dependency
structure can be so corrupt as to require manual intervention (which usually
means using dselect(1) or dpkg --remove to eliminate some of the offending
packages). Use of this option together with -m may produce an error in some
situations. Configuration Item: APT::Get::Fix-Broken.