From e6ba529df30e3fc9dfdf55ec5797f2f764df6e54 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 3 Dec 2022 08:59:05 +0000 Subject: gentoo auto-resync : 03:12:2022 - 08:59:05 --- media-sound/pulseaudio-daemon/Manifest | 3 +- .../pulseaudio-16.1-move-qpaeq-to-daemon.patch | 36 ++ .../pulseaudio-daemon-16.1-r1.ebuild | 395 -------------------- .../pulseaudio-daemon-16.1-r2.ebuild | 396 +++++++++++++++++++++ 4 files changed, 434 insertions(+), 396 deletions(-) create mode 100644 media-sound/pulseaudio-daemon/files/pulseaudio-16.1-move-qpaeq-to-daemon.patch delete mode 100644 media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r1.ebuild create mode 100644 media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r2.ebuild (limited to 'media-sound/pulseaudio-daemon') diff --git a/media-sound/pulseaudio-daemon/Manifest b/media-sound/pulseaudio-daemon/Manifest index 67d4d677fdb7..e4e6260dffc3 100644 --- a/media-sound/pulseaudio-daemon/Manifest +++ b/media-sound/pulseaudio-daemon/Manifest @@ -2,11 +2,12 @@ AUX enable-autospawn.conf 65 BLAKE2B 47e57076b19000ca3c57f0368e453198131c41a5a9c AUX pulseaudio-16.0-optional-module-console-kit.patch 3077 BLAKE2B 3b8abc67478f6c8848a24788bdceeb5bce868bf5214a092c3abbd39a3102679e4b390e56231de0559c8389730a2a75ba21bf4d9f9d942792589c6db66d6eb04d SHA512 bec1a747593d9130bb8cfb05b0894e467c953264879f2a856a420b07ee688640ec2279c136daa825b21e0e7e3bfc3aa1e333487a776d1c7ffb9a6d0293a0502b AUX pulseaudio-16.1-module-combine-sink-load-crash.patch 1052 BLAKE2B 09fa471cb40a83bd1969795ed8f7f3b1418efb99e1d79e6135785d4e54f0ebcb44813cf584067f4462b800e18661a508a120521e606687e2a49836020eb0ccf3 SHA512 3817f5267fd8287a7be4004189432601128c10c592fe54e4bdbdbb1a6ddd2fadede82dab047ea6693ef81cb04280e1fa4968d883ce7e03c2646145488f36d52a AUX pulseaudio-16.1-module-combine-sink-unload-crash.patch 802 BLAKE2B 4c82bf606bb6b7123d53dac093044e9d74328f7eef616ad2da4a2c37e7dca3223e2ecc1bafd7dfc4b363c5bff20dd915a5f328236389b6dae37a74688fe886e0 SHA512 4cb64be8a41e16cf854d992416bdc25b327ab8adc706e091e20fc6bf35c7161ed798b611db2060a14af5974a987f10931f9086b45bb0b95cd82010ce952e0c80 +AUX pulseaudio-16.1-move-qpaeq-to-daemon.patch 1029 BLAKE2B f7695aff795d0b0828d95eaba7b059492f33315a3086fb6cfd63e7de011c0416a5ca56e26932ac7c6ee3784dc63ad0b5918bedcf23bc1d8d3fbdfb8df72c78d1 SHA512 0ba164221dca646728ea7ecbb26fa8d00b65cb45e4dc71a0298e80349548dd1adca2142b26dba138618b27f71c955186d255a45b1be790d8b9da43d60817daa4 AUX pulseaudio.conf.d 151 BLAKE2B 99b185b9353259f37f3396c6f2bb56b80cac0159c9c5d06af4b298ad71d9c577dd6b3f0d9097fc95184b14193d0d55252987465ebd93bd0005849a68ce9b428d SHA512 f97ed431e371e43d297b099952bf1e897b243a822183524b8e3ea17e888c08590bb3793e195bc22e3254eae7f2e1fa00204a752638746c4dde825a423f08c24b AUX pulseaudio.init.d-5 2224 BLAKE2B d7710b77b209391016e9f84b574cdf70636904d7f54caf9297357ebee97e8ae10c54119521ecad99fbef5f1ad341128b06816f8c733faa29d9c44fa8c435008b SHA512 a11d02fd1c6672a7f022e6ef3e3ad8e3a7f2bf50257c38573db0823415c990021a7bf29b1e194d3d9c8a59464673958604086ef519313a4e3a6bd79071397f29 AUX pulseaudio.service 227 BLAKE2B f58fa701152e84f4d52426f6f76b5a01a1a315d09e5fb8e9e57860b44dc63b78b3f1c1629380b4345c53b003c677f729b3959419e8488e37607c56d6a700626a SHA512 567663b231fe7c2682b08b1059cdad1fcb3c4cb01c1b24aed9afb6fb767b30f250b78bbbed48aadfb06c6d1a4963a6db24877d79a1d36c4be2a128b479c086d6 AUX pulseaudio.tmpfiles 36 BLAKE2B 4fe7c88fb35f561b0eb756146db17e37201126b5d7f906c88cdc778c6191f17c799f1db072f09d5a384485830e4d33266c224955bad22081255544642399b2f6 SHA512 f040850d81030ef04e1aa368d333a1ae1b7238adef5772280fc344c3068262d5ab8c9f3edb92db9c443f9d7d21abb27583ea1efc51ed733bbfa43e2edc68dde1 DIST pulseaudio-16.1.tar.xz 1545596 BLAKE2B 535706abcea2cae39834b23c8bdc37f71b0e633de2d8e43ea4425da97a850b57c2f980c318681cbc86cf1e746200609dad41f8b96ecf4568f86d94aa6831c9a1 SHA512 33b0b4292f05e0882f3ec822cf5720414bb34c523d80fe287b9740d6be219787c562e8024c9b0d9e2ee010771ca72c7ae4f27df1bbef9c9cb6bb6a23cbcc412f -EBUILD pulseaudio-daemon-16.1-r1.ebuild 12321 BLAKE2B 6fdad20a3e41c8e84171f1e284ea831484a8f4464181985d06df0cc19eacfeac7fefa024e026ab9a9517b8719062738edf56d80d653537022d8db0d5d24f061f SHA512 5bbe66e7eb2ddcf2b1a24e95c664cc93ad7bc78bebcc8f24fc603fcb8888cb9850e1bdcde63748efc8825d0e0a5fdd90ba115cd6c48018193300ea2a03a880fc +EBUILD pulseaudio-daemon-16.1-r2.ebuild 12379 BLAKE2B 69f93205881e804f28714d595cadd4aa053742e10b76f685e555a15c7b679d85a2ce9adf639c9db8246982a92bd40b3b18e0cb1180e048f996ffa5e7b6d3a47f SHA512 4551113e5605f89fb76c2d2d0e6f4b312bf222b80843e470941a345fa8b862cbf00b2836e91c88e6490dcd09e69b30565b52e85713fc5aba5b39ad3d7c835636 EBUILD pulseaudio-daemon-16.1.ebuild 12176 BLAKE2B 9191d042a854771890e77a7824365f10c84d4a3fb96d755ec19d4ee63b4074b725712ca4ee48a45453fd59ed931438bf2e88a9b835acbf15bbf5947beade2a51 SHA512 301dad95a0ce492684dddca6d1b4700e1e2dd4a9c607e26fd802cb63f2685748c68848d43aaeaed050897208ad3e83858ffab47a61f90856397fb6d60eabac0e MISC metadata.xml 3570 BLAKE2B 24d7b24a68f5e832708d9879769f55ec4cf146c47a41b5fa0ff33f63a5a9945736e227c6a6afa106f964fd91eb3b0ee441203c92f312ed835ef2197979b6fda9 SHA512 34aa5503ad5483eeff2f7c4713d96322dedbdd56b7d52a17ba0658aba24aef58239d5ee1943a276555c2508fd3d5e18639ec6417044adad512693fa6c673c5df diff --git a/media-sound/pulseaudio-daemon/files/pulseaudio-16.1-move-qpaeq-to-daemon.patch b/media-sound/pulseaudio-daemon/files/pulseaudio-16.1-move-qpaeq-to-daemon.patch new file mode 100644 index 000000000000..d3943bf10a49 --- /dev/null +++ b/media-sound/pulseaudio-daemon/files/pulseaudio-16.1-move-qpaeq-to-daemon.patch @@ -0,0 +1,36 @@ +commit 07a9fcefbab049d66cb174ca2c9b91fecc444c5b +Author: Igor V. Kovalenko +Date: Sat Jul 9 09:12:38 2022 +0300 + + build-sys: meson: Move qpaeq to daemon build + + Equalizer control requires server modules only available when daemon is built. + Move qpaeq script to be installed together with daemon. + + Part-of: + +diff --git a/src/utils/meson.build b/src/utils/meson.build +index 28e1fc10a..8496d0bc5 100644 +--- a/src/utils/meson.build ++++ b/src/utils/meson.build +@@ -72,6 +72,10 @@ if get_option('daemon') + c_args : pa_c_args, + ) + endif ++ ++ if dbus_dep.found() and fftw_dep.found() ++ install_data('qpaeq', install_dir : bindir) ++ endif + endif + + if get_option('client') +@@ -117,9 +121,5 @@ if get_option('client') + ) + endif + +- if dbus_dep.found() and fftw_dep.found() +- install_data('qpaeq', install_dir : bindir) +- endif +- + install_data('pa-info', install_dir : bindir) + endif diff --git a/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r1.ebuild b/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r1.ebuild deleted file mode 100644 index 8ccca2d552d5..000000000000 --- a/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r1.ebuild +++ /dev/null @@ -1,395 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -MY_PV="${PV/_pre*}" -MY_P="pulseaudio-${MY_PV}" -inherit bash-completion-r1 gnome2-utils meson optfeature systemd tmpfiles udev - -DESCRIPTION="Daemon component of PulseAudio (networked sound server)" -HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/" - -if [[ ${PV} = 9999 ]]; then - inherit git-r3 - EGIT_BRANCH="master" - EGIT_REPO_URI="https://gitlab.freedesktop.org/pulseaudio/pulseaudio" -else - SRC_URI="https://freedesktop.org/software/pulseaudio/releases/${MY_P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" -fi - -S="${WORKDIR}/${MY_P}" - -# libpulse-simple and libpulse link to libpulse-core; this is daemon's -# library and can link to gdbm and other GPL-only libraries. In this -# cases, we have a fully GPL-2 package. Leaving the rest of the -# GPL-forcing USE flags for those who use them. -LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )" - -SLOT="0" - -# +alsa-plugin as discussed in bug #519530 -# TODO: Find out why webrtc-aec is + prefixed - there's already the always available speexdsp-aec -# NOTE: The current ebuild sets +X almost certainly just for the pulseaudio.desktop file -IUSE="+alsa +alsa-plugin aptx +asyncns bluetooth dbus elogind equalizer fftw +gdbm +glib gstreamer jack ldac lirc -ofono-headset +orc oss selinux sox ssl systemd system-wide tcpd test +udev valgrind +webrtc-aec +X zeroconf" - -RESTRICT="!test? ( test )" - -# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac -# Basically all IUSE are either ${MULTILIB_USEDEP} for client libs or they belong under !daemon () -# We duplicate alsa-plugin, {native,ofono}-headset under daemon to let users deal with them at once -REQUIRED_USE=" - ?? ( elogind systemd ) - alsa-plugin? ( alsa ) - aptx? ( bluetooth ) - bluetooth? ( dbus ) - equalizer? ( dbus ) - ldac? ( bluetooth ) - ofono-headset? ( bluetooth ) - udev? ( || ( alsa oss ) ) - zeroconf? ( dbus ) -" - -# NOTE: -# - libpcre needed in some cases, bug #472228 -# - media-libs/speexdsp is providing echo canceller implementation and used in resampler -# TODO: libatomic_ops is only needed on some architectures and conditions, and then at runtime too -gstreamer_deps=" - media-libs/gst-plugins-base - >=media-libs/gstreamer-1.14 -" -COMMON_DEPEND=" - ~media-libs/libpulse-${PV}[dbus?,glib?,systemd?,valgrind?,X?] - dev-libs/libatomic_ops - >=media-libs/libsndfile-1.0.20 - >=media-libs/speexdsp-1.2 - || ( - elibc_glibc? ( virtual/libc ) - dev-libs/libpcre:3 - ) - alsa? ( >=media-libs/alsa-lib-1.0.24 ) - aptx? ( ${gstreamer_deps} ) - asyncns? ( >=net-libs/libasyncns-0.1 ) - bluetooth? ( - >=net-wireless/bluez-5 - media-libs/sbc - ) - dev-libs/libltdl - sys-kernel/linux-headers - >=sys-libs/libcap-2.22-r2 - dbus? ( >=sys-apps/dbus-1.4.12 ) - elogind? ( sys-auth/elogind ) - equalizer? ( - sci-libs/fftw:3.0= - ) - fftw? ( - sci-libs/fftw:3.0= - ) - gdbm? ( sys-libs/gdbm:= ) - glib? ( >=dev-libs/glib-2.28.0:2 ) - gstreamer? ( - ${gstreamer_deps} - >=dev-libs/glib-2.26.0:2 - ) - jack? ( virtual/jack ) - ldac? ( ${gstreamer_deps} ) - lirc? ( app-misc/lirc ) - ofono-headset? ( >=net-misc/ofono-1.13 ) - orc? ( >=dev-lang/orc-0.4.15 ) - selinux? ( sec-policy/selinux-pulseaudio ) - sox? ( >=media-libs/soxr-0.1.1 ) - ssl? ( dev-libs/openssl:= ) - systemd? ( sys-apps/systemd:= ) - tcpd? ( sys-apps/tcp-wrappers ) - udev? ( >=virtual/udev-143[hwdb(+)] ) - valgrind? ( dev-util/valgrind ) - webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2:0 ) - X? ( - >=x11-libs/libxcb-1.6 - x11-libs/libICE - x11-libs/libSM - >=x11-libs/libX11-1.4.0 - >=x11-libs/libXtst-1.0.99.2 - ) - zeroconf? ( >=net-dns/avahi-0.6.12[dbus] ) - ! "${T}"/pulseaudio \ - || die - - doinitd "${T}"/pulseaudio - - systemd_dounit "${FILESDIR}"/pulseaudio.service - - # We need /var/run/pulse, bug 442852 - newtmpfiles "${FILESDIR}"/pulseaudio.tmpfiles pulseaudio.conf - else - # Prevent warnings when system-wide is not used, bug 447694 - if use dbus; then - rm "${ED}"/etc/dbus-1/system.d/pulseaudio-system.conf || die - fi - fi - - if use zeroconf; then - sed -i \ - -e '/module-zeroconf-publish/s:^#::' \ - "${ED}/etc/pulse/default.pa" \ - || die - fi - - # Only enable autospawning pulseaudio daemon on systems without systemd - if ! use systemd; then - insinto /etc/pulse/client.conf.d - newins "${FILESDIR}/enable-autospawn.conf" "enable-autospawn.conf" - fi - - find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die -} - -pkg_postinst() { - gnome2_schemas_update - - use udev && udev_reload - - if use system-wide; then - tmpfiles_process "pulseaudio.conf" - - elog "You have enabled the 'system-wide' USE flag for pulseaudio." - elog "This mode should only be used on headless servers, embedded systems," - elog "or thin clients. It will usually require manual configuration, and is" - elog "incompatible with many expected pulseaudio features." - elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED." - elog "" - elog "For more information, see" - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/" - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/" - elog " https://wiki.gentoo.org/wiki/PulseAudio#Headless_server" - elog "" - fi - - if use equalizer; then - elog "You will need to load some extra modules to make qpaeq work." - elog "You can do that by adding the following two lines in" - elog "/etc/pulse/default.pa and restarting pulseaudio:" - elog "load-module module-equalizer-sink" - elog "load-module module-dbus-protocol" - elog "" - fi - - if use bluetooth; then - elog "You have enabled bluetooth USE flag for pulseaudio. Daemon will now handle" - elog "bluetooth Headset (HSP HS and HSP AG) and Handsfree (HFP HF) profiles using" - elog "native headset backend by default. This can be selectively disabled" - elog "via runtime configuration arguments to module-bluetooth-discover" - elog "in /etc/pulse/default.pa" - elog "To disable HFP HF append enable_native_hfp_hf=false" - elog "To disable HSP HS append enable_native_hsp_hs=false" - elog "To disable HSP AG append headset=auto or headset=ofono" - elog "(note this does NOT require enabling USE ofono)" - elog "" - fi - - if use ofono-headset; then - elog "You have enabled both native and ofono headset profiles. The runtime decision" - elog "which to use is done via the 'headset' argument of module-bluetooth-discover." - elog "" - fi - - if use gstreamer; then - elog "GStreamer-based RTP implementation modile enabled." - elog "To use OPUS payload install media-plugins/gst-plugins-opus" - elog "and add enable_opus=1 argument to module-rtp-send" - elog "" - fi - - if use systemd; then - elog "Pulseaudio autospawn by client library is no longer enabled when systemd is available." - elog "It's recommended to start pulseaudio via its systemd user units:" - elog "" - elog " systemctl --user enable pulseaudio.service pulseaudio.socket" - elog "" - elog "Root user can change system default configuration for all users:" - elog "" - elog " systemctl --global enable pulseaudio.service pulseaudio.socket" - elog "" - elog "If you would like to enable autospawn by client library, edit autospawn flag in /etc/pulse/client.conf like this:" - elog "" - elog " autospawn = yes" - elog "" - elog "The change from autospawn to user units will take effect after restarting." - elog "" - fi - - optfeature_header "PulseAudio can be enhanced by installing the following:" - use equalizer && optfeature "using the qpaeq script" dev-python/PyQt5[dbus,widgets] - use dbus && optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit -} - -pkg_postrm() { - gnome2_schemas_update - use udev && udev_reload -} diff --git a/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r2.ebuild b/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r2.ebuild new file mode 100644 index 000000000000..a358f8c2235d --- /dev/null +++ b/media-sound/pulseaudio-daemon/pulseaudio-daemon-16.1-r2.ebuild @@ -0,0 +1,396 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +MY_PV="${PV/_pre*}" +MY_P="pulseaudio-${MY_PV}" +inherit bash-completion-r1 gnome2-utils meson optfeature systemd tmpfiles udev + +DESCRIPTION="Daemon component of PulseAudio (networked sound server)" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/" + +if [[ ${PV} = 9999 ]]; then + inherit git-r3 + EGIT_BRANCH="master" + EGIT_REPO_URI="https://gitlab.freedesktop.org/pulseaudio/pulseaudio" +else + SRC_URI="https://freedesktop.org/software/pulseaudio/releases/${MY_P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +S="${WORKDIR}/${MY_P}" + +# libpulse-simple and libpulse link to libpulse-core; this is daemon's +# library and can link to gdbm and other GPL-only libraries. In this +# cases, we have a fully GPL-2 package. Leaving the rest of the +# GPL-forcing USE flags for those who use them. +LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )" + +SLOT="0" + +# +alsa-plugin as discussed in bug #519530 +# TODO: Find out why webrtc-aec is + prefixed - there's already the always available speexdsp-aec +# NOTE: The current ebuild sets +X almost certainly just for the pulseaudio.desktop file +IUSE="+alsa +alsa-plugin aptx +asyncns bluetooth dbus elogind equalizer fftw +gdbm +glib gstreamer jack ldac lirc +ofono-headset +orc oss selinux sox ssl systemd system-wide tcpd test +udev valgrind +webrtc-aec +X zeroconf" + +RESTRICT="!test? ( test )" + +# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac +# Basically all IUSE are either ${MULTILIB_USEDEP} for client libs or they belong under !daemon () +# We duplicate alsa-plugin, {native,ofono}-headset under daemon to let users deal with them at once +REQUIRED_USE=" + ?? ( elogind systemd ) + alsa-plugin? ( alsa ) + aptx? ( bluetooth ) + bluetooth? ( dbus ) + equalizer? ( dbus ) + ldac? ( bluetooth ) + ofono-headset? ( bluetooth ) + udev? ( || ( alsa oss ) ) + zeroconf? ( dbus ) +" + +# NOTE: +# - libpcre needed in some cases, bug #472228 +# - media-libs/speexdsp is providing echo canceller implementation and used in resampler +# TODO: libatomic_ops is only needed on some architectures and conditions, and then at runtime too +gstreamer_deps=" + media-libs/gst-plugins-base + >=media-libs/gstreamer-1.14 +" +COMMON_DEPEND=" + ~media-libs/libpulse-${PV}[dbus?,glib?,systemd?,valgrind?,X?] + dev-libs/libatomic_ops + >=media-libs/libsndfile-1.0.20 + >=media-libs/speexdsp-1.2 + || ( + elibc_glibc? ( virtual/libc ) + dev-libs/libpcre:3 + ) + alsa? ( >=media-libs/alsa-lib-1.0.24 ) + aptx? ( ${gstreamer_deps} ) + asyncns? ( >=net-libs/libasyncns-0.1 ) + bluetooth? ( + >=net-wireless/bluez-5 + media-libs/sbc + ) + dev-libs/libltdl + sys-kernel/linux-headers + >=sys-libs/libcap-2.22-r2 + dbus? ( >=sys-apps/dbus-1.4.12 ) + elogind? ( sys-auth/elogind ) + equalizer? ( + sci-libs/fftw:3.0= + ) + fftw? ( + sci-libs/fftw:3.0= + ) + gdbm? ( sys-libs/gdbm:= ) + glib? ( >=dev-libs/glib-2.28.0:2 ) + gstreamer? ( + ${gstreamer_deps} + >=dev-libs/glib-2.26.0:2 + ) + jack? ( virtual/jack ) + ldac? ( ${gstreamer_deps} ) + lirc? ( app-misc/lirc ) + ofono-headset? ( >=net-misc/ofono-1.13 ) + orc? ( >=dev-lang/orc-0.4.15 ) + selinux? ( sec-policy/selinux-pulseaudio ) + sox? ( >=media-libs/soxr-0.1.1 ) + ssl? ( dev-libs/openssl:= ) + systemd? ( sys-apps/systemd:= ) + tcpd? ( sys-apps/tcp-wrappers ) + udev? ( >=virtual/udev-143[hwdb(+)] ) + valgrind? ( dev-util/valgrind ) + webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2:0 ) + X? ( + >=x11-libs/libxcb-1.6 + x11-libs/libICE + x11-libs/libSM + >=x11-libs/libX11-1.4.0 + >=x11-libs/libXtst-1.0.99.2 + ) + zeroconf? ( >=net-dns/avahi-0.6.12[dbus] ) + ! "${T}"/pulseaudio \ + || die + + doinitd "${T}"/pulseaudio + + systemd_dounit "${FILESDIR}"/pulseaudio.service + + # We need /var/run/pulse, bug 442852 + newtmpfiles "${FILESDIR}"/pulseaudio.tmpfiles pulseaudio.conf + else + # Prevent warnings when system-wide is not used, bug 447694 + if use dbus; then + rm "${ED}"/etc/dbus-1/system.d/pulseaudio-system.conf || die + fi + fi + + if use zeroconf; then + sed -i \ + -e '/module-zeroconf-publish/s:^#::' \ + "${ED}/etc/pulse/default.pa" \ + || die + fi + + # Only enable autospawning pulseaudio daemon on systems without systemd + if ! use systemd; then + insinto /etc/pulse/client.conf.d + newins "${FILESDIR}/enable-autospawn.conf" "enable-autospawn.conf" + fi + + find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die +} + +pkg_postinst() { + gnome2_schemas_update + + use udev && udev_reload + + if use system-wide; then + tmpfiles_process "pulseaudio.conf" + + elog "You have enabled the 'system-wide' USE flag for pulseaudio." + elog "This mode should only be used on headless servers, embedded systems," + elog "or thin clients. It will usually require manual configuration, and is" + elog "incompatible with many expected pulseaudio features." + elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED." + elog "" + elog "For more information, see" + elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/" + elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/" + elog " https://wiki.gentoo.org/wiki/PulseAudio#Headless_server" + elog "" + fi + + if use equalizer; then + elog "You will need to load some extra modules to make qpaeq work." + elog "You can do that by adding the following two lines in" + elog "/etc/pulse/default.pa and restarting pulseaudio:" + elog "load-module module-equalizer-sink" + elog "load-module module-dbus-protocol" + elog "" + fi + + if use bluetooth; then + elog "You have enabled bluetooth USE flag for pulseaudio. Daemon will now handle" + elog "bluetooth Headset (HSP HS and HSP AG) and Handsfree (HFP HF) profiles using" + elog "native headset backend by default. This can be selectively disabled" + elog "via runtime configuration arguments to module-bluetooth-discover" + elog "in /etc/pulse/default.pa" + elog "To disable HFP HF append enable_native_hfp_hf=false" + elog "To disable HSP HS append enable_native_hsp_hs=false" + elog "To disable HSP AG append headset=auto or headset=ofono" + elog "(note this does NOT require enabling USE ofono)" + elog "" + fi + + if use ofono-headset; then + elog "You have enabled both native and ofono headset profiles. The runtime decision" + elog "which to use is done via the 'headset' argument of module-bluetooth-discover." + elog "" + fi + + if use gstreamer; then + elog "GStreamer-based RTP implementation modile enabled." + elog "To use OPUS payload install media-plugins/gst-plugins-opus" + elog "and add enable_opus=1 argument to module-rtp-send" + elog "" + fi + + if use systemd; then + elog "Pulseaudio autospawn by client library is no longer enabled when systemd is available." + elog "It's recommended to start pulseaudio via its systemd user units:" + elog "" + elog " systemctl --user enable pulseaudio.service pulseaudio.socket" + elog "" + elog "Root user can change system default configuration for all users:" + elog "" + elog " systemctl --global enable pulseaudio.service pulseaudio.socket" + elog "" + elog "If you would like to enable autospawn by client library, edit autospawn flag in /etc/pulse/client.conf like this:" + elog "" + elog " autospawn = yes" + elog "" + elog "The change from autospawn to user units will take effect after restarting." + elog "" + fi + + optfeature_header "PulseAudio can be enhanced by installing the following:" + use equalizer && optfeature "using the qpaeq script" dev-python/PyQt5[dbus,widgets] + use dbus && optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit +} + +pkg_postrm() { + gnome2_schemas_update + use udev && udev_reload +} -- cgit v1.2.3