I am trying to install a set of build dependencies but am getting the following error:

The following packages have unmet dependencies:
 libbz2-dev : Depends: libbz2-1.0 (= 1.0.6-9.2~deb10u1) but 1.0.6-9.2 is to be installed
 libcurl4-gnutls-dev : Depends: libcurl3-gnutls (= 7.64.0-4+deb10u1) but 7.65.1-1 is to be installed

I assume that installing dependencies one minor version after that what is required will still work fine. Is there any way I can make apt ignore these specific dependencies and just use the latest versions of these packages instead?

Edit - Extra info:

$ cat /etc/debian_version 

$ apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 https://packages.riot.im/debian buster/main amd64 Packages
     release o=riot.im,a=stable,n=buster,c=main,b=amd64
     origin packages.riot.im
 500 http://ftp.uk.debian.org/debian stable-updates/main i386 Packages
     release o=Debian,a=stable-updates,n=buster-updates,l=Debian,c=main,b=i386
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable-updates/main amd64 Packages
     release o=Debian,a=stable-updates,n=buster-updates,l=Debian,c=main,b=amd64
     origin ftp.uk.debian.org
 500 http://security.debian.org/debian-security stable/updates/main i386 Packages
     release v=10,o=Debian,a=stable,n=buster,l=Debian-Security,c=main,b=i386
     origin security.debian.org
 500 http://security.debian.org/debian-security stable/updates/main amd64 Packages
     release v=10,o=Debian,a=stable,n=buster,l=Debian-Security,c=main,b=amd64
     origin security.debian.org
 500 http://ftp.uk.debian.org/debian stable/non-free i386 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=non-free,b=i386
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable/non-free amd64 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=non-free,b=amd64
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable/contrib i386 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=contrib,b=i386
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable/contrib amd64 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=contrib,b=amd64
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable/main i386 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=main,b=i386
     origin ftp.uk.debian.org
 500 http://ftp.uk.debian.org/debian stable/main amd64 Packages
     release v=10.3,o=Debian,a=stable,n=buster,l=Debian,c=main,b=amd64
     origin ftp.uk.debian.org
Pinned packages:
  • What release of Debian are you running? Add the output of apt-cache policy to your question. It looks like you have repos for multiple releases/versions. Mar 3 '20 at 22:42
  • @NasirRiley Added that extra info to the question Mar 3 '20 at 22:53

Not only are you running debian/sid which is the unstable version of Debian, it is also Bullseye which hasn't been officially released yet.. The packages are mostly development versions that are then released to testing before they are released to the stable version. The unstable version will never be released, isn't really meant to "work", can undergo massive changes, and there is a significant chance that it will trap you in dependency hell. You can read more about it here: https://www.debian.org/releases/sid/ All of this is conspiring to put you into what you are experiencing right now.

If you want a working system, the best thing that you can do is to install a stable version of Debian like Buster and make sure that you only have the repos for that particular version installed.

  • I think I switched to unstable at one point but then switched back to stable again. Is it possible that my /etc/os-release is just "out of sync"? My sources.list only has stable and stable-updates in it as you can see from the output of apt-cache policy. Mar 3 '20 at 23:30
  • @JShorthouse The version that you are running is bullseye/sid. Bullseye has not yet been released so it has a lot of beta/untested packages and the sid version itself is unstable. By using it, you are going to run into what you are experiencing. Your release is not out of sync. You are running an unstable version of an unreleased operating system. Mar 3 '20 at 23:54
  • My sources file was set back to only looking at stable packages though. I think this is my problem. I have a mix of testing and stable packages, and as I have just read on the debian wiki, downgrading packages is not supported. Since I can't downgrade I have set my sources.list to bullseye for now, I will have to stay on unstable until bullseye becomes stable and then I will be back on stable again. Mar 3 '20 at 23:58
  • @JShorthouse It doesn't matter what's in your sources file. You are using sid which is unstable and isn't ever meant to be stable or to even be released. To top it off, you are using a version that hasn't even been released yet. You can see why you are having these issues with the link that I provided. I've been very clear on this point but if you want to keep using an unstable release of a version that's not even out yet, you're going to keep running into these problems and you're not going to get much help besides other people telling you the same things. Mar 4 '20 at 0:37
  • Please stop saying that unstable isn’t meant to work; it is, but its purpose isn’t for end users to use it. It’s not called unstable because it results in an unstable system; it’s called unstable because it doesn’t provide a stable base on which to build a larger system (i.e. the APIs/ABIs it provides can and do change). Software uploaded to unstable doesn’t magically become stable when it migrates to testing (and ultimately stable); it’s the same software. Mar 4 '20 at 9:37

This issue was caused by the fact that I had switched my sources.list to testing, and then later changed back to stable, essentially leaving half of my packages as stable versions and half as unstable.

To fix this, I changed my sources.list to be hardcoded to the specific version name that testing is at the moment (bullseye) and then upgraded all my packages. This fixed the issue.

Since debian does not support downgrading packages I will be stuck on testing for a while. However, since I have hardcoded the version name, once bullseye becomes stable I will be back to stable again. I can then update my sources.list to "stable" and stay there.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.