Summary: | Make net-im/skype sound work without media-sound/pulseaudio, using media-sound/apulse | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Jauhien Piatlicki (RETIRED) <jauhien> |
Component: | Current packages | Assignee: | Amy Liffey <amynka> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | aparicio99, gentoo, njsg, Sasha.Medvedev, ulm |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 519110, 523498 | ||
Bug Blocks: | |||
Attachments: |
skype-4.3.0.37-r1.ebuild.patch
skype-4.3.0.37-r1.ebuild.patch Depend on !apulse? conditional only for soundlibs |
Description
Jauhien Piatlicki (RETIRED)
2014-09-30 22:01:15 UTC
Created attachment 385898 [details, diff] skype-4.3.0.37-r1.ebuild.patch I have skype working with ALSA on x86 using apulse (https://github.com/jauhien/jauhien-overlay/blob/master/media-sound/apulse/apulse-0.1.1.ebuild) Patch is attached. @Amy Winston: please, review the patch. I will add apulse package to the tree in a while. For x86 everything works ok for me. For amd64 apulse USE should be masked until bug 519110 is fixed in multilib QT is imported into the tree. Created attachment 385916 [details, diff]
skype-4.3.0.37-r1.ebuild.patch
A new variant of patch: make apulse and pulseaudio USEs mutually exclusive.
Patch integrated.
> 05 Oct 2014; Jauhien Piatlicki <jauhien@gentoo.org> +skype-4.3.0.37-r1.ebuild,
> -skype-4.3.0.37.ebuild, metadata.xml:
> introduce apulse support, bug 524164
apulse USE flag masked for amd64. Bug should stay open until multilib QT is in portage and this USE can be unmasked.
Created attachment 386160 [details, diff]
Depend on !apulse? conditional only for soundlibs
Sound works nicely here if I emerge media-sound/apulse[abi_x86_32], while at the same time I have emul-linux-x86-qtlibs installed. I think that the !asound? conditional is only needed for -soundlibs but not for -xlibs and -qtlibs.
Please consider attached patch. If it can be used it would imply that the asound flag can be unmasked (without the need to wait for qt).
For me emul-linux-x86-qtlibs pulled in also -soundlibs, but may be I had something strange in my system. I will investigate it again and then apply your patch. (In reply to Jauhien Piatlicki from comment #6) > For me emul-linux-x86-qtlibs pulled in also -soundlibs, but may be I had > something strange in my system. Hm, with USE="-abi_x86_32" one will indeed get this dependency chain: emul-linux-x86-qtlibs --> -medialibs --> soundlibs. With USE="abi_x86_32" one doesn't, though. (In reply to Ulrich Müller from comment #5) > [...] it would imply that the asound flag can be unmasked Correction: Since abi_x86_32 is still masked in stable, this unmasking cannot be done. However, the "net-im/skype apulse" mask could be demoted from package.use.mask to package.use.stable.mask. @Ulrich Müller: it seems you are right. Then, please, test it on testing keyworded system and proceed with commiting your changes and moving mask to package.use.stable.mask. I have no complains. I will test also, but later, as at the moment I am busy with other tasks to build new VM with testing Gentoo and I did not figured out how to properly install necessary stuff on the stable system as I get lots of blockings (that's why I ask you to test it on the testing branch). The only thing here: we need make -medialibs to be installed with abi_x86_32, may be add it to dependencies? So user sees, he should switch on this USE. Committed. (I haven't added apulse to package.use.stable.mask because bug 357475 says that skype shouldn't go stable.) (In reply to Jauhien Piatlicki from comment #9) > The only thing here: we need make -medialibs to be installed with > abi_x86_32, may be add it to dependencies? So user sees, he should switch on > this USE. I'd rather not, because -medialibs isn't a real dependency. And I'd expect that most users enable the flag globally by setting ABI_X86 in their make.conf. Can this bug be closed? Hi, changing to multilib is really hell for me. Could apulse block only app-emulation/emul-linux-x86-soundlibs with pulseaudio use flag? Then changing to multilib will not be obligatory, I guess. By the way 0.1.2 release of apulse is available. pulseaudio use flag in *soubdlibs* is for multilib, it does not help in this situation. apulse itself needs multilib, so you have to switch to it to use apulse anyway. I will make version bump in a while. I've tested installation of skype with apulse useflag. Everything is ok so far, except for you have to invest some time in switching to multilib. I think, this bug can be closed. The Qt multilib is still in the overlay, but skype + apulse works with app-emulation/emul-linux-x86-qtlibs equally fine. Nothing more to fix in skype ebuild itself. So how would one continue after reaching this state? rigatoni ~ # emerge -av skype These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] media-sound/apulse-0.1.1 ABI_X86="32 (64) (-x32)" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-baselibs-20140508-r14 USE="development kerberos ldap pam" ABI_X86="-32" 0 KiB [uninstall ] dev-libs/libffi-3.1-r3 USE="-debug -pax_kernel -static-libs {-test}" ABI_X86="32 (64) (-x32)" [uninstall ] sys-libs/zlib-1.2.8-r1 USE="minizip -static-libs" ABI_X86="32 (64) (-x32)" [blocks b ] app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]" is blocking sys-libs/zlib-1.2.8-r1) [ebuild N ] app-emulation/emul-linux-x86-db-20140508-r3 USE="development" ABI_X86="-32" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-xlibs-20140508 USE="(development) opengl" ABI_X86="-32" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-opengl-20140508 USE="development" ABI_X86="-32" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-medialibs-20140508-r6 USE="development" ABI_X86="-32" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-soundlibs-20140508 USE="alsa development -pulseaudio" ABI_X86="-32" 0 KiB [ebuild N ] app-emulation/emul-linux-x86-qtlibs-20140508-r1 USE="development" 0 KiB [ebuild N ] net-im/skype-4.3.0.37-r1 USE="apulse -pax_kernel -pulseaudio (-selinux)" 0 KiB [blocks B ] app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]" is blocking media-libs/alsa-lib-1.0.28) [blocks B ] app-emulation/emul-linux-x86-soundlibs ("app-emulation/emul-linux-x86-soundlibs" is blocking media-sound/apulse-0.1.1) [blocks B ] app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]" is blocking dev-libs/glib-2.40.2, dev-libs/libffi-3.1-r3) Total: 9 packages (9 new, 2 uninstalls), Size of downloads: 0 KiB Conflict: 4 blocks (3 unsatisfied) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (media-sound/apulse-0.1.1:0/0::gentoo, ebuild scheduled for merge) pulled in by media-sound/apulse[abi_x86_32(-)] required by (net-im/skype-4.3.0.37-r1:0/0::gentoo, ebuild scheduled for merge) (app-emulation/emul-linux-x86-baselibs-20140508-r14:0/0::gentoo, ebuild scheduled for merge) pulled in by ~app-emulation/emul-linux-x86-baselibs-20140508 required by (app-emulation/emul-linux-x86-xlibs-20140508:0/0::gentoo, ebuild scheduled for merge) ~app-emulation/emul-linux-x86-baselibs-20140508 required by (app-emulation/emul-linux-x86-qtlibs-20140508-r1:0/0::gentoo, ebuild scheduled for merge) ~app-emulation/emul-linux-x86-baselibs-20140508 required by (app-emulation/emul-linux-x86-db-20140508-r3:0/0::gentoo, ebuild scheduled for merge) ~app-emulation/emul-linux-x86-baselibs-20140508 required by (app-emulation/emul-linux-x86-medialibs-20140508-r6:0/0::gentoo, ebuild scheduled for merge) ~app-emulation/emul-linux-x86-baselibs-20140508[abi_x86_32=] (~app-emulation/emul-linux-x86-baselibs-20140508[-abi_x86_32]) required by (app-emulation/emul-linux-x86-soundlibs-20140508:0/0::gentoo, ebuild scheduled for merge) (media-libs/alsa-lib-1.0.28:0/0::gentoo, installed) pulled in by media-libs/alsa-lib[abi_x86_32(-)] required by (net-im/skype-4.3.0.37-r1:0/0::gentoo, ebuild scheduled for merge) media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] (media-libs/alsa-lib[abi_x86_32(-),abi_x86_64(-)]) required by (media-sound/apulse-0.1.1:0/0::gentoo, ebuild scheduled for merge) (app-emulation/emul-linux-x86-soundlibs-20140508:0/0::gentoo, ebuild scheduled for merge) pulled in by ~app-emulation/emul-linux-x86-soundlibs-20140508 required by (app-emulation/emul-linux-x86-medialibs-20140508-r6:0/0::gentoo, ebuild scheduled for merge) For more information about Blocked Packages, please refer to the following section of the Gentoo Linux x86 Handbook (architecture is irrelevant): http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked One starts by reading the documentation I guess. ) You need to switch on multilib, see https://wiki.gentoo.org/wiki/Skype#apulse and https://wiki.gentoo.org/wiki/Multilib/gx86-multilib. In the last link you'll find how to switch it on. Skype has IUSE=+pulseaudio, still forcing me to turn the flag off for net-im/skype even if USE=pulseaudio is not set on my system and I am setting USE=apulse. Can this be made easier in some way? (In reply to Nuno Silva from comment #17) > Skype has IUSE=+pulseaudio, still forcing me to turn the flag off for > net-im/skype even if USE=pulseaudio is not set on my system and I am setting > USE=apulse. Can this be made easier in some way? Is this difficult to turn the USE off? ) pulseaudio is the recommended default value, supported by the upstream, so I think we should have IUSE=+pulseaudio. It is not difficult, but it sounds confusing that you have to toggle *two* use flags instead of just toggling one, especially when your system is doing *nothing* to require USE=pulseaudio. |