Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 782625 - media-sound/pulseaudio & media-sound/pulseaudio-modules-bt both provide bluetooth libraries
Summary: media-sound/pulseaudio & media-sound/pulseaudio-modules-bt both provide bluet...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-04-13 08:02 UTC by Miroslav Šulc
Modified: 2022-05-29 06:11 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Miroslav Šulc gentoo-dev 2021-04-13 08:02:28 UTC
* Final size of build directory: 54224 KiB (52.9 MiB)
 * Final size of installed tree:   8532 KiB ( 8.3 MiB)
 * This package will overwrite one or more files that may belong to other
 * packages (see list below).
 * 
 * Detected file collision(s):
 * 
 *      /usr/lib64/pulse-13.0/modules/module-bluez5-device.so
 *      /usr/lib64/pulse-13.0/modules/module-bluez5-discover.so
 *      /usr/lib64/pulse-13.0/modules/libbluez5-util.so
 *      /usr/lib64/pulse-13.0/modules/module-bluetooth-policy.so
 *      /usr/lib64/pulse-13.0/modules/module-bluetooth-discover.so
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * media-sound/pulseaudio-modules-bt-1.4:0::gentoo
 *      /usr/lib64/pulse-13.0/modules/libbluez5-util.so
 *      /usr/lib64/pulse-13.0/modules/module-bluetooth-discover.so
 *      /usr/lib64/pulse-13.0/modules/module-bluetooth-policy.so
 *      /usr/lib64/pulse-13.0/modules/module-bluez5-device.so
 *      /usr/lib64/pulse-13.0/modules/module-bluez5-discover.so
 * 
 * Package 'media-sound/pulseaudio-13.0-r1' NOT merged due to file
 * collisions. If necessary, refer to your elog messages for the whole
 * content of the above message.


# equery uses pulseaudio
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for media-sound/pulseaudio-13.0-r1:
 U I
 + + X              : Build the X11 publish module to export PulseAudio information through X11 protocol for clients to make use. Don't enable this flag if you want to use a system wide instance. If unsure, enable this flag. 
 + + abi_x86_32     : 32-bit (x86) libraries
 + + alsa           : Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
 + + alsa-plugin    : Request installing media-plugins/alsa-plugins with PulseAudio plugin enabled. This ensures that clients supporting ALSA only will use PulseAudio. 
 + + asyncns        : Use libasyncns for asynchronous name resolution. 
 + - bluetooth      : Enable Bluetooth Support
 + + caps           : Use Linux capabilities library to control privilege
 + + dbus           : Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc)
 - - doc            : Build the doxygen-described API documentation. 
 + + elogind        : Use sys-auth/elogind for giving each session a PA client
 - - equalizer      : Enable the equalizer module (requires sci-libs/fftw). 
 - - gconf          : Ensure gnome-base/gconf is present for pulseaudio GConf to GSettings module automatic migration (keeping the user configuration) 
 - - gdbm           : Use sys-libs/gdbm to store PulseAudio databases. Recommended for desktop usage. This flag causes the whole package to be licensed under GPL-2 or later. 
 + + glib           : Add support to dev-libs/glib-based mainloop for the libpulse client library, to allow using libpulse on glib-based programs. Build the GSettings PA module. 
 + + gtk            : Add support for x11-libs/gtk+ (The GIMP Toolkit)
 + + ipv6           : Add support for IP version 6
 + + jack           : Add support for the JACK Audio Connection Kit
 + + libsamplerate  : Build with support for converting sample rates using libsamplerate
 - - lirc           : Add support for lirc (Linux's Infra-Red Remote Control)
 - - native-headset : Build with native HSP backend for bluez 5. 
 - - ofono-headset  : Build with oFono HFP backend for bluez 5, requires net-misc/ofono. 
 - - orc            : Use dev-lang/orc for just-in-time optimization of array operations
 + + qt5            : Add support for the Qt 5 application and UI framework
 - - realtime       : Makes PulseAudio use RealtimeKit (sys-auth/rtkit) to get real-time priority while running. 
 - - sox            : Add support for Sound eXchange (SoX)
 + + ssl            : Use dev-libs/openssl to provide support for RAOP (AirPort) streaming. 
 - - systemd        : Build with sys-apps/systemd support to replace standalone ConsoleKit. 
 - - tcpd           : Add support for TCP wrappers
 - - test           : Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)
 + + udev           : Enable virtual/udev integration (device discovery, power and storage device support, etc)
 + + webrtc-aec     : Uses the webrtc.org AudioProcessing library for enhancing VoIP calls greatly in applications that support it by performing acoustic echo cancellation, analog gain control, noise suppression and other processing. 
 - - zeroconf       : Support for DNS Service Discovery (DNS-SD)


# equery depends pulseaudio-modules-bt
 * These packages depend on pulseaudio-modules-bt:
net-wireless/blueman-2.1.4 (pulseaudio ? media-sound/pulseaudio-modules-bt)
Comment 1 Pacho Ramos gentoo-dev 2021-04-13 19:37:47 UTC
That shouldn't happen with pulseaudio[-bluetooth]... that is what is forced as depend :/
Comment 2 Miroslav Šulc gentoo-dev 2021-04-14 05:07:14 UTC
in my case i set bluetooth use flag globally and no checks in ebuilds caught that, it fails only when the conflict is detected.
Comment 3 Thomas Deutschmann (RETIRED) gentoo-dev 2021-06-21 11:26:20 UTC
I think you have to add a soft blocker: Yes, you tell PM that you need pulseaudio[-bluetooth] but when coming from pulseaudio[bluetooth] where pulseaudio package would be re-compiled after pulseaudio-modules-bt without USE=bluetooth, you will get a conflict like that. Adding a soft blocker would tell PM to ignore the collision because a cleanup will happen afterwards (in the same run).
Comment 4 Miroslav Šulc gentoo-dev 2021-06-21 11:49:54 UTC
why do we have the same feature provided by two packages? and what if one package depends on pulseaudio-modules-bt and another one on pulseaudio[bluetooth]?
Comment 5 Pacho Ramos gentoo-dev 2021-06-21 13:14:32 UTC
They provide different codecs, media-sound/pulseaudio-modules-bt will be obsolete with pipewire, and I think that also with pulseaudio-14.0, that support them
Comment 6 Larry the Git Cow gentoo-dev 2022-01-03 23:36:24 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49bf3ef9457c00bf8fad1499bafe23ddcf5c93fe

commit 49bf3ef9457c00bf8fad1499bafe23ddcf5c93fe
Author:     Pacho Ramos <pacho@gentoo.org>
AuthorDate: 2022-01-03 23:36:17 +0000
Commit:     Pacho Ramos <pacho@gentoo.org>
CommitDate: 2022-01-03 23:36:17 +0000

    media-sound/pulseaudio-modules-bt: Update pulseaudio dependencies
    
    Closes: https://bugs.gentoo.org/830351
    Bug: https://bugs.gentoo.org/782625
    Package-Manager: Portage-3.0.30, Repoman-3.0.3
    Signed-off-by: Pacho Ramos <pacho@gentoo.org>

 .../pulseaudio-modules-bt-1.4-r2.ebuild            | 82 ++++++++++++++++++++++
 1 file changed, 82 insertions(+)
Comment 7 APN-Pucky 2022-02-02 18:46:48 UTC
I encountered the same error with pulseaudio-15.
I think this is due to the pulseaudio-daemon[bluetooth] flag.

 * Messages for package media-sound/pulseaudio-modules-bt-1.4-r2:

 * This package will overwrite one or more files that may belong to other
 * packages (see list below). You can use a command such as `portageq
 * owners / <filename>` to identify the installed package that owns a
 * file. If portageq reports that only one package owns a file then do
 * NOT file a bug report. A bug report is only useful if it identifies at
 * least two or more packages that are known to install the same file(s).
 * If a collision occurs and you can not explain where the file came from
 * then you should simply ignore the collision since there is not enough
 * information to determine if a real problem exists. Please do NOT file
 * a bug report at https://bugs.gentoo.org/ unless you report exactly
 * which two packages install the same file(s). See
 * https://wiki.gentoo.org/wiki/Knowledge_Base:Blockers for tips on how
 * to solve the problem. And once again, please do NOT file a bug report
 * unless you have completely understood the above message.
 * 
 * Detected file collision(s):
 * 
 * 	/usr/lib64/pulseaudio/modules/module-bluetooth-discover.so
 * 	/usr/lib64/pulseaudio/modules/libbluez5-util.so
 * 	/usr/lib64/pulseaudio/modules/module-bluez5-discover.so
 * 	/usr/lib64/pulseaudio/modules/module-bluetooth-policy.so
 * 	/usr/lib64/pulseaudio/modules/module-bluez5-device.so
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * media-sound/pulseaudio-daemon-15.0:0::gentoo
 * 	/usr/lib64/pulseaudio/modules/libbluez5-util.so
 * 	/usr/lib64/pulseaudio/modules/module-bluetooth-discover.so
 * 	/usr/lib64/pulseaudio/modules/module-bluetooth-policy.so
 * 	/usr/lib64/pulseaudio/modules/module-bluez5-device.so
 * 	/usr/lib64/pulseaudio/modules/module-bluez5-discover.so
 * 
 * Package 'media-sound/pulseaudio-modules-bt-1.4-r2' NOT merged due to
 * file collisions. If necessary, refer to your elog messages for the
 * whole content of the above message.
Comment 8 Igor V. Kovalenko 2022-03-18 05:30:33 UTC
Could you please check this again with updated portage tree?
I think available pulseaudio-modules-bt is now properly asking to disable bluetooth on both pulseaudio and pulseaudio-deamon packages.