summaryrefslogtreecommitdiff
path: root/media-video/wireplumber
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-12-10 09:20:14 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-12-10 09:20:14 +0000
commitc15acf374d4b25ba5afcb52435da6090f2d98a20 (patch)
treef3be21d2a949edee4af8b18e1d9ae7501ae5f186 /media-video/wireplumber
parentcaf79cb4f7c4d5f7cce488d8f50dfb98ddbd09ab (diff)
gentoo auto-resync : 10:12:2022 - 09:20:14
Diffstat (limited to 'media-video/wireplumber')
-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
5 files changed, 0 insertions, 361 deletions
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
-}