diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2021-10-13 23:00:23 +0200 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2021-10-13 23:11:40 +0200 |
commit | c800486441999e00c2e17300e7af2fe1e844dbc0 (patch) | |
tree | 6ede87b9d3772d2d8f1aa5af232ca450bf2180c0 /media-video | |
parent | www-apps/element: 1.9.2 bump (diff) | |
download | gentoo-c800486441999e00c2e17300e7af2fe1e844dbc0.tar.gz gentoo-c800486441999e00c2e17300e7af2fe1e844dbc0.tar.bz2 gentoo-c800486441999e00c2e17300e7af2fe1e844dbc0.zip |
media-video/pipewire: Drop old
Overshadowed by multiple newer versions.
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'media-video')
8 files changed, 0 insertions, 1193 deletions
diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest index a76808c01975..b4f40211f2c8 100644 --- a/media-video/pipewire/Manifest +++ b/media-video/pipewire/Manifest @@ -1,8 +1,4 @@ DIST pipewire-0.3.30.tar.gz 1540950 BLAKE2B 69b35743e3ad9a8caf68d9bb16cf395203efed6c3046b3f4ea33bbcdd6649f5d425d813042c12396a7cd5ff4e8ed91dbc395a96fe55935ad50f9c3f3918b0407 SHA512 ec525e0fb7e5c5313245fcc745b971fd7d4a1caa7ab9fe1fa38dc20d50f03e5969197e86b60659971676bec0f79aa7b7951c8209bfe9565a3fd1dcac1b8535b3 -DIST pipewire-0.3.32.tar.gz 1604622 BLAKE2B cab83a17a2b27f710e1377a2ad2ad7003053ef3e8b55423362f0b428e22d52c2ce564da00aab71cc93262d4cb21f239fffea195d05937fdf3489dc540b77d58d SHA512 8a7fe26a78071fdd8d4c9e2d9bf3791af8e0cb53b976b45d39dcab4ad08196808f416911fb1b366cc85e3fa80592ec79c4e4556bb3a390f4a10229b4bf9893f7 -DIST pipewire-0.3.33.tar.gz 1629559 BLAKE2B de48956ac87ed6d63a08dd354b1e4abf81b9db99825ca65cbb5b522e71eb6920b35173e1c3abd9a710c28709e2b0a459db67654cfeac42149cdfa91c84833a8b SHA512 bc3d5658d6fda11dd55f22ba5293b4ff6c3e9a8d083b0cf7b3356bc18f4f65967557602a0d6603a2a2a548ecb42c6b7fbb9d315ed0fce435f4bb884ab4dd263b -DIST pipewire-0.3.34.tar.gz 1682396 BLAKE2B 1a3524a833bde6facf637071f905bb0237f3fc53a86d6160083f36c7a42fb7c71c873a0dc9eea04cfb08cbec08807557c2b83efc1ac403adf6a9998d83441338 SHA512 cbf8eb410d2cd1923e67ac9ee9eca0e74567bb7e8ea407a536e64b3ec27b5bbb1e7fdd74a5a7cbffbac3f9996d8a08f8c723401fb44cb2920f044a3a2f3a6c18 -DIST pipewire-0.3.35.tar.gz 1704419 BLAKE2B 5c0debd19b29a9488be26125794f04e57e8b3cd3842654cb935decae18ffefc4137927d969448f60f1c1c2985d54db139fc3dcf07e36e81014021d63490096d8 SHA512 08a2e305fe4e9d3c3f4533c163b725dd32d26513e51a9f476bd18d6157ebf67e97e48b8df9595d45c81599f416e6b3f76e90df575dd460a8d26fe951db30e0f6 DIST pipewire-0.3.36.tar.gz 1708209 BLAKE2B 20fce0d7f88347fe594491d4fae7b6a8edee67ff7749f1a40b807a5d5094d792e61e3efd05dca2221f781c263e34ff0a50ad3c162231911d4b1d87704df6c775 SHA512 f0fc68ea005018b420a4f65a24dc9c85eb6263c24e66852a7ce2b03f966990d62487b388c7d73ff5adfc10c80c439b1200ae876e41d78f91db190036a1799a14 DIST pipewire-0.3.37.tar.gz 1716320 BLAKE2B ce98b28015de69a0c91953a4839d5f86a29cfa19e2058ba0a2476a75a03b782ae67239b418306e4ed7dab81fe7e77928a417b966ff3c72ac552006cea66e3218 SHA512 3f4cf1ac66117a56a7a264262e2e238a54060457da6a986bd9227f51cc7e8d1a8fd282aef8462c096819282c5baec22779d2025c2e1918bbfb3d6ff75829aea6 DIST pipewire-0.3.38.tar.gz 1727371 BLAKE2B dac7f3e1992b9690195df1dbc04575d386d21d06d1727b004b851e300709b3707806b7b20d36c1e74225d91a2df5428c913376903b286592f87083857347e53e SHA512 c3c6c822bf4e5e77fed8d6ef09059d3e43195957692ab7baddc349af3d759d892a9af0e7802d389e2a9a15e5fece4c08ec963ac42df931233eec6057bad67eb6 diff --git a/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch b/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch deleted file mode 100644 index ccc89f1310b7..000000000000 --- a/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/src/daemon/pipewire.conf.in 2021-06-30 22:22:09.520402459 +0200 -+++ b/src/daemon/pipewire.conf.in 2021-06-30 22:22:30.620404999 +0200 -@@ -234,12 +234,12 @@ - # but it is better to start it as a systemd service. - # Run the session manager with -h for options. - # -- @comment@{ path = "@session_manager_path@" args = "@session_manager_args@" } -+ { path = "@session_manager_path@" args = "@session_manager_args@" } - # - # You can optionally start the pulseaudio-server here as well - # but it is better to start it as a systemd service. - # It can be interesting to start another daemon here that listens - # on another address with the -a option (eg. -a tcp:4713). - # -- @comment@{ path = "@pipewire_path@" args = "-c pipewire-pulse.conf" } -+ { path = "@pipewire_path@" args = "-c pipewire-pulse.conf" } - ] diff --git a/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch b/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch deleted file mode 100644 index d8496bc5a694..000000000000 --- a/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 3449214466c4dac866ec9f47ecc573efaf4505bb Mon Sep 17 00:00:00 2001 -From: Thomas Deutschmann <whissi@gentoo.org> -Date: Fri, 21 May 2021 10:32:52 +0200 -Subject: [PATCH] Revert "openaptx: Blacklist >= 0.2.1 due to license change" - -This reverts commit d08b6fac6bec0d334ee9fc785d551a67832f95fe. - -Doesn't apply to us. - -Bug: https://bugs.gentoo.org/785634 ---- - spa/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/spa/meson.build b/spa/meson.build -index e13802e94..885b25405 100644 ---- a/spa/meson.build -+++ b/spa/meson.build -@@ -28,7 +28,7 @@ if not get_option('spa-plugins').disabled() - summary({'LDAC': ldac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') - ldac_abr_dep = dependency('ldacBT-abr', required : get_option('bluez5-codec-ldac')) - summary({'LDAC ABR': ldac_abr_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') -- aptx_dep = dependency('libopenaptx', version : '< 0.2.1', required : get_option('bluez5-codec-aptx')) -+ aptx_dep = dependency('libopenaptx', required : get_option('bluez5-codec-aptx')) - summary({'aptX': aptx_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') - fdk_aac_dep = dependency('fdk-aac', required : get_option('bluez5-codec-aac')) - summary({'AAC': fdk_aac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') --- -2.32.0 - diff --git a/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch b/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch deleted file mode 100644 index 94d4b7dcb0c3..000000000000 --- a/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit f405a4e6069725934f9ae0f1b978497a34197d8d -Author: Thomas Deutschmann <whissi@gentoo.org> -AuthorDate: Tue Aug 24 14:22:36 2021 +0200 -Commit: Thomas Deutschmann <whissi@gentoo.org> -CommitDate: Tue Aug 24 14:22:43 2021 +0200 - - Revert "bluez5: Use libfreeaptx instead of libopenaptx" - - This reverts commit 1216371f8c06f548f8ade6468b66612f43df1436. - - Delay decision for now since both aptx libs haven't diverged yet. - -diff --git a/spa/meson.build b/spa/meson.build -index 483536b54..e13802e94 100644 ---- a/spa/meson.build -+++ b/spa/meson.build -@@ -28,7 +28,7 @@ if not get_option('spa-plugins').disabled() - summary({'LDAC': ldac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') - ldac_abr_dep = dependency('ldacBT-abr', required : get_option('bluez5-codec-ldac')) - summary({'LDAC ABR': ldac_abr_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') -- aptx_dep = dependency('libfreeaptx', required : get_option('bluez5-codec-aptx')) -+ aptx_dep = dependency('libopenaptx', version : '< 0.2.1', required : get_option('bluez5-codec-aptx')) - summary({'aptX': aptx_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') - fdk_aac_dep = dependency('fdk-aac', required : get_option('bluez5-codec-aac')) - summary({'AAC': fdk_aac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') -diff --git a/spa/plugins/bluez5/a2dp-codec-aptx.c b/spa/plugins/bluez5/a2dp-codec-aptx.c -index f8d7d6dd8..62ecde348 100644 ---- a/spa/plugins/bluez5/a2dp-codec-aptx.c -+++ b/spa/plugins/bluez5/a2dp-codec-aptx.c -@@ -32,7 +32,7 @@ - - #include <sbc/sbc.h> - --#include <freeaptx.h> -+#include <openaptx.h> - - #include "defs.h" - #include "rtp.h" diff --git a/media-video/pipewire/pipewire-0.3.32.ebuild b/media-video/pipewire/pipewire-0.3.32.ebuild deleted file mode 100644 index 7c5256744eed..000000000000 --- a/media-video/pipewire/pipewire-0.3.32.ebuild +++ /dev/null @@ -1,272 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - virtual/pkgconfig - ${PYTHON_DEPS} - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libopenaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio <youruser>" - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.33-r1.ebuild b/media-video/pipewire/pipewire-0.3.33-r1.ebuild deleted file mode 100644 index d0320fcb4b38..000000000000 --- a/media-video/pipewire/pipewire-0.3.33-r1.ebuild +++ /dev/null @@ -1,275 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - virtual/pkgconfig - ${PYTHON_DEPS} - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libopenaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - echo-cancel? ( media-libs/webrtc-audio-processing:0 ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.33-revert-libfreeaptx-switch.patch - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio <youruser>" - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.34.ebuild b/media-video/pipewire/pipewire-0.3.34.ebuild deleted file mode 100644 index 2ce80ce5a7d4..000000000000 --- a/media-video/pipewire/pipewire-0.3.34.ebuild +++ /dev/null @@ -1,276 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - >=dev-util/meson-0.59 - virtual/pkgconfig - ${PYTHON_DEPS} - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libopenaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - echo-cancel? ( media-libs/webrtc-audio-processing:0 ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.33-revert-libfreeaptx-switch.patch - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio <youruser>" - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.35.ebuild b/media-video/pipewire/pipewire-0.3.35.ebuild deleted file mode 100644 index d68355c9f4c4..000000000000 --- a/media-video/pipewire/pipewire-0.3.35.ebuild +++ /dev/null @@ -1,281 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{8..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~riscv" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - >=dev-util/meson-0.59 - virtual/pkgconfig - ${PYTHON_DEPS} - $(python_gen_any_dep 'dev-python/docutils[${PYTHON_USEDEP}]') - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses:=[unicode(+)] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libfreeaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - echo-cancel? ( media-libs/webrtc-audio-processing:0 ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -python_check_deps() { - has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" -} - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.35-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - # Replaced upstream by -Dsession-managers=..., needs more work, bug #812809 - # but default is same as before and right now, this is fatal with unreleased Meson. - #$(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889 - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_use jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio <youruser>" - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack <application> before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} |