summaryrefslogtreecommitdiff
path: root/media-video
diff options
context:
space:
mode:
Diffstat (limited to 'media-video')
-rw-r--r--media-video/Manifest.gzbin25835 -> 25831 bytes
-rw-r--r--media-video/pipewire/Manifest5
-rw-r--r--media-video/pipewire/files/pipewire-0.3.56-big-endian.patch55
-rw-r--r--media-video/pipewire/pipewire-0.3.56.ebuild424
-rw-r--r--media-video/pipewire/pipewire-0.3.61.ebuild2
-rw-r--r--media-video/wireplumber/Manifest5
-rw-r--r--media-video/wireplumber/files/wireplumber-0.4.11-alsa-lua-crash.patch33
-rw-r--r--media-video/wireplumber/files/wireplumber-0.4.11-dbus-reconnect-crash.patch45
-rw-r--r--media-video/wireplumber/files/wireplumber-0.4.11-loop.patch147
-rw-r--r--media-video/wireplumber/wireplumber-0.4.11-r3.ebuild131
10 files changed, 2 insertions, 845 deletions
diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz
index e783dd02df35..bff4eabd8a1a 100644
--- a/media-video/Manifest.gz
+++ b/media-video/Manifest.gz
Binary files differ
diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest
index bbd3248cae18..2a2212d4b7b0 100644
--- a/media-video/pipewire/Manifest
+++ b/media-video/pipewire/Manifest
@@ -1,22 +1,19 @@
AUX 99-pipewire-default-hook.conf 540 BLAKE2B cec76e78db9db290054bf766774c284d7a7a1374c453802eb1bdc19db9289856ec7b8643acbab916a39ca859d543deca111e3b0f110d1904343221c1573ffc17 SHA512 ef891e38c6f40fce2904e240307147a58c48d780e8470dac8e28044cfb86ddeb163885a2362687791779379ad814f58ad5649b75ac4e82931c5bdd3f37a6ed01
AUX gentoo-pipewire-launcher.in 1227 BLAKE2B 4316a991978fac653a00d076e9236d0ab6c01a6e4b800c82851e2bd6f9476369605c741aa7ffd47b10853653ef1d4222c449f0b912a0f7694fffd2b1611d7a47 SHA512 edbc03cec765d2307bcf33a14521c6f8beeae52d9fd6a4e181ba66b9f5dd0d64995fdef847453d1a4c682d701814b3afbe70931f55a0e4198fc5c9d87d7a95c5
AUX pipewire-0.3.25-enable-failed-mlock-warning.patch 704 BLAKE2B dc0732b89b57a258ea6dc54941899134259469675f92ae93aebda09a796c73ace8bc4ed0ab2aef4ea1bcaa30c1bea8c3304288168421ce8f9939ec993c8aa438 SHA512 7456a24276b7b766ff5799acf5b80ef5f85ee7a78fc5b52adff3206c0b0aa1985a0bf72634aacf7818c90136c09bcc11cb0fecec291d961c8b3585c897869f65
-AUX pipewire-0.3.56-big-endian.patch 1632 BLAKE2B b47b5ca888de71c9ee71ba35d5a490074e39219777345f4bf55252c0e9de65b97cc995c894b27c43945c8b32d70304e46610b3b641732170dc8f1ad97ea6549b SHA512 84bda8d747b91f04a40da6e55f186991b679b124e2571d64cd18368d5d4e1e2273565e3eee0a7b4b1a20a731429c240f168b970b02f88534375131b24c358cc1
AUX pipewire-0.3.59-filter-chain-alloc-port-data-handle.patch 2771 BLAKE2B a6248de6ca263fa275938f61e504b442e06e41ef5cb650fe03c0c8a91d28567fc3e20b02626f2293a3ca1c0014c8f6692498178be38017445e167efcdf2d6e7e SHA512 46534f3fc267170090c0abdc076a1486fe4c3b964790bba19156349814b26b14b0dd637ff4aeaa0b5a3775ddebcf021e93cc4e1f85f7aa7cfda3bb4a66af6fc7
AUX pipewire-0.3.60-profile-switch-crash.patch 1137 BLAKE2B 7788032fbb6f4ff1641c607700c73932c743ab2d1a0187bbeff845a1877cc152e26c7568a53ea34647a09a5f0f2b176b58459e733abab931837306ffac759523 SHA512 2e841b76be0eb0b481913aabee41d62dcc0fbb190adae1624f6a20719e62b292324f0687cde659685403ae9ce29ff3ee2831d826ff5cd447c5e729bc74dea619
AUX pipewire-0.3.60-pulse-server-also-advance-read-pointer-in-underrun.patch 994 BLAKE2B e33d9d2c1b77264f3e14e6d0c6b04e2674758567b2604b37c25d6d08507742446478a22b84a2ae4316d2128f363b59f96493ce1a470c2cbce8f974afe9da7161 SHA512 c20e3d46b0f89077e39998617dace62147c0f3e6c6da8bf800cfeb817545ef68b8f1d9bd78c16204d1d47c0c5ac097dbf986a728262c7f4ef0a6090774d615eb
AUX pipewire-0.3.60-qemu.patch 697 BLAKE2B debafa8889db0f9724c7e6ffdfdfd1c71e4722b042fca1dba1bc2ef1378d32950689ce8e85ea7fc179867d9f937d8f69eb795132fc8d14278268ca521dcecd80 SHA512 c32edc0164c61d758efc525307c65e8cb823645b32f8eb8fff8dda8be3517b254e7a578ab2b4cb42e6e0b4d66ae2f4ff985ddcabf1cc30efe13a380ebed51466
AUX pipewire.desktop 322 BLAKE2B 0299b9054cf881a5cbbdb128a5e8a51308cf0b5a98260dca756e704504ef057e403b2fb4aa2d58f52dde4be59e416c95d8fce21bc3ca6b6447ecab58263a3f21 SHA512 c13ea531cfdd3798f8d6cd20f5fa8c0a5040c27a6ef3850fdd41102a3bf0bcb73176e3300845af77804a98842fb736841223bc9ac1c92eb2034e9d46e41fc344
AUX pipewire.desktop-r1 325 BLAKE2B 7d823a264e5147bf8669127df22f468518fd54375ed57910f0143821894b33cfee8925b1cf8b9c5b1d219453a5c62fffa50d111b78bc5e151e23aed84d0a577e SHA512 e51ba049484daba3e4cdc5890748267f0c23ea6e57f31f3bb8a49c011e1a61b47b68eea742e5e7bcd58bfeddb96dd4064079fd9787cb66c78bd5eff10799a7bf
-DIST pipewire-0.3.56.tar.gz 1856321 BLAKE2B 62fb5d5a83b3cfc0555f09da42c8d4fbe69f34432add57f91a9c001535340a84f54572af4a5ba138251888cba9be0c038317dfe929d2e2ef36ff62f4679c6ea0 SHA512 a1ba598c56130a30e573d3ce3ac5879d800d3005a47075c45353d968c97c12f74d85802cd171b61558c06c474a03bbe4885396ca430a0af6c5672ed00f43d108
DIST pipewire-0.3.59.tar.bz2 1443372 BLAKE2B 5e2d82c0bfdb7c030d8be525152c38115438caeb990afd7757424efcf2a7391a6a4891b0f58347ab0b7446707e8ad88baffa0c11c5acc42e086f23c9de3cb354 SHA512 f42bfab6e1bb227431119b44887af818a25eb0cdbcca917433162af87c942eb105a2b6e100de877d188941a24f1c8e2e9ae79f499fc20f0a32e2f7cc5de54162
DIST pipewire-0.3.60.tar.bz2 1478952 BLAKE2B a7cda37a35ea58079b5297949239fd05b895b59d397f36a68c75c9392c65ad060926caf2e61c5511ab27f02da6c1c2044e4e86009f9c5f18d2744cad63585900 SHA512 8a1c022a283f3cbe7488658563440ff6b426f0b894f519ccd5c7d73bdb5437902fbd4d7d572d5840d48bd7a2f037f0f14dd244fe36b8be891a2d2843f4a99b5c
DIST pipewire-0.3.61.tar.bz2 1480364 BLAKE2B df940896189b986e1d63ce6d5ec6cb554ae030ef2ed217a5310f06d959b8c28bff12bc48d847ce5bc6ff007b3652f9ae6e35fd15ef39283348c010cd341bcea6 SHA512 8fe5b6ce0fd1ef2a20b1253436fb97aab9da168ce243400b0291051e97809d75793d9446fd4aafc835f82fd257009ec6df9e181d375b492ee72d7f90275ab917
DIST pipewire-0.3.62.tar.bz2 1482986 BLAKE2B 008f57e0e01971aa27af7a7c1e4ddcc72326845534fd8c9257b14078acdde1abf44629b93532ba340c5d446ef47b402bfa22ffbfc28cd44a75131b05e06ce3c8 SHA512 3132b18fc3d1269587216301a9e5a87ee74c1583f17da466a82e9446b57a8a9b77e7dfdea84f04320940c637ea6ce5c1c9caca6a449fb1e55e946259820b2084
-EBUILD pipewire-0.3.56.ebuild 15643 BLAKE2B 15b146a8ca79173ffa4b93315681fda18d1290711ec8b41715c96dcdfff325ea8ffd1fd9418671cfe966542ba7c81bef6ef08f14c7f17b569bb82abc66c6fa63 SHA512 832ba476d2e4f2bbcb78118152b407f426ed40bf514096a19fcf3f8a00afcbfaf3f17e2d914279055c8afdf526969598d9aaa3acddbc905d62509c43fd6b6917
EBUILD pipewire-0.3.59-r2.ebuild 15852 BLAKE2B 21cf0a628f02e323ee25220ac73659813009ec786962a579ed882297315415096ebcbd2db9a0463d892a592d22142cd2eaf39c8abd767a18124bbaf523b057ed SHA512 3294fc701cd4953e40920e9679b57531e29512cdb65f82a9b2f611212497572e388b3a3ced87898a0f262279588ac82d861d7de46f4048976f1508c16663f364
EBUILD pipewire-0.3.60-r1.ebuild 16248 BLAKE2B 98004ada5eec4a5010b32718e68d388d092e8ecfc7fb8c205eb414ce37f77c7f0b274de9ffaae1d8092985407f0b71ec995a058911ba71f60ea538d4a0e800bb SHA512 cf4ebd534796c61a9cdb1bcf891c524558758956e0d34645f3486c68eda6c4026f9d90e560b64ba5cda8ea5153e17199fe7594c62dacd9b7f49fbe2a9dc692ad
-EBUILD pipewire-0.3.61.ebuild 16093 BLAKE2B 50fc7a6f22231edf7219ebf8a1d96365254d74ce21632645a99ac76b494f2484aef428e3a45970abbc322fb3e4c4374c63f41f98ddfcd0a2c0c3d3e872e3badf SHA512 ba9a277a141fadcbd51cdefa22e353417adcc52ff6a561d16090c010dae189ea387dc665cb0ff792e48d48fbaf1ed19e8632fae30584b6432bcfcb0d33c183fd
+EBUILD pipewire-0.3.61.ebuild 16091 BLAKE2B 62907c752d1bb9f1ed1822842462177cd17e30b02b322422e2330303fc33b7e6d5b8967cf5fc9aa384a1bc155dc70b26d4f7c8135ef302516d699147609d69c8 SHA512 42cbf609364f4fce73515e0b5c7aa3ccd473cff069663d4f0a140ca32709b2ba85a7bf004cfac311ec3744ff721f87ba7db54d2a4665c4d072604ce3f84664d0
EBUILD pipewire-0.3.62.ebuild 16187 BLAKE2B 2a8a2dd8f18b777ce2d9428aecb74495cdca09e68002ef60fe30595b19fdabf410d6adc1ccf339ceeb0f37347607d546f4091241d20bd410f29c7daac5f66cad SHA512 3b9ef7155317e966dc2c4f7b77b6a7d483d4661c9c4c81e92f87328a814be80d0d05f540b9c7d936628f329284b979d02fe79c9d65a69ee3897e71e699771792
EBUILD pipewire-9999.ebuild 16187 BLAKE2B 2a8a2dd8f18b777ce2d9428aecb74495cdca09e68002ef60fe30595b19fdabf410d6adc1ccf339ceeb0f37347607d546f4091241d20bd410f29c7daac5f66cad SHA512 3b9ef7155317e966dc2c4f7b77b6a7d483d4661c9c4c81e92f87328a814be80d0d05f540b9c7d936628f329284b979d02fe79c9d65a69ee3897e71e699771792
MISC metadata.xml 1860 BLAKE2B 8f537f36217aa1c5869e48a1af71cae96b56e60f5cd9b811739be159dd3aeeabe3c31dccc3d7f695f7361f7d262f8c68230fb410e389465b9264d8e6af232aa5 SHA512 d2ae3129e67b7527bbd3481ac77e27de4e26f6ff77601a7538d5e888c7737b7b39d981be4dcf245ea8d676823f1b1fbf8d854feefa62b74962710af17248d731
diff --git a/media-video/pipewire/files/pipewire-0.3.56-big-endian.patch b/media-video/pipewire/files/pipewire-0.3.56-big-endian.patch
deleted file mode 100644
index d7742d26cead..000000000000
--- a/media-video/pipewire/files/pipewire-0.3.56-big-endian.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/aaa015d0c0c66b64c7198a34ad3c4b43445667d2
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/1a5ec4452fa21592eaeeb823ad95a1db6eb60376
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/f857fd46262b1a90ad94f86e34216a1a886d9463
-
-From aaa015d0c0c66b64c7198a34ad3c4b43445667d2 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 19 Jul 2022 13:06:52 +0200
-Subject: [PATCH] avb: fix compilation on big endian
-
---- a/spa/plugins/avb/avbtp/packets.h
-+++ b/spa/plugins/avb/avbtp/packets.h
-@@ -116,7 +116,7 @@ struct spa_avbtp_packet_aaf {
- unsigned gv:1;
- unsigned tv:1;
-
-- uint8_t seq_number;
-+ uint8_t seq_num;
-
- unsigned _r2:7;
- unsigned tu:1;
-GitLab
-From 1a5ec4452fa21592eaeeb823ad95a1db6eb60376 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 19 Jul 2022 13:49:42 +0200
-Subject: [PATCH] avb: fix compilation on big endian
-
---- a/src/modules/module-avb/aaf.h
-+++ b/src/modules/module-avb/aaf.h
-@@ -35,7 +35,7 @@ struct avb_packet_aaf {
- unsigned gv:1;
- unsigned tv:1;
-
-- uint8_t seq_number;
-+ uint8_t seq_num;
-
- unsigned _r2:7;
- unsigned tu:1;
-GitLab
-From f857fd46262b1a90ad94f86e34216a1a886d9463 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 19 Jul 2022 14:07:16 +0200
-Subject: [PATCH] avb: fix compilation on big endian
-
---- a/src/modules/module-avb/iec61883.h
-+++ b/src/modules/module-avb/iec61883.h
-@@ -37,7 +37,7 @@ struct avb_packet_iec61883 {
- unsigned gv:1;
- unsigned tv:1;
-
-- uint8_t seq_number;
-+ uint8_t seq_num;
-
- unsigned _r2:7;
- unsigned tu:1;
-GitLab
diff --git a/media-video/pipewire/pipewire-0.3.56.ebuild b/media-video/pipewire/pipewire-0.3.56.ebuild
deleted file mode 100644
index d60731301153..000000000000
--- a/media-video/pipewire/pipewire-0.3.56.ebuild
+++ /dev/null
@@ -1,424 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 1. Please regularly check (even at the point of bumping) Fedora's packaging
-# for needed backports at https://src.fedoraproject.org/rpms/pipewire/tree/rawhide.
-#
-# 2. Upstream also sometimes amend release notes for the previous release to mention
-# needed patches, e.g. https://gitlab.freedesktop.org/pipewire/pipewire/-/tags/0.3.55#distros
-#
-# 3. Keep an eye on git master (for both PipeWire and WirePlumber) as things
-# continue to move quickly. It's not uncommon for fixes to be made shortly
-# after releases.
-
-PYTHON_COMPAT=( python3_{8..11} )
-
-inherit flag-o-matic meson-multilib optfeature prefix python-any-r1 systemd udev
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
- inherit git-r3
-else
- if [[ ${PV} == *_p* ]] ; then
- MY_COMMIT=""
- SRC_URI="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${MY_COMMIT}/pipewire-${MY_COMMIT}.tar.bz2 -> ${P}.tar.bz2"
- S="${WORKDIR}"/${PN}-${MY_COMMIT}
- else
- SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
- fi
-
- KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
-fi
-
-DESCRIPTION="Multimedia processing graphs"
-HOMEPAGE="https://pipewire.org/"
-
-LICENSE="MIT LGPL-2.1+ GPL-2"
-# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49
-SLOT="0/0.4"
-IUSE="bluetooth dbus doc echo-cancel extra gstreamer jack-client jack-sdk lv2
-pipewire-alsa sound-server ssl system-service systemd test udev v4l X zeroconf"
-
-# 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)!
-
-# TODO: There should be "sound-server? ( || ( alsa bluetooth ) )" here, but ALSA is always enabled
-# TODO: Pulseaudio alsa plugin performs runtime check that pulseaudio server connection will work
-# which provides adequate guarantee that alsa-lib will be able to provide audio services.
-# If that works, pulseaudio defaults are loaded into alsa-lib runtime replacing default PCM and CTL.
-# When pipewire-alsa will be able to perform similar check, pipewire-alsa can be enabled unconditionally.
-REQUIRED_USE="
- jack-sdk? ( !jack-client )
- system-service? ( systemd )
- !sound-server? ( !pipewire-alsa )
- jack-client? ( dbus )
-"
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- >=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-libs/readline:=
- sys-libs/ncurses:=[unicode(+)]
- virtual/libintl[${MULTILIB_USEDEP}]
- bluetooth? (
- media-libs/fdk-aac
- media-libs/libldac
- media-libs/libfreeaptx
- media-libs/sbc
- >=net-wireless/bluez-4.101:=
- virtual/libusb:1
- )
- dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
- 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
- )
- lv2? ( media-libs/lilv )
- pipewire-alsa? (
- >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
- )
- sound-server? (
- !media-sound/pulseaudio[daemon(+)]
- !media-sound/pulseaudio-daemon
- )
- ssl? ( dev-libs/openssl:= )
- systemd? ( sys-apps/systemd )
- system-service? (
- acct-user/pipewire
- acct-group/pipewire
- )
- udev? ( virtual/libudev[${MULTILIB_USEDEP}] )
- v4l? ( media-libs/libv4l )
- X? (
- media-libs/libcanberra
- x11-libs/libX11
- x11-libs/libXfixes
- )
- zeroconf? ( net-dns/avahi )
-"
-
-DEPEND="${RDEPEND}"
-
-# TODO: Consider use cases where pipewire is not used for driving audio
-# Doing so with WirePlumber currently involves editing Lua scripts
-PDEPEND=">=media-video/wireplumber-0.4.8-r3"
-
-# 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}"/${P}-big-endian.patch
-)
-
-# limitsdfile related code taken from =sys-auth/realtime-base-0.1
-# with changes as necessary.
-limitsdfile=40-${PN}.conf
-
-python_check_deps() {
- python_has_version "dev-python/docutils[${PYTHON_USEDEP}]"
-}
-
-src_prepare() {
- default
-
- einfo "Generating ${limitsdfile}"
- cat > ${limitsdfile} <<- EOF || die
- # Start of ${limitsdfile} from ${P}
-
- @audio - memlock 256
-
- $(use system-service && {
- echo @pipewire - rtprio 95
- echo @pipewire - nice -19
- echo @pipewire - memlock 4194304
- })
-
- # End of ${limitsdfile} from ${P}
- EOF
-}
-
-multilib_src_configure() {
- # https://bugs.gentoo.org/838301
- filter-flags -fno-semantic-interposition
-
- local emesonargs=(
- -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
-
- $(meson_feature dbus)
- $(meson_native_use_feature zeroconf avahi)
- $(meson_native_use_feature doc docs)
- $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone
- $(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)
-
- $(meson_native_use_feature system-service systemd-system-service)
- -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)"
- -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)"
-
- $(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 (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible)
- -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 bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters)
- $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889
- # Not yet packaged.
- -Dbluez5-codec-lc3plus=disabled
- -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 lv2)
- $(meson_native_use_feature v4l v4l2)
- -Dlibcamera=disabled # libcamera is not in Portage tree
- $(meson_native_use_feature ssl raop)
- -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)
- $(meson_feature udev)
- -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)
- -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build
-
- # Just for bell sounds in X11 right now.
- $(meson_native_use_feature X x11)
- $(meson_native_use_feature X x11-xfixes)
- $(meson_native_use_feature X libcanberra)
- )
-
- meson_src_configure
-}
-
-multilib_src_install() {
- # Our custom 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
-
- # Install pipewire conf loader hook
- insinto /usr/share/alsa/alsa.conf.d
- doins "${FILESDIR}"/99-pipewire-default-hook.conf
- eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf
-
- # These will break if someone has /etc that is a symbolic 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-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf
- fi
-
- # Enable required wireplumber alsa and bluez monitors
- if use sound-server; then
- dodir /etc/wireplumber/main.lua.d
- echo "alsa_monitor.enabled = true" > "${ED}"/etc/wireplumber/main.lua.d/89-gentoo-sound-server-enable-alsa-monitor.lua || die
-
- dodir /etc/wireplumber/bluetooth.lua.d
- echo "bluez_monitor.enabled = true" > "${ED}"/etc/wireplumber/bluetooth.lua.d/89-gentoo-sound-server-enable-bluez-monitor.lua || die
- fi
-
- if ! use systemd; then
- insinto /etc/xdg/autostart
- newins "${FILESDIR}"/pipewire.desktop-r1 pipewire.desktop
-
- exeinto /usr/bin
- newexe "${FILESDIR}"/gentoo-pipewire-launcher.in gentoo-pipewire-launcher
-
- # Disable pipewire-pulse if sound-server is disabled.
- if ! use sound-server ; then
- sed -i -s '/pipewire -c pipewire-pulse.conf/s/^/#/' "${ED}"/usr/bin/gentoo-pipewire-launcher || die
- fi
-
- eprefixify "${ED}"/usr/bin/gentoo-pipewire-launcher
- fi
-}
-
-pkg_postrm() {
- use udev && udev_reload
-}
-
-pkg_postinst() {
- use udev && udev_reload
-
- 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
-
- local ver
- for ver in ${REPLACING_VERSIONS} ; do
- if ver_test ${ver} -le 0.3.53-r1 && ! use sound-server ; then
- ewarn "USE=sound-server is disabled! If you want PipeWire to provide"
- ewarn "your sound, please enable it. See the wiki at"
- ewarn "https://wiki.gentoo.org/wiki/PipeWire#Replacing_PulseAudio"
- ewarn "for more details."
-
- break
- fi
- done
-
- 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 "When switching from PulseAudio, you may need to disable PulseAudio:"
- elog
- elog " systemctl --user disable pulseaudio.service pulseaudio.socket"
- elog
- elog "To use PipeWire, the user units must be manually enabled"
- elog "by running this command as each user you use for desktop activities:"
- elog
- elog " systemctl --user enable pipewire.socket pipewire-pulse.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 WirePlumber"
- elog "for relevant users:"
- elog
- elog " systemctl --user disable pipewire-media-session.service"
- elog " systemctl --user --force enable wireplumber.service"
- elog
- elog "Root user may replace --user with --global to change system default"
- elog "configuration for all of the above commands."
- else
- ewarn "PipeWire daemon startup has been moved to a launcher script!"
- ewarn "Make sure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist or no"
- ewarn "longer is set to start a session manager or PulseAudio compatibility daemon (all"
- ewarn "lines similar to '{ path = /usr/bin/pipewire*' should be commented out)"
- ewarn
- ewarn "Those manually starting /usr/bin/pipewire via .xinitrc or similar _must_ from"
- ewarn "now on start ${EROOT}/usr/bin/gentoo-pipewire-launcher instead! It is highly"
- ewarn "advised that a D-Bus user session is set up before starting the script."
- ewarn
-
- if use sound-server && ( has_version 'media-sound/pulseaudio[daemon]' || has_version 'media-sound/pulseaudio-daemon' ) ; then
- elog "This ebuild auto-enables PulseAudio replacement. Because of that, users"
- elog "are recommended to edit pulseaudio client configuration files:"
- elog "${EROOT}/etc/pulse/client.conf and ${EROOT}/etc/pulse/client.conf.d/enable-autospawn.conf"
- elog "if it exists, and disable autospawning 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}/usr/bin/gentoo-pipewire-launcher by commenting out the relevant"
- elog "command:"
- elog
- elog "#${EROOT}/usr/bin/pipewire -c pipewire-pulse.conf &"
- elog
- fi
- elog "NOTE:"
- elog "Starting with PipeWire-0.3.30, this package is no longer installing its config"
- elog "into ${EROOT}/etc/pipewire by default. In case you need to change"
- elog "its config, please start by copying default config from ${EROOT}/usr/share/pipewire"
- elog "and just override the sections you want to change."
- fi
- elog
-
- 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
-
- if use sound-server && ! use pipewire-alsa; then
- optfeature "ALSA plugin to use PulseAudio interface for output" "media-plugins/alsa-plugins[pulseaudio]"
- fi
-
- if has_version 'net-misc/ofono' ; then
- ewarn "Native backend has become default. Please disable oFono via:"
- if systemd_is_booted ; then
- ewarn "systemctl disable ofono"
- else
- ewarn "rc-update delete ofono"
- fi
- ewarn
- fi
-
- if use system-service; then
- ewarn
- ewarn "WARNING: you have enabled the system-service USE flag, which installs"
- ewarn "the system-wide systemd units that enable PipeWire to run as a system"
- ewarn "service. This is more than likely NOT what you want. You are strongly"
- ewarn "advised not to enable this mode and instead stick with systemd user"
- ewarn "units. The default configuration files will likely not work out of"
- ewarn "box, and you are on your own with configuration."
- ewarn
- fi
-}
diff --git a/media-video/pipewire/pipewire-0.3.61.ebuild b/media-video/pipewire/pipewire-0.3.61.ebuild
index e8726d26413b..beb5003b7028 100644
--- a/media-video/pipewire/pipewire-0.3.61.ebuild
+++ b/media-video/pipewire/pipewire-0.3.61.ebuild
@@ -29,7 +29,7 @@ else
SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2"
fi
- KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~amd64 arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="Multimedia processing graphs"
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index 77a3de1f26bd..844dedfebc0c 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,10 +1,5 @@
AUX wireplumber-0.4.10-config-disable-sound-server-parts.patch 1017 BLAKE2B 09ea7233aaeff88bc7fc0bd0d8345ee15c9377c1a5dca4a1937f00c808def449202186be1ed61cebc05e9d241ad1f8e374b1743f93b2766d7adcf26dc1cf4837 SHA512 d3bc1248bf2ea39ebe7346754f386ec2ab7815beded415c58273372c3e9b2c3b3185e591057aba4233b1320605e08b00702db4de4b78eb4cb833176bb0f16ba5
-AUX wireplumber-0.4.11-alsa-lua-crash.patch 1256 BLAKE2B ae5787294e405e37f01d0d4ef3f6031e5df9f60b04f02a682ceeaf2311cd2d525cdbb913d4997d63d18513225bd35d5e6375e33f34931e412ef681df134fa514 SHA512 536e39e4863ca2e002b20f8fca6164a60e280f56d7c5c2c96f9684e75b6e8f7138884fca88a214b4830e2a9fb252ead3ba75dc7f6ad491716f3e2fc595ddefed
-AUX wireplumber-0.4.11-dbus-reconnect-crash.patch 1553 BLAKE2B 1792743e726f22ff26f751196f620905122545bb8921dcb2398e627ef6756d786497e84cb899dcadac5417207cba7f1d5bc7f0a018156c89393712eafba5b54b SHA512 1603f928867f8ccf83132fb3b09b4d43995bd97a62689917274b01eb75526237ab86b1e58292e7f3b5b296e094995d284be31dfdd13d1c26ca5a41f2d121c71d
-AUX wireplumber-0.4.11-loop.patch 5638 BLAKE2B ebebd5a0c668f9ceb44cedecb9a7c364ed135e78802c619d3c1b328932480b11e2392b7263fb8df472ef1134a451537c82e25e0122bd61f80f33cbb36d538c43 SHA512 4486bb29a0f238b5d3df07bce065be30604fd3ef2d62925b3e3869060c0015d3bcdb45375bf5735e39d48e39e115c8f2029526d1044add8992fe2bc22f45faee
-DIST wireplumber-0.4.11.tar.gz 403931 BLAKE2B 77ef2540081420d4255dcb54165d0aceb08d97c60d19b9eb7606e90cf95e305e690794a1f46234b53b13765452fea0d23ae6acae9deea672db67e21c31d2307d SHA512 73a5120cd0c55b5fe5248cc22497efd23e40bb91961553639d9cf1bbf138d273db65153fa3c1bb0d2794f869e077e011156d323832534f62651d66f8cc87dca4
DIST wireplumber-0.4.12.tar.bz2 317524 BLAKE2B 5f020759fab459fb3311f8a5cddddef2bf7dc62304b6e95f5d983b86b0e6ddef7bc16c4f2ef6a36264d7ed94e48dbb4c66ff3389bfd7ca58841b4fd6cdfb21bc SHA512 79827ea9f61bacf8df80f9cd0ca4c80192cf85a1b181a51256b3c845d1d04a690ea5c1270d6d5d05d56f799f16980a593e61d003ef78ad7dc8d5e9ea332aa5d4
-EBUILD wireplumber-0.4.11-r3.ebuild 4143 BLAKE2B 2198a5fae459a27ba6c03c873d123c6744929ec370a5ad1498bdd2bb5fcbc3bf68e79788536171cbafb79f08e0f543e38807945bc46c99dc89172801034eb924 SHA512 c3821991d447e63015c80b6ec3f127508b9e5575b030c14bcb2c08490e6f9ebe6e680938062b69285592c869629d51be028a840de3f37789fc7c30c827a32589
EBUILD wireplumber-0.4.12-r1.ebuild 4025 BLAKE2B b821c7630b483a2b0747af76cf1fa1a7b21375e5127e31b845ca120f44b46026dd350cd01c6c390dda4267af219c501ff71c2d59ccfc9655bbc180575e58df8a SHA512 e36700710e6966f4b58bcbf51b661a6ba6fe6ea1ee6d03ec03dbab6b5040c32337e066fb026648c700cdbc8acfdd427ed313d789f9718205d04b3bb90cb34015
EBUILD wireplumber-9999.ebuild 3890 BLAKE2B 9c7338d6ecbd671285cc294d00eff12480729ed921bd621b722a050d175c4b4d45eb57e73866a71a4c7bbe40c38b2a258a5b00ff39e5416026915e00794fa993 SHA512 a5431c85044ddd96f8e1735206d1cb3d7c516fe27c92b0c249936240fef68f3728ea79b6518eedc236429aca320e4698511059c4db1ff3fb0b9ad667653c02c4
MISC metadata.xml 719 BLAKE2B 7ad70a19cbc55cb0c399cbc1c8c56a3bab16d2dd477a285a3c142793af3704a8dd6648f6cfa0b9aa6fd8338c9cddd93cc565356a8a2e5031a6874b46ac66c2ee SHA512 a4617e6176a4dab7491103858ed5f663b8dda2a6cd97c348cc274ac959df813a811f70963487ccb670999fd51d107726762d872ce42290d02ea6ed24ea021e55
diff --git a/media-video/wireplumber/files/wireplumber-0.4.11-alsa-lua-crash.patch b/media-video/wireplumber/files/wireplumber-0.4.11-alsa-lua-crash.patch
deleted file mode 100644
index 3bc8bbd08bb6..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.11-alsa-lua-crash.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c16e637c329bc9dda8544b18f5bd47a8d63ee253
-
-From c16e637c329bc9dda8544b18f5bd47a8d63ee253 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Thu, 7 Jul 2022 20:58:36 +0300
-Subject: [PATCH] alsa: use "obj_type" as a variable name to avoid shadowing
- lua's "type" function
-
-This causes a crash when running in a VM because the code tries to
-execute lua's "type()" and ends up executing the local string variable...
-
-Fixes: #303
---- a/src/scripts/monitors/alsa.lua
-+++ b/src/scripts/monitors/alsa.lua
-@@ -49,7 +49,7 @@ function nonempty(str)
- return str ~= "" and str or nil
- end
-
--function createNode(parent, id, type, factory, properties)
-+function createNode(parent, id, obj_type, factory, properties)
- local dev_props = parent.properties
-
- -- set the device id and spa factory name; REQUIRED, do not change
-@@ -199,7 +199,7 @@ function createDevice(parent, id, factory, properties)
- end
- end
-
--function prepareDevice(parent, id, type, factory, properties)
-+function prepareDevice(parent, id, obj_type, factory, properties)
- -- ensure the device has an appropriate name
- local name = "alsa_card." ..
- (properties["device.name"] or
-GitLab
diff --git a/media-video/wireplumber/files/wireplumber-0.4.11-dbus-reconnect-crash.patch b/media-video/wireplumber/files/wireplumber-0.4.11-dbus-reconnect-crash.patch
deleted file mode 100644
index 6098ed11c302..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.11-dbus-reconnect-crash.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/eb406bdb2cbbcd49c55c71285f8f2eddb624d24b
-
-From eb406bdb2cbbcd49c55c71285f8f2eddb624d24b Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Wed, 13 Jul 2022 13:38:14 +0300
-Subject: [PATCH] dbus: fix crash when trying to reconnect
-
-When coming from on_sync_reconnect, data points to the WpDBus object
-instead of the activation transition.
-
-Fixes: #305
---- a/lib/wp/dbus.c
-+++ b/lib/wp/dbus.c
-@@ -58,14 +58,26 @@ wp_dbus_set_state (WpDbus *self, WpDBusState new_state)
- static void
- on_got_bus (GObject * obj, GAsyncResult * res, gpointer data)
- {
-- WpTransition *transition = WP_TRANSITION (data);
-- WpDbus *self = wp_transition_get_source_object (transition);
-+ WpTransition *transition;
-+ WpDbus *self;
- g_autoptr (GError) error = NULL;
-
-+ if (WP_IS_TRANSITION (data)) {
-+ // coming from wp_dbus_enable
-+ transition = WP_TRANSITION (data);
-+ self = wp_transition_get_source_object (transition);
-+ } else {
-+ // coming from on_sync_reconnect
-+ transition = NULL;
-+ self = WP_DBUS (data);
-+ }
-+
- self->connection = g_dbus_connection_new_for_address_finish (res, &error);
- if (!self->connection) {
-- g_prefix_error (&error, "Failed to connect to bus: ");
-- wp_transition_return_error (transition, g_steal_pointer (&error));
-+ if (transition) {
-+ g_prefix_error (&error, "Failed to connect to bus: ");
-+ wp_transition_return_error (transition, g_steal_pointer (&error));
-+ }
- return;
- }
-
-GitLab
diff --git a/media-video/wireplumber/files/wireplumber-0.4.11-loop.patch b/media-video/wireplumber/files/wireplumber-0.4.11-loop.patch
deleted file mode 100644
index 75e2bafcaddc..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.11-loop.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-https://bugs.gentoo.org/866551
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/37c839b9308cd3d6580bf01077db8cb29ec2aa2f
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/370b692933634675213110048fcda6dff52eb52b
-
-From: Pauli Virtanen <pav@iki.fi>
-Date: Tue, 19 Jul 2022 20:39:06 +0300
-Subject: [PATCH] policy-node: fix potential rescan loop
-
-SiLink activation might be delayed indefinitely under some error
-conditions. Currently, policy-node schedules a rescan when it sees a
-non-activated link on a stream to be moved, which produces busy loop if
-the si-link doesn't activate.
-
-Instead of rescheduling on non-active si-links, just remove and emit a
-warning. The si-link then gets removed once it gets activated.
-
-Reproducer:
-
-1. Play audio from Rhythmbox and pause.
-2. Switch default output with pactl between two different outputs
-3. Links from the paused stream stay at "init"
---- a/src/scripts/policy-node.lua
-+++ b/src/scripts/policy-node.lua
-@@ -694,16 +694,15 @@ function handleLinkable (si)
- local link = lookupLink (si_id, si_flags[si_id].peer_id)
- if reconnect then
- if link ~= nil then
-- -- remove old link if active, otherwise schedule rescan
-- if ((link:get_active_features() & Feature.SessionItem.ACTIVE) ~= 0) then
-- si_flags[si_id].peer_id = nil
-- link:remove ()
-- Log.info (si, "... moving to new target")
-- else
-- scheduleRescan()
-- Log.info (si, "... scheduled rescan")
-- return
-+ -- remove old link
-+ if ((link:get_active_features() & Feature.SessionItem.ACTIVE) == 0) then
-+ -- remove also not yet activated links: they might never become active,
-+ -- and we should not loop waiting for them
-+ Log.warning (link, "Link was not activated before removing")
- end
-+ si_flags[si_id].peer_id = nil
-+ link:remove ()
-+ Log.info (si, "... moving to new target")
- end
- else
- if link ~= nil then
-GitLab
-
-From: Pauli Virtanen <pav@iki.fi>
-Date: Tue, 19 Jul 2022 20:01:10 +0300
-Subject: [PATCH] m-si-link: don't wait for establish before activation +
- cleanup links
-
-SiLink should not wait for WpLinks becoming ESTABLISHED, before
-activation. That flag shows whether a link has moved away from the
-"init" state, however, links to e.g. Pulseaudio corked streams can stay
-in "init" state until uncorking. This causes trouble for policies,
-which needlessly wait for such links to establish.
-
-The WpLink objects may also be kept alive by other referents, and
-just unrefing them does not necessarily destroy the PW objects.
-
-Activate SiLink even if the WpLink is still in "init" state. It's enough
-that the link otherwise successfully establishes.
-
-At dispose time, explicitly request destroying the WpLinks that were
-created by the SiLink, to ensure they are removed even if there's
-something else referring to them.
---- a/modules/module-si-standard-link.c
-+++ b/modules/module-si-standard-link.c
-@@ -132,6 +132,27 @@ si_standard_link_get_associated_proxy (WpSessionItem * item, GType proxy_type)
- return NULL;
- }
-
-+static void
-+request_destroy_link (gpointer data, gpointer user_data)
-+{
-+ WpLink *link = WP_LINK (data);
-+
-+ wp_global_proxy_request_destroy (WP_GLOBAL_PROXY (link));
-+}
-+
-+static void
-+clear_node_links (GPtrArray **node_links_p)
-+{
-+ /*
-+ * Something else (eg. object managers) may be keeping the WpLink
-+ * objects alive. Deactive the links now, to destroy the PW objects.
-+ */
-+ if (*node_links_p)
-+ g_ptr_array_foreach (*node_links_p, request_destroy_link, NULL);
-+
-+ g_clear_pointer (node_links_p, g_ptr_array_unref);
-+}
-+
- static void
- si_standard_link_disable_active (WpSessionItem *si)
- {
-@@ -154,7 +175,8 @@ si_standard_link_disable_active (WpSessionItem *si)
- WP_SI_LINKABLE (si_in));
- }
-
-- g_clear_pointer (&self->node_links, g_ptr_array_unref);
-+ clear_node_links (&self->node_links);
-+
- self->n_active_links = 0;
- self->n_failed_links = 0;
- self->n_async_ops_wait = 0;
-@@ -168,7 +190,7 @@ on_link_activated (WpObject * proxy, GAsyncResult * res,
- WpTransition * transition)
- {
- WpSiStandardLink *self = wp_transition_get_source_object (transition);
-- guint len = self->node_links->len;
-+ guint len = self->node_links ? self->node_links->len : 0;
-
- /* Count the number of failed and active links */
- if (wp_object_activate_finish (proxy, res, NULL))
-@@ -182,7 +204,7 @@ on_link_activated (WpObject * proxy, GAsyncResult * res,
-
- /* We only active feature if all links activated successfully */
- if (self->n_failed_links > 0) {
-- g_clear_pointer (&self->node_links, g_ptr_array_unref);
-+ clear_node_links (&self->node_links);
- wp_transition_return_error (transition, g_error_new (
- WP_DOMAIN_LIBRARY, WP_LIBRARY_ERROR_OPERATION_FAILED,
- "%d of %d PipeWire links failed to activate",
-@@ -251,7 +273,7 @@ create_links (WpSiStandardLink * self, WpTransition * transition,
- /* Clear old links if any */
- self->n_active_links = 0;
- self->n_failed_links = 0;
-- g_clear_pointer (&self->node_links, g_ptr_array_unref);
-+ clear_node_links (&self->node_links);
-
- /* tuple format:
- uint32 node_id;
-@@ -327,7 +349,7 @@ create_links (WpSiStandardLink * self, WpTransition * transition,
-
- /* activate to ensure it is created without errors */
- wp_object_activate_closure (WP_OBJECT (link),
-- WP_OBJECT_FEATURES_ALL, NULL,
-+ WP_OBJECT_FEATURES_ALL & ~WP_LINK_FEATURE_ESTABLISHED, NULL,
- g_cclosure_new_object (
- (GCallback) on_link_activated, G_OBJECT (transition)));
- }
-GitLab
diff --git a/media-video/wireplumber/wireplumber-0.4.11-r3.ebuild b/media-video/wireplumber/wireplumber-0.4.11-r3.ebuild
deleted file mode 100644
index 4904287cdb8b..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.11-r3.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# 1. Please regularly check (even at the point of bumping) Fedora's packaging
-# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide
-#
-# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things
-# continue to move quickly. It's not uncommon for fixes to be made shortly
-# after releases.
-
-LUA_COMPAT=( lua5-{3,4} )
-
-inherit lua-single meson systemd
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git"
- EGIT_BRANCH="master"
- inherit git-r3
-else
- SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.gz"
- KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
-fi
-
-DESCRIPTION="Replacement for pipewire-media-session"
-HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber"
-
-LICENSE="MIT"
-SLOT="0/0.4"
-IUSE="elogind system-service systemd test"
-
-REQUIRED_USE="
- ${LUA_REQUIRED_USE}
- ?? ( elogind systemd )
- system-service? ( systemd )
-"
-
-RESTRICT="!test? ( test )"
-
-# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building
-BDEPEND="
- dev-libs/glib
- dev-util/gdbus-codegen
- dev-util/glib-utils
- sys-devel/gettext
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.53-r1:=
- virtual/libintl
- elogind? ( sys-auth/elogind )
- systemd? ( sys-apps/systemd )
-"
-
-# Any dev-lua/* deps get declared like this inside RDEPEND:
-# $(lua_gen_cond_dep '
-# dev-lua/<NAME>[${LUA_USEDEP}]
-# ')
-RDEPEND="${DEPEND}
- system-service? (
- acct-user/pipewire
- acct-group/pipewire
- )
-"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.4.10-config-disable-sound-server-parts.patch # defer enabling sound server parts to media-video/pipewire
- "${FILESDIR}"/${P}-alsa-lua-crash.patch
- "${FILESDIR}"/${P}-dbus-reconnect-crash.patch
- "${FILESDIR}"/${P}-loop.patch
-)
-
-src_configure() {
- local emesonargs=(
- -Ddoc=disabled # Ebuild not wired up yet (Sphinx, Doxygen?)
- -Dintrospection=disabled # Only used for Sphinx doc generation
- -Dsystem-lua=true # We always unbundle everything we can
- -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version))
- $(meson_feature elogind)
- $(meson_feature systemd)
- $(meson_use system-service systemd-system-service)
- $(meson_use systemd systemd-user-service)
- -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir)
- -Dsystemd-user-unit-dir=$(systemd_get_userunitdir)
- $(meson_use test tests)
- )
-
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- # We copy the default config, so that Gentoo tools can pick up on any
- # updates and /etc does not end up with stale overrides.
- # If a reflinking CoW filesystem is used (e.g. Btrfs), then the files
- # will not actually get stored twice until modified.
- insinto /etc
- doins -r "${ED}"/usr/share/wireplumber
-}
-
-pkg_postinst() {
- if systemd_is_booted ; then
- ewarn "pipewire-media-session.service is no longer installed. You must switch"
- ewarn "to wireplumber.service user unit before your next logout/reboot:"
- ewarn "systemctl --user disable pipewire-media-session.service"
- ewarn "systemctl --user --force enable wireplumber.service"
- else
- ewarn "Switch to WirePlumber will happen the next time gentoo-pipewire-launcher"
- ewarn "is started (a replacement for directly calling pipewire binary)."
- ewarn
- ewarn "Please ensure that ${EROOT}/etc/pipewire/pipewire.conf either does not exist"
- ewarn "or, if it does exist, that any reference to"
- ewarn "${EROOT}/usr/bin/pipewire-media-session is commented out (begins with a #)."
- fi
- if use system-service; then
- ewarn
- ewarn "WARNING: you have enabled the system-service USE flag, which installs"
- ewarn "the system-wide systemd units that enable WirePlumber to run as a system"
- ewarn "service. This is more than likely NOT what you want. You are strongly"
- ewarn "advised not to enable this mode and instead stick with systemd user"
- ewarn "units. The default configuration files will likely not work out of"
- ewarn "box, and you are on your own with configuration."
- ewarn
- fi
-}