Score:1

libpulse-dev installation problem

cn flag

There seems to be an issue with libpulse-dev in Ubuntu 21.10 because if I want to install libsdl2-dev on a fully up-to-date system, I get:

The following packages have unmet dependencies:

libpulse-dev : Depends: libpulse0 (= 1:15.0+dfsg1-1ubuntu2) but 1:15.0+dfsg1-1ubuntu2.1 is to be installed

# dpkg --get-selections | grep hold
root@gamer2:/# apt update
Hit:1 https://repo.steampowered.com/steam stable InRelease
Hit:2 http://ca.archive.ubuntu.com/ubuntu impish InRelease                             
Hit:3 http://ca.archive.ubuntu.com/ubuntu impish-updates InRelease                     
Hit:4 http://security.ubuntu.com/ubuntu impish-security InRelease
Hit:5 http://ca.archive.ubuntu.com/ubuntu impish-backports InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
root@gamer2:/# apt dist-upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@gamer2:/# apt install libsdl2-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help resolve the situation:

The following packages have unmet dependencies:
 libpulse-dev : Depends: libpulse0 (= 1:15.0+dfsg1-1ubuntu2) but 1:15.0+dfsg1-1ubuntu2.1 is to be installed
                Depends: libpulse-mainloop-glib0 (= 1:15.0+dfsg1-1ubuntu2) but 1:15.0+dfsg1-1ubuntu2.1 is to be installed
E: Unable to correct problems, you have held broken packages.
root@gamer2:/# dpkg --get-selections | grep hold
root@gamer2:/# 

How do I solve this?

This is on a fresh 64b ubuntu21.10 install.

UPDATE

# apt-cache policy libpulse-dev
libpulse-dev:
  Installed: (none)
  Candidate: 1:15.0+dfsg1-1ubuntu2
  Version table:
     1:15.0+dfsg1-1ubuntu2.2 1 (phased 20%)
        500 http://ca.archive.ubuntu.com/ubuntu impish-updates/main amd64 Packages
     1:15.0+dfsg1-1ubuntu2 500
        500 http://ca.archive.ubuntu.com/ubuntu impish/main amd64 Packages

Ubuntu version, kernel, and architecture:

root@gamer2:/# cat /etc/issue
Ubuntu 21.10 \n \l

root@gamer2:/# uname -a
Linux gamer2 5.13.0-22-generic #22-Ubuntu SMP Fri Nov 5 13:21:36 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

UPDATE 2

It seems to get libpulse0 from impish, but libpulse-dev from impish-updates, but why?

root@gamer2:/# apt-cache policy libpulse0
libpulse0:
  Installed: 1:15.0+dfsg1-1ubuntu2.1
  Candidate: 1:15.0+dfsg1-1ubuntu2.1
  Version table:
     1:15.0+dfsg1-1ubuntu2.2 1 (phased 20%)
        500 http://ca.archive.ubuntu.com/ubuntu impish-updates/main amd64 Packages
 *** 1:15.0+dfsg1-1ubuntu2.1 100
        100 /var/lib/dpkg/status
     1:15.0+dfsg1-1ubuntu2 500
        500 http://ca.archive.ubuntu.com/ubuntu impish/main amd64 Packages
root@gamer2:/# apt install libpulse0
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libpulse0 is already the newest version (1:15.0+dfsg1-1ubuntu2.1).
libpulse0 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

UPDATE 3

This PC has no non-default repositories, nor ever had any non-default repositories configured.

There are no holds:

$ apt-mark showhold
$ 
guiverc avatar
cn flag
I would check your system is fully-updated & software lists are updated; as the *depends* rules you provided don't match a fully upgraded *impish* (21.10) install. See https://packages.ubuntu.com/impish-updates/libpulse-dev or `= 1:15.0+dfsg1-1ubuntu2.2` , ie. start with basics; `sudo apt update` to update software lists, messages clean without errors/warnings, no missing lines etc...
Bram avatar
cn flag
@guiverc it is fully updated, the grep on hold returns nothing.
guiverc avatar
cn flag
Please provide `apt-cache policy libpulse-dev` but you didn't provide architecture (64bits is vague; which 64-bit architecture) as package version can vary on architecture I note in CLI queries for *impish*.
Bram avatar
cn flag
@guiverc thanks! See update. Why does the dev want a very specific version? Did libpulse and libpulse-dev get out of sync, where one got a revision bump, and one did not? (In the repo.) I have no non-ubuntu entries in my apt sources.
guiverc avatar
cn flag
I'm assuming this is clear; but do you have any holds? (does anything show if you `apt-mark showhold`). The `apt-cache policy` shows the newer package is found & available (with a **phased 20%**) but sorry I've not taken enough notice of phasing (Ubuntu Community Hub has some workarounds if that's the issue; it came in with 21.04)
Bram avatar
cn flag
What does it mean if `apt-cache policy` marks a package with `***`?
guiverc avatar
cn flag
The '***' tells you that is the package your system is using, has installed.
guiverc avatar
cn flag
Thank you for taking the time to report this bug and helping to make Ubuntu better. The Ubuntu Foundations team will fix the issue when they can. https://bugs.launchpad.net/launchpad/+bug/1929082 (*I realize you'll already be aware of this; it's for other readers as well...*)
Score:2
us flag

"(phased 20%)"

see https://wiki.ubuntu.com/PhasedUpdates https://wiki.ubuntu.com/ErrorTracker/PhasedUpdates

You can wait until the phasing period is over (currently on 50%) or install the package providing the version numbers:

Either

sudo apt install libpulse-dev=1:15.0+dfsg1-1ubuntu2 libpulse0=1:15.0+dfsg1-1ubuntu2 libpulse-mainloop-glib0=1:15.0+dfsg1-1ubuntu2

or

sudo apt install libpulse-dev=1:15.0+dfsg1-1ubuntu2.2 libpulse0=1:15.0+dfsg1-1ubuntu2.2 libpulse-mainloop-glib0=1:15.0+dfsg1-1ubuntu2.2

This seems to be a specific case that may deserve a bug report on Launchpad see also https://answers.launchpad.net/ubuntu/+source/pulseaudio/+question/699828

us flag
I normally use apt, but in such a case, after a brief internet search I would try "sudo aptitude ...". For this libpulse issue, aptitude worked.
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.