* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2021-09-15 17:06 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2021-09-15 17:06 UTC (permalink / raw
To: gentoo-commits
commit: 282db130198575413021b639ded1afcec46a8cf0
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Wed Sep 15 11:35:50 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 15 17:06:11 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=282db130
media-video/wireplumber: fix errors on missing BlueZ and V4L
Two of the commits have not yet been accepted upstream but they
were prepared with the help of upstream and should be in acceptably
good quality to use until a fixed release is made.
https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/214
Thanks-to: Pascal Flöschel (initial bug report)
Thanks-to: George Kiagiadakis <george.kiagiadakis <AT> collabora.com>
Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=994085
Closes: https://bugs.gentoo.org/813043
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Closes: https://github.com/gentoo/gentoo/pull/22290
Signed-off-by: Sam James <sam <AT> gentoo.org>
...4.2-bluez-add-basic-check-for-nil-monitor.patch | 42 +++++++++
...ice-demote-missing-SPA-warning-to-message.patch | 28 ++++++
...ix-object-constructors-to-fail-gracefully.patch | 100 +++++++++++++++++++++
...0.4.2-v4l-add-basic-check-for-nil-monitor.patch | 42 +++++++++
.../wireplumber/wireplumber-0.4.2-r1.ebuild | 6 +-
5 files changed, 217 insertions(+), 1 deletion(-)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch b/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
new file mode 100644
index 00000000000..a519e421282
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
@@ -0,0 +1,42 @@
+From 32d96189b807ab53317a33217c661ce4b1ac8e49 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
+ <89q1r14hd@relay.firefox.com>
+Date: Wed, 15 Sep 2021 12:21:40 +0300
+Subject: [PATCH 3/5] bluez: add basic check for nil monitor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+If PipeWire is built without Bluetooth support, then
+
+`monitor = SpaDevice("api.bluez5.enum.dbus", monitor_props)`
+
+will result in a nil monitor. This commit adds a basic sanity check
+to avoid further using the nil variable.
+
+Thanks-to: Pascal Flöschel (initial bug report)
+Thanks-to: George Kiagiadakis <george.kiagiadakis@collabora.com>
+Bug: https://bugs.gentoo.org/813043
+---
+ src/scripts/monitors/bluez.lua | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/scripts/monitors/bluez.lua b/src/scripts/monitors/bluez.lua
+index fc229fa..4066536 100644
+--- a/src/scripts/monitors/bluez.lua
++++ b/src/scripts/monitors/bluez.lua
+@@ -129,5 +129,9 @@ local monitor_props = config.properties or {}
+ monitor_props["api.bluez5.connection-info"] = true
+
+ monitor = SpaDevice("api.bluez5.enum.dbus", monitor_props)
+-monitor:connect("create-object", createDevice)
+-monitor:activate(Feature.SpaDevice.ENABLED)
++if monitor then
++ monitor:connect("create-object", createDevice)
++ monitor:activate(Feature.SpaDevice.ENABLED)
++else
++ Log.message("PipeWire's BlueZ SPA missing or broken. Bluetooth not supported.")
++end
+--
+2.33.0
+
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch b/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
new file mode 100644
index 00000000000..7653de28bbb
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
@@ -0,0 +1,28 @@
+From 05334c1ec72af68f915ea18e32b230857918f600 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
+ <89q1r14hd@relay.firefox.com>
+Date: Wed, 15 Sep 2021 13:23:45 +0300
+Subject: [PATCH 5/5] lib/wp/device: demote missing SPA warning to message
+
+Warnings can be scary, so best not to scare users with what's likely
+intentional omission of a particular SPA plugin (currently V4L & BlueZ).
+---
+ lib/wp/device.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/wp/device.c b/lib/wp/device.c
+index f0c32af..9a0b995 100644
+--- a/lib/wp/device.c
++++ b/lib/wp/device.c
+@@ -617,7 +617,7 @@ wp_spa_device_new_from_spa_factory (WpCore * core,
+ handle = pw_context_load_spa_handle (pw_context, factory_name,
+ props ? wp_properties_peek_dict (props) : NULL);
+ if (!handle) {
+- wp_warning ("SPA handle '%s' could not be loaded; is it installed?",
++ wp_message ("SPA handle '%s' could not be loaded; is it installed?",
+ factory_name);
+ return NULL;
+ }
+--
+2.33.0
+
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch b/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
new file mode 100644
index 00000000000..2bb3a8d653e
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
@@ -0,0 +1,100 @@
+From 2a5f9c51f2f8dd29cd19a14f165ca2b425a172fc Mon Sep 17 00:00:00 2001
+From: George Kiagiadakis <george.kiagiadakis@collabora.com>
+Date: Wed, 15 Sep 2021 12:51:47 +0300
+Subject: [PATCH 2/5] lua/api: fix object constructors to fail gracefully
+
+---
+ modules/module-lua-scripting/api.c | 35 ++++++++++++++++++------------
+ 1 file changed, 21 insertions(+), 14 deletions(-)
+
+diff --git a/modules/module-lua-scripting/api.c b/modules/module-lua-scripting/api.c
+index 5691b63..2830477 100644
+--- a/modules/module-lua-scripting/api.c
++++ b/modules/module-lua-scripting/api.c
+@@ -836,8 +836,9 @@ device_new (lua_State *L)
+
+ WpDevice *d = wp_device_new_from_factory (get_wp_export_core (L),
+ factory, properties);
+- wplua_pushobject (L, d);
+- return 1;
++ if (d)
++ wplua_pushobject (L, d);
++ return d ? 1 : 0;
+ }
+
+ /* WpSpaDevice */
+@@ -855,8 +856,9 @@ spa_device_new (lua_State *L)
+
+ WpSpaDevice *d = wp_spa_device_new_from_spa_factory (get_wp_export_core (L),
+ factory, properties);
+- wplua_pushobject (L, d);
+- return 1;
++ if (d)
++ wplua_pushobject (L, d);
++ return d ? 1 : 0;
+ }
+
+ static int
+@@ -903,8 +905,9 @@ node_new (lua_State *L)
+
+ WpNode *d = wp_node_new_from_factory (get_wp_export_core (L),
+ factory, properties);
+- wplua_pushobject (L, d);
+- return 1;
++ if (d)
++ wplua_pushobject (L, d);
++ return d ? 1 : 0;
+ }
+
+ static int
+@@ -1011,8 +1014,9 @@ impl_node_new (lua_State *L)
+
+ WpImplNode *d = wp_impl_node_new_from_pw_factory (get_wp_export_core (L),
+ factory, properties);
+- wplua_pushobject (L, d);
+- return 1;
++ if (d)
++ wplua_pushobject (L, d);
++ return d ? 1 : 0;
+ }
+
+ /* Port */
+@@ -1045,8 +1049,9 @@ link_new (lua_State *L)
+ }
+
+ WpLink *l = wp_link_new_from_factory (get_wp_core (L), factory, properties);
+- wplua_pushobject (L, l);
+- return 1;
++ if (l)
++ wplua_pushobject (L, l);
++ return l ? 1 : 0;
+ }
+
+ /* Client */
+@@ -1124,8 +1129,9 @@ session_item_new (lua_State *L)
+ {
+ const char *type = luaL_checkstring (L, 1);
+ WpSessionItem *si = wp_session_item_make (get_wp_core (L), type);
+- wplua_pushobject (L, si);
+- return 1;
++ if (si)
++ wplua_pushobject (L, si);
++ return si ? 1 : 0;
+ }
+
+ static int
+@@ -1135,8 +1141,9 @@ session_item_get_associated_proxy (lua_State *L)
+ const char *typestr = luaL_checkstring (L, 2);
+ WpProxy *proxy = wp_session_item_get_associated_proxy (si,
+ parse_gtype (typestr));
+- wplua_pushobject (L, proxy);
+- return 1;
++ if (proxy)
++ wplua_pushobject (L, proxy);
++ return proxy ? 1 : 0;
+ }
+
+ static int
+--
+2.33.0
+
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch b/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
new file mode 100644
index 00000000000..f7fee3d11e4
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
@@ -0,0 +1,42 @@
+From 3b41df35a885b4db04528d839b87e88bf1345240 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
+ <89q1r14hd@relay.firefox.com>
+Date: Wed, 15 Sep 2021 13:08:04 +0300
+Subject: [PATCH 4/5] v4l: add basic check for nil monitor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+If PipeWire is built without V4L support, then
+
+`monitor = SpaDevice("api.v4l2.enum.udev", config.properties or {})`
+
+will result in a nil monitor. This commit adds a basic sanity check
+to avoid further using the nil variable.
+
+Thanks-to: Pascal Flöschel (initial bug report)
+Thanks-to: George Kiagiadakis <george.kiagiadakis@collabora.com>
+Bug: https://bugs.gentoo.org/813043
+---
+ src/scripts/monitors/v4l2.lua | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/scripts/monitors/v4l2.lua b/src/scripts/monitors/v4l2.lua
+index e698cd7..fd9a20d 100644
+--- a/src/scripts/monitors/v4l2.lua
++++ b/src/scripts/monitors/v4l2.lua
+@@ -131,5 +131,9 @@ function createDevice(parent, id, type, factory, properties)
+ end
+
+ monitor = SpaDevice("api.v4l2.enum.udev", config.properties or {})
+-monitor:connect("create-object", createDevice)
+-monitor:activate(Feature.SpaDevice.ENABLED)
++if monitor then
++ monitor:connect("create-object", createDevice)
++ monitor:activate(Feature.SpaDevice.ENABLED)
++else
++ Log.message("PipeWire's V4L SPA missing or broken. Video4Linux not supported.")
++end
+--
+2.33.0
+
diff --git a/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild
index ed677c4b5aa..a52dbd45471 100644
--- a/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild
@@ -51,7 +51,11 @@ RDEPEND="${DEPEND}"
DOCS=( {NEWS,README}.rst )
PATCHES=(
- "${FILESDIR}"/${PN}-0.4.2-meson-Build-tests-conditionally.patch
+ "${FILESDIR}"/${PN}-0.4.2-meson-Build-tests-conditionally.patch
+ "${FILESDIR}"/${PN}-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
+ "${FILESDIR}"/${PN}-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
+ "${FILESDIR}"/${PN}-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
+ "${FILESDIR}"/${PN}-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
)
src_configure() {
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2021-12-01 19:49 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2021-12-01 19:49 UTC (permalink / raw
To: gentoo-commits
commit: 3162c02c529bd8055e686e6f45cb7a6ef0b36151
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Fri Nov 19 08:01:47 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 1 19:49:40 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3162c02c
media-video/wireplumber: clean up the old 0.4.2-r1 ebuild
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 -
...4.2-bluez-add-basic-check-for-nil-monitor.patch | 42 ---------
...ice-demote-missing-SPA-warning-to-message.patch | 28 ------
...ix-object-constructors-to-fail-gracefully.patch | 100 ---------------------
...ber-0.4.2-meson-Build-tests-conditionally.patch | 41 ---------
...0.4.2-v4l-add-basic-check-for-nil-monitor.patch | 42 ---------
.../wireplumber/wireplumber-0.4.2-r1.ebuild | 89 ------------------
7 files changed, 343 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index 16e6431c7e3a..7e7ad56f15da 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,2 +1 @@
-DIST wireplumber-0.4.2.tar.gz 332499 BLAKE2B 4747ae405a824b019415188ff1a586d32fc2e97aba6777cd1e403aadf0e44458156d1f8b6dbc706b812a7ea8c873d0f506f2b42817d1bc5312874530edaf7234 SHA512 8ded43fba5de58068516558918d49c86be7d67330e8a14e735561fefadba5e27952d556987b7304dead52b4e2f72a7d9626da0170e768c4702dd164840b08e3c
DIST wireplumber-0.4.5.tar.gz 345035 BLAKE2B 177984901790228d8ddeb8ee2a548eb53db07c8077734590c3f964df36cfa47a4099e049ae9a19a136f4147c75b7122359a73b8387a641768f71484b9c4ab119 SHA512 b0d5962e7a83709cc3115fbf0a04b63660085aeea2ebda6d78d692065ccb193cea8b44bb506fa440cf0b88bfae71a4f69a192cd6cba885ebf3c9270bea50c67a
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch b/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
deleted file mode 100644
index a519e4212828..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 32d96189b807ab53317a33217c661ce4b1ac8e49 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
- <89q1r14hd@relay.firefox.com>
-Date: Wed, 15 Sep 2021 12:21:40 +0300
-Subject: [PATCH 3/5] bluez: add basic check for nil monitor
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If PipeWire is built without Bluetooth support, then
-
-`monitor = SpaDevice("api.bluez5.enum.dbus", monitor_props)`
-
-will result in a nil monitor. This commit adds a basic sanity check
-to avoid further using the nil variable.
-
-Thanks-to: Pascal Flöschel (initial bug report)
-Thanks-to: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Bug: https://bugs.gentoo.org/813043
----
- src/scripts/monitors/bluez.lua | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/scripts/monitors/bluez.lua b/src/scripts/monitors/bluez.lua
-index fc229fa..4066536 100644
---- a/src/scripts/monitors/bluez.lua
-+++ b/src/scripts/monitors/bluez.lua
-@@ -129,5 +129,9 @@ local monitor_props = config.properties or {}
- monitor_props["api.bluez5.connection-info"] = true
-
- monitor = SpaDevice("api.bluez5.enum.dbus", monitor_props)
--monitor:connect("create-object", createDevice)
--monitor:activate(Feature.SpaDevice.ENABLED)
-+if monitor then
-+ monitor:connect("create-object", createDevice)
-+ monitor:activate(Feature.SpaDevice.ENABLED)
-+else
-+ Log.message("PipeWire's BlueZ SPA missing or broken. Bluetooth not supported.")
-+end
---
-2.33.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch b/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
deleted file mode 100644
index 7653de28bbbb..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 05334c1ec72af68f915ea18e32b230857918f600 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
- <89q1r14hd@relay.firefox.com>
-Date: Wed, 15 Sep 2021 13:23:45 +0300
-Subject: [PATCH 5/5] lib/wp/device: demote missing SPA warning to message
-
-Warnings can be scary, so best not to scare users with what's likely
-intentional omission of a particular SPA plugin (currently V4L & BlueZ).
----
- lib/wp/device.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/wp/device.c b/lib/wp/device.c
-index f0c32af..9a0b995 100644
---- a/lib/wp/device.c
-+++ b/lib/wp/device.c
-@@ -617,7 +617,7 @@ wp_spa_device_new_from_spa_factory (WpCore * core,
- handle = pw_context_load_spa_handle (pw_context, factory_name,
- props ? wp_properties_peek_dict (props) : NULL);
- if (!handle) {
-- wp_warning ("SPA handle '%s' could not be loaded; is it installed?",
-+ wp_message ("SPA handle '%s' could not be loaded; is it installed?",
- factory_name);
- return NULL;
- }
---
-2.33.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch b/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
deleted file mode 100644
index 2bb3a8d653e8..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From 2a5f9c51f2f8dd29cd19a14f165ca2b425a172fc Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Wed, 15 Sep 2021 12:51:47 +0300
-Subject: [PATCH 2/5] lua/api: fix object constructors to fail gracefully
-
----
- modules/module-lua-scripting/api.c | 35 ++++++++++++++++++------------
- 1 file changed, 21 insertions(+), 14 deletions(-)
-
-diff --git a/modules/module-lua-scripting/api.c b/modules/module-lua-scripting/api.c
-index 5691b63..2830477 100644
---- a/modules/module-lua-scripting/api.c
-+++ b/modules/module-lua-scripting/api.c
-@@ -836,8 +836,9 @@ device_new (lua_State *L)
-
- WpDevice *d = wp_device_new_from_factory (get_wp_export_core (L),
- factory, properties);
-- wplua_pushobject (L, d);
-- return 1;
-+ if (d)
-+ wplua_pushobject (L, d);
-+ return d ? 1 : 0;
- }
-
- /* WpSpaDevice */
-@@ -855,8 +856,9 @@ spa_device_new (lua_State *L)
-
- WpSpaDevice *d = wp_spa_device_new_from_spa_factory (get_wp_export_core (L),
- factory, properties);
-- wplua_pushobject (L, d);
-- return 1;
-+ if (d)
-+ wplua_pushobject (L, d);
-+ return d ? 1 : 0;
- }
-
- static int
-@@ -903,8 +905,9 @@ node_new (lua_State *L)
-
- WpNode *d = wp_node_new_from_factory (get_wp_export_core (L),
- factory, properties);
-- wplua_pushobject (L, d);
-- return 1;
-+ if (d)
-+ wplua_pushobject (L, d);
-+ return d ? 1 : 0;
- }
-
- static int
-@@ -1011,8 +1014,9 @@ impl_node_new (lua_State *L)
-
- WpImplNode *d = wp_impl_node_new_from_pw_factory (get_wp_export_core (L),
- factory, properties);
-- wplua_pushobject (L, d);
-- return 1;
-+ if (d)
-+ wplua_pushobject (L, d);
-+ return d ? 1 : 0;
- }
-
- /* Port */
-@@ -1045,8 +1049,9 @@ link_new (lua_State *L)
- }
-
- WpLink *l = wp_link_new_from_factory (get_wp_core (L), factory, properties);
-- wplua_pushobject (L, l);
-- return 1;
-+ if (l)
-+ wplua_pushobject (L, l);
-+ return l ? 1 : 0;
- }
-
- /* Client */
-@@ -1124,8 +1129,9 @@ session_item_new (lua_State *L)
- {
- const char *type = luaL_checkstring (L, 1);
- WpSessionItem *si = wp_session_item_make (get_wp_core (L), type);
-- wplua_pushobject (L, si);
-- return 1;
-+ if (si)
-+ wplua_pushobject (L, si);
-+ return si ? 1 : 0;
- }
-
- static int
-@@ -1135,8 +1141,9 @@ session_item_get_associated_proxy (lua_State *L)
- const char *typestr = luaL_checkstring (L, 2);
- WpProxy *proxy = wp_session_item_get_associated_proxy (si,
- parse_gtype (typestr));
-- wplua_pushobject (L, proxy);
-- return 1;
-+ if (proxy)
-+ wplua_pushobject (L, proxy);
-+ return proxy ? 1 : 0;
- }
-
- static int
---
-2.33.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-meson-Build-tests-conditionally.patch b/media-video/wireplumber/files/wireplumber-0.4.2-meson-Build-tests-conditionally.patch
deleted file mode 100644
index dab53c71bf4a..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.2-meson-Build-tests-conditionally.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 3b24c419b497c283e64df23b3b5eecd4c3d51927 Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Tue, 14 Sep 2021 05:07:41 +0100
-Subject: [PATCH 1/5] meson: Build tests conditionally
-
-It's useful downstream to be able to control building
-tests, as there's not much use building them if we're
-not going to run them.
-
-Signed-off-by: Sam James <sam@gentoo.org>
----
- meson.build | 5 ++++-
- meson_options.txt | 2 ++
- 2 files changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 3712a82..5f87ade 100644
---- a/meson.build
-+++ b/meson.build
-@@ -109,4 +109,7 @@ subdir('lib')
- subdir('docs')
- subdir('modules')
- subdir('src')
--subdir('tests')
-+
-+if get_option('tests')
-+ subdir('tests')
-+endif
-diff --git a/meson_options.txt b/meson_options.txt
-index a7a0a89..4008864 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,3 +24,5 @@ option('systemd-user-unit-dir',
- description : 'Directory for user systemd units')
- option('glib-supp', type : 'string', value : '',
- description: 'The glib.supp valgrind suppressions file to be used when running valgrind')
-+option('tests', type : 'boolean', value : 'true',
-+ description : 'Build the test suite')
---
-2.33.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch b/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
deleted file mode 100644
index f7fee3d11e4a..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 3b41df35a885b4db04528d839b87e88bf1345240 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Nikl=C4=81vs=20Ko=C4=BCes=C5=86ikovs?=
- <89q1r14hd@relay.firefox.com>
-Date: Wed, 15 Sep 2021 13:08:04 +0300
-Subject: [PATCH 4/5] v4l: add basic check for nil monitor
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If PipeWire is built without V4L support, then
-
-`monitor = SpaDevice("api.v4l2.enum.udev", config.properties or {})`
-
-will result in a nil monitor. This commit adds a basic sanity check
-to avoid further using the nil variable.
-
-Thanks-to: Pascal Flöschel (initial bug report)
-Thanks-to: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Bug: https://bugs.gentoo.org/813043
----
- src/scripts/monitors/v4l2.lua | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/scripts/monitors/v4l2.lua b/src/scripts/monitors/v4l2.lua
-index e698cd7..fd9a20d 100644
---- a/src/scripts/monitors/v4l2.lua
-+++ b/src/scripts/monitors/v4l2.lua
-@@ -131,5 +131,9 @@ function createDevice(parent, id, type, factory, properties)
- end
-
- monitor = SpaDevice("api.v4l2.enum.udev", config.properties or {})
--monitor:connect("create-object", createDevice)
--monitor:activate(Feature.SpaDevice.ENABLED)
-+if monitor then
-+ monitor:connect("create-object", createDevice)
-+ monitor:activate(Feature.SpaDevice.ENABLED)
-+else
-+ Log.message("PipeWire's V4L SPA missing or broken. Video4Linux not supported.")
-+end
---
-2.33.0
-
diff --git a/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild
deleted file mode 100644
index dbee3e92073a..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.2-r1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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 ~riscv"
-fi
-
-DESCRIPTION="Replacement for pipewire-media-session"
-HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber"
-
-LICENSE="MIT"
-SLOT="0/0.4"
-IUSE="systemd test"
-
-REQUIRED_USE="${LUA_REQUIRED_USE}"
-
-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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.32
- virtual/libc
- 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}"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.4.2-meson-Build-tests-conditionally.patch
- "${FILESDIR}"/${PN}-0.4.2-lua-api-fix-object-constructors-to-fail-gracefully.patch
- "${FILESDIR}"/${PN}-0.4.2-bluez-add-basic-check-for-nil-monitor.patch
- "${FILESDIR}"/${PN}-0.4.2-v4l-add-basic-check-for-nil-monitor.patch
- "${FILESDIR}"/${PN}-0.4.2-lib-wp-device-demote-missing-SPA-warning-to-message.patch
-)
-
-src_configure() {
- local emesonargs=(
- -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 systemd)
- -Dsystemd-system-service=false # Matches upstream
- $(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
-}
-
-pkg_postinst() {
- if systemd_is_booted ; then
- elog "To replace media-session with WirePlumber immediately:"
- elog "systemctl --user disable --now pipewire-media-session.service"
- elog "systemctl --user enable --now wireplumber.service"
- else
- elog "OpenRC users need to copy ${EROOT}/usr/share/pipewire/pipewire.conf"
- elog "to ${EROOT}/etc/pipewire/pipewire.conf and in it replace"
- elog "${EROOT}/usr/bin/pipewire-media-session with ${EROOT}/usr/bin/wireplumber"
- elog "The switch to WirePlumber will happen the next time pipewire is started."
- fi
- elog
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-01-01 3:49 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-01-01 3:49 UTC (permalink / raw
To: gentoo-commits
commit: 3961737db6b965b7ba0ca927c91c41f8f2becfe0
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Fri Dec 31 08:04:58 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 1 03:47:27 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3961737d
media-video/wireplumber: add patch that should fix remote clients
Two Gentoo users have reported issues with getting networked protocols
working. The patch added in this wireplumber-0.4.5-r3 revbump should
fix their issues, as reported by one of them.
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
...-config-add-restricted-access-permissions.patch | 36 ++++++++
.../wireplumber/wireplumber-0.4.5-r3.ebuild | 102 +++++++++++++++++++++
2 files changed, 138 insertions(+)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch b/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch
new file mode 100644
index 000000000000..213283131e0b
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch
@@ -0,0 +1,36 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/703c35cfd44265e81595db29eed081c8785cda87
+
+From 703c35cfd44265e81595db29eed081c8785cda87 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Mon, 29 Nov 2021 09:25:18 +0100
+Subject: [PATCH] access-config: add restricted access permissions
+
+When a pulse client connects with TCP, it is given the 'restricted'
+access policy. Assign 'rx' permissions for those clients instead of
+blocking forever.
+
+See pipewire#1863
+---
+ src/config/main.lua.d/50-default-access-config.lua | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/config/main.lua.d/50-default-access-config.lua b/src/config/main.lua.d/50-default-access-config.lua
+index 0282d4aa..6cf18bed 100644
+--- a/src/config/main.lua.d/50-default-access-config.lua
++++ b/src/config/main.lua.d/50-default-access-config.lua
+@@ -20,4 +20,12 @@ default_access.rules = {
+ },
+ default_permissions = "rx",
+ },
++ {
++ matches = {
++ {
++ { "pipewire.access", "=", "restricted" },
++ },
++ },
++ default_permissions = "rx",
++ },
+ }
+--
+GitLab
+
diff --git a/media-video/wireplumber/wireplumber-0.4.5-r3.ebuild b/media-video/wireplumber/wireplumber-0.4.5-r3.ebuild
new file mode 100644
index 000000000000..599aed0c155c
--- /dev/null
+++ b/media-video/wireplumber/wireplumber-0.4.5-r3.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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"
+
+ # One commit is in git, the rest are in a PR which should be merged soon
+ # bug #817881
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.4.5-endianness-fixes.patch.bz2"
+ KEYWORDS="~amd64 ~arm ~arm64 ~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 systemd test"
+
+REQUIRED_USE="
+ ${LUA_REQUIRED_USE}
+ ?? ( elogind 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
+"
+
+DEPEND="
+ ${LUA_DEPS}
+ >=dev-libs/glib-2.62
+ >=media-video/pipewire-0.3.42:=
+ virtual/libc
+ 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}"
+
+DOCS=( {NEWS,README}.rst )
+
+PATCHES=(
+ "${FILESDIR}"/${P}-m-reserve-device-replace-the-hash-table-key-on-new-i.patch
+ "${FILESDIR}"/${P}-policy-node-wait-for-nodes-when-we-become-unlinked.patch
+ "${FILESDIR}"/${P}-lib-don-t-read-hidden-files-from-the-config-director.patch
+ "${FILESDIR}"/${P}-alsa-handle-the-release-requested-signal.patch
+ "${FILESDIR}"/${P}-access-config-add-restricted-access-permissions.patch
+ "${WORKDIR}"/${P}-endianness-fixes.patch
+)
+
+src_configure() {
+ local emesonargs=(
+ -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)
+ -Dsystemd-system-service=false # Matches upstream
+ $(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
+}
+
+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
+ ewarn
+}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-01-06 20:53 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-01-06 20:53 UTC (permalink / raw
To: gentoo-commits
commit: 9e7b319e7893e19fc4bb30a3351927cf61210d6f
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Thu Jan 6 18:59:36 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan 6 20:53:33 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e7b319e
media-video/wireplumber: bump to 0.4.6 and sync KEYWORDS for live
This commit adds WirePlumber 0.4.6 and synchronizes KEYWORDS of the live
ebuild with current keywording state by adding ~sparc (other BE arches
are already present), so that it's not accidentally lost.
Because one of the patches Gentoo applies to fix BE issues has been
upstreamed since 0.4.5 was released, this commit unpacks the old BE
fixes archive, removes the upstreamed parts and added the still missing
fixes as a regular patch in FILESDIR. They should be upstreamed shortly.
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Closes: https://github.com/gentoo/gentoo/pull/23644
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 +
.../files/wireplumber-0.4.6-endianness-fixes.patch | 229 +++++++++++++++++++++
...lumber-9999.ebuild => wireplumber-0.4.6.ebuild} | 6 +-
media-video/wireplumber/wireplumber-9999.ebuild | 2 +-
4 files changed, 236 insertions(+), 2 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index 55ce53511807..5b354c8484df 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,2 +1,3 @@
DIST wireplumber-0.4.5-endianness-fixes.patch.bz2 2341 BLAKE2B 225b164a4624128b50fe8691e3577de9aea35e85ed0527c605a617227d96ad49646b658da120d118ab45fd1ed82ed188ad1073b0a8954632ec6501535d533009 SHA512 d5b64612aad6d462ffbc78a24cf50ebde83b29e183a6d169976f5d8fdb0ec3c72984135ee75d52f7d7e8261716482ca277c49cf5824028bfaf33e596857de97f
DIST wireplumber-0.4.5.tar.gz 345035 BLAKE2B 177984901790228d8ddeb8ee2a548eb53db07c8077734590c3f964df36cfa47a4099e049ae9a19a136f4147c75b7122359a73b8387a641768f71484b9c4ab119 SHA512 b0d5962e7a83709cc3115fbf0a04b63660085aeea2ebda6d78d692065ccb193cea8b44bb506fa440cf0b88bfae71a4f69a192cd6cba885ebf3c9270bea50c67a
+DIST wireplumber-0.4.6.tar.gz 357392 BLAKE2B 03942930b1eafb37071c0f38071567fb6117a9a64b91f064982eafa34a8662e1cba26b634db9c74a4e0bd0a8765d9b827ab2afd5e364c6377fa7ecbc7e32c5d1 SHA512 4b4b9aff6e0e6d7c567e20e4df533cfd16287f2e7498ae8533a9a4251066e6d0a9cd99e3da48f525bb2010053f7c9918fe09a5ade39c8830ec08c24292527684
diff --git a/media-video/wireplumber/files/wireplumber-0.4.6-endianness-fixes.patch b/media-video/wireplumber/files/wireplumber-0.4.6-endianness-fixes.patch
new file mode 100644
index 000000000000..9b8bba93a8ab
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.6-endianness-fixes.patch
@@ -0,0 +1,229 @@
+Bunch of patches from https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49
+Requires pipewire 0.3.42 for 03f0a7c9bac3e61126fc852e543b8ea254471eb7.
+
+--- a/tests/wp/spa-pod.c
++++ b/tests/wp/spa-pod.c
+@@ -6,6 +6,8 @@
+ * SPDX-License-Identifier: MIT
+ */
+
++#include <stdbool.h>
++
+ #include <wp/wp.h>
+
+ static void
+@@ -428,12 +430,12 @@ test_spa_pod_object (void)
+ wp_spa_type_name (wp_spa_pod_get_spa_type (pod)));
+
+ const char *id_name;
+- gboolean mute = TRUE;
++ bool mute = true;
+ float vol = 0.0;
+ gint32 frequency;
+ const char *device;
+ gint64 device_fd;
+- gboolean custom = FALSE;
++ bool custom = false;
+ g_assert_true (wp_spa_pod_get_object (pod,
+ &id_name,
+ "mute", "b", &mute,
+@@ -475,12 +477,12 @@ test_spa_pod_object (void)
+ wp_spa_type_name (wp_spa_pod_get_spa_type (pod)));
+
+ const char *id_name;
+- gboolean mute = TRUE;
++ bool mute = true;
+ float vol = 0.0;
+ gint32 frequency;
+ const char *device;
+ gint64 device_fd;
+- gboolean custom = FALSE;
++ bool custom = false;
+ g_autoptr (WpSpaPodParser) p = wp_spa_pod_parser_new_object (pod, &id_name);
+ g_assert_nonnull (pod);
+ g_assert_true (wp_spa_pod_parser_get (p, "mute", "b", &mute, NULL));
+@@ -603,7 +605,7 @@ test_spa_pod_struct (void)
+ g_assert_true (wp_spa_pod_parser_get (p, "P", &value_object, NULL));
+ g_assert_nonnull (value_object);
+ const char *id_name;
+- gboolean mute = TRUE;
++ bool mute = true;
+
+ g_assert_true (wp_spa_pod_get_object (value_object,
+ &id_name,
+--- a/tests/wp/endpoint.c
++++ b/tests/wp/endpoint.c
+@@ -499,7 +499,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->proxy_endpoint), "Props", NULL);
+@@ -513,7 +513,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 1.0f, 0.001);
+- g_assert_cmpint (boolean_value, ==, FALSE);
++ g_assert_cmpint (boolean_value, ==, false);
+ }
+
+ /* setup change signals */
+@@ -541,7 +541,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->proxy_endpoint), "Props", NULL);
+@@ -556,14 +556,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, FALSE);
++ g_assert_cmpint (boolean_value, ==, false);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->impl_endpoint), "Props", NULL);
+@@ -577,14 +577,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, FALSE);
++ g_assert_cmpint (boolean_value, ==, false);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (endpoint->node), "Props", NULL);
+@@ -598,7 +598,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, FALSE);
++ g_assert_cmpint (boolean_value, ==, false);
+ }
+
+ /* change control on the impl */
+@@ -618,7 +618,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->proxy_endpoint), "Props", NULL);
+@@ -633,14 +633,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->impl_endpoint), "Props", NULL);
+@@ -654,14 +654,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (endpoint->node), "Props", NULL);
+@@ -675,7 +675,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.7f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+
+ /* change control on the node */
+@@ -695,7 +695,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->proxy_endpoint), "Props", NULL);
+@@ -709,14 +709,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.2f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (fixture->impl_endpoint), "Props", NULL);
+@@ -730,14 +730,14 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.2f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+ {
+ g_autoptr (WpIterator) iterator = NULL;
+ g_auto (GValue) item = G_VALUE_INIT;
+ g_autoptr (WpSpaPod) pod = NULL;
+ gfloat float_value = 0.0f;
+- gboolean boolean_value = TRUE;
++ bool boolean_value = true;
+
+ iterator = wp_pipewire_object_enum_params_sync (
+ WP_PIPEWIRE_OBJECT (endpoint->node), "Props", NULL);
+@@ -751,7 +751,7 @@ test_endpoint_with_props (TestEndpointFixture *fixture, gconstpointer data)
+ "mute", "b", &boolean_value,
+ NULL));
+ g_assert_cmpfloat_with_epsilon (float_value, 0.2f, 0.001);
+- g_assert_cmpint (boolean_value, ==, TRUE);
++ g_assert_cmpint (boolean_value, ==, true);
+ }
+
+ /* destroy impl endpoint */
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-0.4.6.ebuild
similarity index 95%
copy from media-video/wireplumber/wireplumber-9999.ebuild
copy to media-video/wireplumber/wireplumber-0.4.6.ebuild
index 2371a95d9c68..92ffe0cec0a2 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.6.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
else
SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="Replacement for pipewire-media-session"
@@ -54,6 +54,10 @@ RDEPEND="${DEPEND}"
DOCS=( {NEWS,README}.rst )
+PATCHES=(
+ "${FILESDIR}"/${P}-endianness-fixes.patch
+)
+
src_configure() {
local emesonargs=(
-Ddoc=disabled # Ebuild not wired up yet (Sphinx, Doxygen?)
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-9999.ebuild
index 2371a95d9c68..2e6c068b1ee9 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-9999.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
else
SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="Replacement for pipewire-media-session"
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-01-14 19:58 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-01-14 19:58 UTC (permalink / raw
To: gentoo-commits
commit: d20fea5200a3c33b1873f28cb48f7c3f658503d5
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Fri Jan 14 18:25:44 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 14 19:57:22 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d20fea52
media-video/wireplumber: add fix for Pro Audio breaking PA routing
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
...default-nodes-handle-nodes-without-Routes.patch | 48 ++++++++++++++++++++++
...er-0.4.7.ebuild => wireplumber-0.4.7-r1.ebuild} | 4 ++
2 files changed, 52 insertions(+)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch b/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
new file mode 100644
index 000000000000..aeb5ce067615
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
@@ -0,0 +1,48 @@
+From 211f1e6b6cd4898121e4c2b821fae4dea6cc3317 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Fri, 14 Jan 2022 16:28:48 +0100
+Subject: [PATCH] default-nodes: handle nodes without Routes
+
+When a node has not part of any EnumRoute, we must assume it is
+available.
+
+Fixes selection of Pro Audio nodes as default nodes.
+---
+ modules/module-default-nodes.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/modules/module-default-nodes.c b/modules/module-default-nodes.c
+index 32b2725b..15aadeaa 100644
+--- a/modules/module-default-nodes.c
++++ b/modules/module-default-nodes.c
+@@ -108,6 +108,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
+ gint dev_id = dev_id_str ? atoi (dev_id_str) : -1;
+ gint cpd = cpd_str ? atoi (cpd_str) : -1;
+ g_autoptr (WpDevice) device = NULL;
++ gint found = 0;
+
+ if (dev_id == -1 || cpd == -1)
+ return TRUE;
+@@ -168,6 +169,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
+ for (; wp_iterator_next (it, &v); g_value_unset (&v)) {
+ gint32 *d = (gint32 *)g_value_get_pointer (&v);
+ if (d && *d == cpd) {
++ found++;
+ if (route_avail != SPA_PARAM_AVAILABILITY_no)
+ return TRUE;
+ }
+@@ -175,6 +177,10 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
+ }
+ }
+ }
++ /* The node is part of a profile without routes so we assume it
++ * is available. This can happen for Pro Audio profiles */
++ if (found == 0)
++ return TRUE;
+
+ return FALSE;
+ }
+--
+GitLab
+
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/211f1e6b6cd4898121e4c2b821fae4dea6cc3317
diff --git a/media-video/wireplumber/wireplumber-0.4.7.ebuild b/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
similarity index 97%
rename from media-video/wireplumber/wireplumber-0.4.7.ebuild
rename to media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
index 2e6c068b1ee9..bbd72a311e17 100644
--- a/media-video/wireplumber/wireplumber-0.4.7.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
@@ -54,6 +54,10 @@ RDEPEND="${DEPEND}"
DOCS=( {NEWS,README}.rst )
+PATCHES=(
+ "$FILESDIR"/${P}-default-nodes-handle-nodes-without-Routes.patch
+)
+
src_configure() {
local emesonargs=(
-Ddoc=disabled # Ebuild not wired up yet (Sphinx, Doxygen?)
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-01-14 19:58 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-01-14 19:58 UTC (permalink / raw
To: gentoo-commits
commit: ae19cc717615c50a14dd0f0f6fa8fb697f82097e
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 14 19:58:02 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 14 19:58:02 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae19cc71
media-video/wireplumber: add patch references
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch | 3 +++
media-video/wireplumber/wireplumber-0.4.7-r1.ebuild | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch b/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
index aeb5ce067615..3451ea73f74b 100644
--- a/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
+++ b/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
@@ -1,3 +1,6 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/211f1e6b6cd4898121e4c2b821fae4dea6cc3317
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/163
+
From 211f1e6b6cd4898121e4c2b821fae4dea6cc3317 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Fri, 14 Jan 2022 16:28:48 +0100
diff --git a/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
index bbd72a311e17..a071b5b2b18f 100644
--- a/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.7-r1.ebuild
@@ -55,7 +55,7 @@ RDEPEND="${DEPEND}"
DOCS=( {NEWS,README}.rst )
PATCHES=(
- "$FILESDIR"/${P}-default-nodes-handle-nodes-without-Routes.patch
+ "${FILESDIR}"/${P}-default-nodes-handle-nodes-without-Routes.patch
)
src_configure() {
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-02-12 5:17 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-02-12 5:17 UTC (permalink / raw
To: gentoo-commits
commit: 5e618b3296b6dc8cd626ae8f3ce176276c48679e
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Fri Feb 11 19:54:31 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Feb 12 05:16:52 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e618b32
media-video/wireplumber: clean up versions too old for stabilization
WirePlumber 0.4.5-0.4.6 are both quite old and missing features,
compared to pipewire-media-session, and are therefore very unlikely to
be stabilized. If you're still using one of them, please let us know
what issue prevents you from using a newer version.
Bug: https://bugs.gentoo.org/827546
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 3 -
...-config-add-restricted-access-permissions.patch | 36 -------
...-alsa-handle-the-release-requested-signal.patch | 33 -------
...tes.lua-reevaluate-current-profile-only-f.patch | 81 ----------------
...ead-hidden-files-from-the-config-director.patch | 27 ------
...evice-replace-the-hash-table-key-on-new-i.patch | 47 ----------
...de-wait-for-nodes-when-we-become-unlinked.patch | 34 -------
...-find-best-linkable-if-default-one-cannot.patch | 48 ----------
...cy-node-fix-typo-when-finding-best-target.patch | 27 ------
...-schedule-a-rescan-without-timeout-if-def.patch | 50 ----------
...-different-architecture-errors-for-boolea.patch | 40 --------
.../wireplumber/wireplumber-0.4.5-r2.ebuild | 101 --------------------
.../wireplumber/wireplumber-0.4.5-r4.ebuild | 104 ---------------------
.../wireplumber/wireplumber-0.4.6-r1.ebuild | 97 -------------------
14 files changed, 728 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index b4b6614d716b..4a06cfabb7aa 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,5 +1,2 @@
-DIST wireplumber-0.4.5-endianness-fixes.patch.bz2 2341 BLAKE2B 225b164a4624128b50fe8691e3577de9aea35e85ed0527c605a617227d96ad49646b658da120d118ab45fd1ed82ed188ad1073b0a8954632ec6501535d533009 SHA512 d5b64612aad6d462ffbc78a24cf50ebde83b29e183a6d169976f5d8fdb0ec3c72984135ee75d52f7d7e8261716482ca277c49cf5824028bfaf33e596857de97f
-DIST wireplumber-0.4.5.tar.gz 345035 BLAKE2B 177984901790228d8ddeb8ee2a548eb53db07c8077734590c3f964df36cfa47a4099e049ae9a19a136f4147c75b7122359a73b8387a641768f71484b9c4ab119 SHA512 b0d5962e7a83709cc3115fbf0a04b63660085aeea2ebda6d78d692065ccb193cea8b44bb506fa440cf0b88bfae71a4f69a192cd6cba885ebf3c9270bea50c67a
-DIST wireplumber-0.4.6.tar.gz 357392 BLAKE2B 03942930b1eafb37071c0f38071567fb6117a9a64b91f064982eafa34a8662e1cba26b634db9c74a4e0bd0a8765d9b827ab2afd5e364c6377fa7ecbc7e32c5d1 SHA512 4b4b9aff6e0e6d7c567e20e4df533cfd16287f2e7498ae8533a9a4251066e6d0a9cd99e3da48f525bb2010053f7c9918fe09a5ade39c8830ec08c24292527684
DIST wireplumber-0.4.7.tar.gz 358718 BLAKE2B a7e708ccfb9e95b3f3e2ddc5dfc1dc437ac8a2831a7cdaf03f33af65fcce8fc27dd91b2a6f346e60f68873724c2d165616005b485189604863213b5d5565f894 SHA512 8b472e1b3c7a29045326b30989d24224e510f93021c1b5b6aee59859daf594e91a738b8ad9d46d24736b7de29624d9faff40e1061bd3eddc559c95e325bfbf19
DIST wireplumber-0.4.8.tar.gz 374824 BLAKE2B 7b5c8492d58be8b40c4c98bc807d031c453904a7df51c9b0d96c353c93018ba8cbd699b2c3c885defe7b5360df4256ad5e175015dc0102e5007853f6e0132cb7 SHA512 cb96b1d55be7e9d1433fc4a4fb4accce63f5f318a9a2b5cffc51a9f052765df777a0ba4ac73579771084295a73e6f05ed3a16a5fb9d0f5da4e183cfd74483c2c
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch b/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch
deleted file mode 100644
index 213283131e0b..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-access-config-add-restricted-access-permissions.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/703c35cfd44265e81595db29eed081c8785cda87
-
-From 703c35cfd44265e81595db29eed081c8785cda87 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Mon, 29 Nov 2021 09:25:18 +0100
-Subject: [PATCH] access-config: add restricted access permissions
-
-When a pulse client connects with TCP, it is given the 'restricted'
-access policy. Assign 'rx' permissions for those clients instead of
-blocking forever.
-
-See pipewire#1863
----
- src/config/main.lua.d/50-default-access-config.lua | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/src/config/main.lua.d/50-default-access-config.lua b/src/config/main.lua.d/50-default-access-config.lua
-index 0282d4aa..6cf18bed 100644
---- a/src/config/main.lua.d/50-default-access-config.lua
-+++ b/src/config/main.lua.d/50-default-access-config.lua
-@@ -20,4 +20,12 @@ default_access.rules = {
- },
- default_permissions = "rx",
- },
-+ {
-+ matches = {
-+ {
-+ { "pipewire.access", "=", "restricted" },
-+ },
-+ },
-+ default_permissions = "rx",
-+ },
- }
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-alsa-handle-the-release-requested-signal.patch b/media-video/wireplumber/files/wireplumber-0.4.5-alsa-handle-the-release-requested-signal.patch
deleted file mode 100644
index 511dc6df377e..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-alsa-handle-the-release-requested-signal.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From efd24584182903bf5ee4660a3b3360cc47ad895b Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 23 Nov 2021 13:17:29 +0100
-Subject: [PATCH] alsa: handle the release-requested signal
-
-Handle the release-requested signal by destroying the device and
-then calling release.
-
-Fixes pipewire/pipewire#1846
----
- src/scripts/monitors/alsa.lua | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/scripts/monitors/alsa.lua b/src/scripts/monitors/alsa.lua
-index 68c39d8..be4648e 100644
---- a/src/scripts/monitors/alsa.lua
-+++ b/src/scripts/monitors/alsa.lua
-@@ -287,6 +287,12 @@ function prepareDevice(parent, id, type, factory, properties)
- end
- end)
-
-+ rd:connect("release-requested", function (rd)
-+ Log.info("release requested")
-+ parent:store_managed_object(id, nil)
-+ rd:call("release")
-+ end)
-+
- if jack_device then
- rd:connect("notify::owner-name-changed", function (rd, pspec)
- if rd["state"] == "busy" and
---
-2.34.1
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-default-routes.lua-reevaluate-current-profile-only-f.patch b/media-video/wireplumber/files/wireplumber-0.4.5-default-routes.lua-reevaluate-current-profile-only-f.patch
deleted file mode 100644
index 423a1fcb6139..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-default-routes.lua-reevaluate-current-profile-only-f.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/22fd4292ab35786b09561508778ab49cc6488dc6
-
-From 22fd4292ab35786b09561508778ab49cc6488dc6 Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Tue, 7 Dec 2021 14:10:32 -0500
-Subject: [PATCH] default-routes.lua: reevaluate current profile only for its
- own routes
-
-Only check the current active profile when some routes changed that are part of
-the profile. If some other route changed, just ignore it.
----
- src/scripts/default-routes.lua | 39 +++++++++++++++++++---------------
- 1 file changed, 22 insertions(+), 17 deletions(-)
-
-diff --git a/src/scripts/default-routes.lua b/src/scripts/default-routes.lua
-index 1840989f..953cba33 100644
---- a/src/scripts/default-routes.lua
-+++ b/src/scripts/default-routes.lua
-@@ -352,6 +352,12 @@ function handleDevice(device)
- local dev_info = dev_infos[device["bound-id"]]
- local new_route_infos = {}
- local avail_routes_changed = false
-+ local profile = nil
-+
-+ -- get current profile
-+ for p in device:iterate_params("Profile") do
-+ profile = parseParam(p, "Profile")
-+ end
-
- -- look at all the routes and update/reset cached information
- for p in device:iterate_params("EnumRoute") do
-@@ -370,7 +376,9 @@ function handleDevice(device)
- Log.info(device, "route " .. route.name .. " available changed " ..
- route_info.available .. " -> " .. route.available)
- route_info.available = route.available
-- avail_routes_changed = true
-+ if profile and arrayContains(route.profiles, profile.index) then
-+ avail_routes_changed = true
-+ end
- end
- route_info.prev_active = route_info.active
- route_info.active = false
-@@ -419,23 +427,20 @@ function handleDevice(device)
- ::skip_route::
- end
-
-- -- now get the profile and restore routes for it
-- for p in device:iterate_params("Profile") do
-- local profile = parseParam(p, "Profile")
-- if profile then
-- local profile_changed = (dev_info.active_profile ~= profile.index)
--
-- -- if the profile changed, restore routes for that profile
-- -- if any of the routes of the current profile changed in availability,
-- -- then try to select a new "best" route for each device and ignore
-- -- what was stored
-- if profile_changed or avail_routes_changed then
-- dev_info.active_profile = profile.index
-- restoreProfileRoutes(device, dev_info, profile, profile_changed)
-- end
--
-- saveProfile(dev_info, profile.name)
-+ -- restore routes for profile
-+ if profile then
-+ local profile_changed = (dev_info.active_profile ~= profile.index)
-+
-+ -- if the profile changed, restore routes for that profile
-+ -- if any of the routes of the current profile changed in availability,
-+ -- then try to select a new "best" route for each device and ignore
-+ -- what was stored
-+ if profile_changed or avail_routes_changed then
-+ dev_info.active_profile = profile.index
-+ restoreProfileRoutes(device, dev_info, profile, profile_changed)
- end
-+
-+ saveProfile(dev_info, profile.name)
- end
- end
-
---
-GitLab
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-lib-don-t-read-hidden-files-from-the-config-director.patch b/media-video/wireplumber/files/wireplumber-0.4.5-lib-don-t-read-hidden-files-from-the-config-director.patch
deleted file mode 100644
index 1554c65e27da..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-lib-don-t-read-hidden-files-from-the-config-director.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From ee5f3f2f195b01fd89ee148da5799b02f99ebb6e Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer@who-t.net>
-Date: Sun, 14 Nov 2021 19:44:30 +1000
-Subject: [PATCH 3/3] lib: don't read hidden files from the config directory
-
-Fixes #104
----
- lib/wp/wp.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/lib/wp/wp.c b/lib/wp/wp.c
-index ffdff1a..c356133 100644
---- a/lib/wp/wp.c
-+++ b/lib/wp/wp.c
-@@ -315,6 +315,9 @@ wp_new_files_iterator (WpLookupDirs dirs, const gchar *subdir,
- if (dir) {
- const gchar *filename;
- while ((filename = g_dir_read_name (dir))) {
-+ if (filename[0] == '.')
-+ continue;
-+
- if (suffix && !g_str_has_suffix (filename, suffix))
- continue;
-
---
-2.34.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-m-reserve-device-replace-the-hash-table-key-on-new-i.patch b/media-video/wireplumber/files/wireplumber-0.4.5-m-reserve-device-replace-the-hash-table-key-on-new-i.patch
deleted file mode 100644
index 70d69093d082..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-m-reserve-device-replace-the-hash-table-key-on-new-i.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From f4546a18e871537be698916178b40091a4a0b377 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer@who-t.net>
-Date: Fri, 12 Nov 2021 11:19:54 +1000
-Subject: [PATCH 3/3] m-reserve-device: replace the hash table key on new
- insert
-
-We're using the WpReserveDevice's name as key in the hash table, so we
-must update the key as well when we replace an item in the hashtable -
-the old device (and its name) will be released.
-
-The side-effect of this is that the *third* device with an identical
-name will no longer replace the previous device. This results in the
-following sequence:
-
-- dev1 added: name Audio0
- - dev1 requests name owner Audio0
-- dev2 added: name Audio0
- - replace dev1 in the hashtable
- - dev1 emits "release" signal
- - dev1 unowns the Audio0 name
- - dev2 requests name owner Audio0
-- dev3 added: name Audio0
- - adds to the hashtable because the existing key is now undefined
- - dev3 requests name owner Audio0
- - error, you cannot request ownership for the same name twice
-
-Fixes #93
----
- modules/module-reserve-device/plugin.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/module-reserve-device/plugin.c b/modules/module-reserve-device/plugin.c
-index d8e4e09..68df6ee 100644
---- a/modules/module-reserve-device/plugin.c
-+++ b/modules/module-reserve-device/plugin.c
-@@ -221,7 +221,7 @@ wp_reserve_device_plugin_create_reservation (WpReserveDevicePlugin *self,
- NULL);
-
- /* use rd->name to avoid copying @em name again */
-- g_hash_table_insert (self->reserve_devices, rd->name, rd);
-+ g_hash_table_replace (self->reserve_devices, rd->name, rd);
-
- return g_object_ref (rd);
- }
---
-2.34.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.5-policy-node-wait-for-nodes-when-we-become-unlinked.patch b/media-video/wireplumber/files/wireplumber-0.4.5-policy-node-wait-for-nodes-when-we-become-unlinked.patch
deleted file mode 100644
index 0ce16a647697..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.5-policy-node-wait-for-nodes-when-we-become-unlinked.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 83041b0ce277c95afaf1824f525ea0bec516f03f Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Thu, 18 Nov 2021 15:23:23 +0100
-Subject: [PATCH 2/3] policy-node: wait for nodes when we become unlinked
-
-If we were linked before but our node is removed, wait until a new node
-becomes available instead of failing.
-
-This fixes an issue where there is only 1 sink available and the card
-profile is toggeled between pro and stereo. After the profile is
-toggled, the sink is removed and the node would be killed with an error
-because there is no fallback sink. The fix is similar to the
-pipewire-media-session logic.
----
- src/scripts/policy-node.lua | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
-index 5029d1b..445b1a7 100644
---- a/src/scripts/policy-node.lua
-+++ b/src/scripts/policy-node.lua
-@@ -493,6 +493,9 @@ function handleLinkable (si)
- if not reconnect then
- Log.info (si, "... destroy node")
- node:request_destroy()
-+ elseif si_flags[si.id].was_handled then
-+ Log.info (si, "... waiting reconnect")
-+ return
- end
-
- local client_id = node.properties["client.id"]
---
-2.34.0
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-find-best-linkable-if-default-one-cannot.patch b/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-find-best-linkable-if-default-one-cannot.patch
deleted file mode 100644
index 0cedea4ac6be..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-find-best-linkable-if-default-one-cannot.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/bee9827ae376b75feceea926b0afc727fecca51b
-
-From bee9827ae376b75feceea926b0afc727fecca51b Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Fri, 7 Jan 2022 15:35:10 -0500
-Subject: [PATCH] policy-node: find best linkable if default one cannot be
- linked
-
-Fixes issue with echo cancellation pipewire module.
----
- src/scripts/policy-node.lua | 19 ++++++++++++++-----
- 1 file changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
-index c273c1fe..9df50072 100644
---- a/src/scripts/policy-node.lua
-+++ b/src/scripts/policy-node.lua
-@@ -477,13 +477,22 @@ function findBestLinkable (si)
- end
-
- function findUndefinedTarget (si)
-- -- Find the default linkable if the default nodes module is loaded, otherwise
-- -- just find the best linkable based on priority and routes
-- if default_nodes ~= nil then
-- return findDefaultlinkable (si)
-- else
-+ -- Just find the best linkable if default nodes module is not loaded
-+ if default_nodes == nil then
- return findBestLinkable (si)
- end
-+
-+ -- Otherwise find the default linkable. If the default linkabke cannot link,
-+ -- we find the best one instead. We return nil if default does not exist.
-+ local si_target, can_passthrough = findDefaultlinkable (si)
-+ if si_target then
-+ if canLink (si.properties, si_target) then
-+ return si_target, can_passthrough
-+ else
-+ return findBestLinkable (si)
-+ end
-+ end
-+ return nil, nil
- end
-
- function lookupLink (si_id, si_target_id)
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-fix-typo-when-finding-best-target.patch b/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-fix-typo-when-finding-best-target.patch
deleted file mode 100644
index f18920c475a8..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-fix-typo-when-finding-best-target.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/23fc4d21a9cfad492f8d3a367e438115197dff4a
-
-From 23fc4d21a9cfad492f8d3a367e438115197dff4a Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Fri, 7 Jan 2022 10:12:04 -0500
-Subject: [PATCH] policy-node: fix typo when finding best target
-
----
- src/scripts/policy-node.lua | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
-index 0d716c1c..8ca5a695 100644
---- a/src/scripts/policy-node.lua
-+++ b/src/scripts/policy-node.lua
-@@ -482,7 +482,7 @@ function findUndefinedTarget (si)
- if default_nodes ~= nil then
- return findDefaultlinkable (si)
- else
-- return findBestlinkable (si)
-+ return findBestLinkable (si)
- end
- end
-
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-schedule-a-rescan-without-timeout-if-def.patch b/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-schedule-a-rescan-without-timeout-if-def.patch
deleted file mode 100644
index 28b5a5ea22a4..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.6-policy-node-schedule-a-rescan-without-timeout-if-def.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/afe71d7e48c28b0ae5cbd9327433e3c55c103fcb
-
-From afe71d7e48c28b0ae5cbd9327433e3c55c103fcb Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Thu, 6 Jan 2022 10:53:38 -0500
-Subject: [PATCH] policy-node: schedule a rescan without timeout if defined
- target is not found
-
-Fixes #146
----
- src/scripts/policy-node.lua | 17 ++++-------------
- 1 file changed, 4 insertions(+), 13 deletions(-)
-
-diff --git a/src/scripts/policy-node.lua b/src/scripts/policy-node.lua
-index 8ca5a695..c273c1fe 100644
---- a/src/scripts/policy-node.lua
-+++ b/src/scripts/policy-node.lua
-@@ -552,25 +552,16 @@ function handleLinkable (si)
- si_target = nil
- end
-
-- -- wait up to 2 seconds for the requested target to become available
-- -- this is because the client may have already "seen" a target that we haven't
-- -- yet prepared, which leads to a race condition
-+ -- if the client has seen a target that we haven't yet prepared, schedule
-+ -- a rescan one more time and hope for the best
- local si_id = si.id
- if si_props["node.target"] and si_props["node.target"] ~= "-1"
- and not si_target
- and not si_flags[si_id].was_handled
- and not si_flags[si_id].done_waiting then
-- if not si_flags[si_id].timeout_source then
-- si_flags[si_id].timeout_source = Core.timeout_add(2000, function()
-- if si_flags[si_id] then
-- si_flags[si_id].done_waiting = true
-- si_flags[si_id].timeout_source = nil
-- scheduleRescan()
-- end
-- return false
-- end)
-- end
- Log.info (si, "... waiting for target")
-+ si_flags[si_id].done_waiting = true
-+ scheduleRescan()
- return
- end
-
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.6-spa-pod-fix-different-architecture-errors-for-boolea.patch b/media-video/wireplumber/files/wireplumber-0.4.6-spa-pod-fix-different-architecture-errors-for-boolea.patch
deleted file mode 100644
index b11a2f6f70f6..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.6-spa-pod-fix-different-architecture-errors-for-boolea.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-https://gitlab.freedesktop.org/julian/wireplumber/-/commit/5afd176698aee835c8812eb7944ba12da53ffeab
-
-From 5afd176698aee835c8812eb7944ba12da53ffeab Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Mon, 13 Dec 2021 12:01:52 -0500
-Subject: [PATCH] spa-pod: fix different architecture errors for boolean values
-
----
- lib/wp/spa-pod.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/lib/wp/spa-pod.c b/lib/wp/spa-pod.c
-index c1c22572..bd7b8876 100644
---- a/lib/wp/spa-pod.c
-+++ b/lib/wp/spa-pod.c
-@@ -2332,6 +2332,10 @@ wp_spa_pod_builder_add_valist (WpSpaPodBuilder *self, va_list args)
- }
- break;
- }
-+ case 'b':
-+ spa_pod_builder_bool(&self->builder,
-+ va_arg(args, gboolean) ? true : false);
-+ break;
- default:
- SPA_POD_BUILDER_COLLECT(&self->builder, *format, args);
- break;
-@@ -2778,6 +2782,10 @@ wp_spa_pod_parser_get_valist (WpSpaPodParser *self, va_list args)
- }
- break;
- }
-+ case 'b':
-+ *va_arg(args, gboolean*) =
-+ SPA_POD_VALUE(struct spa_pod_bool, pod) ? TRUE : FALSE;
-+ break;
- default:
- SPA_POD_PARSER_COLLECT (pod, *format, args);
- break;
---
-GitLab
-
diff --git a/media-video/wireplumber/wireplumber-0.4.5-r2.ebuild b/media-video/wireplumber/wireplumber-0.4.5-r2.ebuild
deleted file mode 100644
index 8e8a9b7ebc8e..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.5-r2.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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"
-
- # One commit is in git, the rest are in a PR which should be merged soon
- # bug #817881
- SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.4.5-endianness-fixes.patch.bz2"
- KEYWORDS="~amd64 ~arm ~arm64 ~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 systemd test"
-
-REQUIRED_USE="
- ${LUA_REQUIRED_USE}
- ?? ( elogind 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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.42:=
- virtual/libc
- 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}"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- "${FILESDIR}"/${P}-m-reserve-device-replace-the-hash-table-key-on-new-i.patch
- "${FILESDIR}"/${P}-policy-node-wait-for-nodes-when-we-become-unlinked.patch
- "${FILESDIR}"/${P}-lib-don-t-read-hidden-files-from-the-config-director.patch
- "${FILESDIR}"/${P}-alsa-handle-the-release-requested-signal.patch
- "${WORKDIR}"/${P}-endianness-fixes.patch
-)
-
-src_configure() {
- local emesonargs=(
- -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)
- -Dsystemd-system-service=false # Matches upstream
- $(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
-}
-
-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
- ewarn
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.5-r4.ebuild b/media-video/wireplumber/wireplumber-0.4.5-r4.ebuild
deleted file mode 100644
index faf7c563e19f..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.5-r4.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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"
-
- # One commit is in git, the rest are in a PR which should be merged soon
- # bug #817881
- SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.4.5-endianness-fixes.patch.bz2"
- KEYWORDS="~amd64 ~arm ~arm64 ~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 systemd test"
-
-REQUIRED_USE="
- ${LUA_REQUIRED_USE}
- ?? ( elogind 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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.42:=
- virtual/libc
- 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}"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- "${FILESDIR}"/${P}-m-reserve-device-replace-the-hash-table-key-on-new-i.patch
- "${FILESDIR}"/${P}-policy-node-wait-for-nodes-when-we-become-unlinked.patch
- "${FILESDIR}"/${P}-lib-don-t-read-hidden-files-from-the-config-director.patch
- "${FILESDIR}"/${P}-alsa-handle-the-release-requested-signal.patch
- "${FILESDIR}"/${P}-access-config-add-restricted-access-permissions.patch
- "${FILESDIR}"/${P}-default-routes.lua-reevaluate-current-profile-only-f.patch
- "${WORKDIR}"/${P}-endianness-fixes.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)
- -Dsystemd-system-service=false # Matches upstream
- $(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
-}
-
-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
- ewarn
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.6-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.6-r1.ebuild
deleted file mode 100644
index 16b0e2144871..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.6-r1.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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 ~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 systemd test"
-
-REQUIRED_USE="
- ${LUA_REQUIRED_USE}
- ?? ( elogind 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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.43:=
- virtual/libc
- 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}"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- "${FILESDIR}"/${P}-policy-node-fix-typo-when-finding-best-target.patch
- "${FILESDIR}"/${P}-policy-node-schedule-a-rescan-without-timeout-if-def.patch
- "${FILESDIR}"/${P}-policy-node-find-best-linkable-if-default-one-cannot.patch
- "${FILESDIR}"/${P}-spa-pod-fix-different-architecture-errors-for-boolea.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)
- -Dsystemd-system-service=false # Matches upstream
- $(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
-}
-
-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
- ewarn
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-03-05 22:02 John Helmert III
0 siblings, 0 replies; 19+ messages in thread
From: John Helmert III @ 2022-03-05 22:02 UTC (permalink / raw
To: gentoo-commits
commit: c3eb33fae29bff26b3e78fa693f203dc3d3c103e
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Sat Mar 5 14:57:11 2022 +0000
Commit: John Helmert III <ajak <AT> gentoo <DOT> org>
CommitDate: Sat Mar 5 21:59:51 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3eb33fa
media-video/wireplumber: add a fix for PW 0.3.48
PW 0.3.48 contains a change that may break PulseAudio support without
a fix on WP side. This commit adds that fix as wireplumber-0.4.8-r3
ebuild. Because ~testing only needs to work with ~testing, it has not
been verified that the r3 works as intended with PW versions older than
the current ~testing version. However there's no reason to believe it
would not, so the version minimum is not being bumped up.
Bug: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2189
Closes: https://bugs.gentoo.org/834624
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Signed-off-by: John Helmert III <ajak <AT> gentoo.org>
...4.8-si-audio-adapter-relax-format-parsing.patch | 44 ++++++++
.../wireplumber/wireplumber-0.4.8-r3.ebuild | 123 +++++++++++++++++++++
2 files changed, 167 insertions(+)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.8-si-audio-adapter-relax-format-parsing.patch b/media-video/wireplumber/files/wireplumber-0.4.8-si-audio-adapter-relax-format-parsing.patch
new file mode 100644
index 000000000000..93225b02d88b
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.8-si-audio-adapter-relax-format-parsing.patch
@@ -0,0 +1,44 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/afbc0ce57aac7aee8dc1651de4620f15c73dbace
+
+From afbc0ce57aac7aee8dc1651de4620f15c73dbace Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Mon, 21 Feb 2022 15:21:36 +0100
+Subject: [PATCH] si-audio-adapter: relax format parsing
+
+Some nodes can omit the format/rate/channels to indicate that they can
+deal with all possibilities and adapt to what they are linked to.
+
+See pipewire#876
+---
+ modules/module-si-audio-adapter.c | 11 ++---------
+ 1 file changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/modules/module-si-audio-adapter.c b/modules/module-si-audio-adapter.c
+index f1f6218..84e393f 100644
+--- a/modules/module-si-audio-adapter.c
++++ b/modules/module-si-audio-adapter.c
+@@ -158,19 +158,12 @@ si_audio_adapter_find_format (WpSiAudioAdapter * self, WpNode * node)
+ struct spa_pod *position = NULL;
+ wp_spa_pod_fixate (pod);
+
+- /* defaults */
+ spa_zero(raw_format);
+- raw_format.format = SPA_AUDIO_FORMAT_F32;
+- raw_format.rate = si_audio_adapter_get_default_clock_rate (self);
+- raw_format.channels = 2;
+- raw_format.position[0] = SPA_AUDIO_CHANNEL_FL;
+- raw_format.position[1] = SPA_AUDIO_CHANNEL_FR;
+-
+ if (spa_pod_parse_object(wp_spa_pod_get_spa_pod (pod),
+ SPA_TYPE_OBJECT_Format, NULL,
+- SPA_FORMAT_AUDIO_format, SPA_POD_Id(&raw_format.format),
++ SPA_FORMAT_AUDIO_format, SPA_POD_OPT_Id(&raw_format.format),
+ SPA_FORMAT_AUDIO_rate, SPA_POD_OPT_Int(&raw_format.rate),
+- SPA_FORMAT_AUDIO_channels, SPA_POD_Int(&raw_format.channels),
++ SPA_FORMAT_AUDIO_channels, SPA_POD_OPT_Int(&raw_format.channels),
+ SPA_FORMAT_AUDIO_position, SPA_POD_OPT_Pod(&position)) < 0)
+ continue;
+
+--
+2.35.1
+
diff --git a/media-video/wireplumber/wireplumber-0.4.8-r3.ebuild b/media-video/wireplumber/wireplumber-0.4.8-r3.ebuild
new file mode 100644
index 000000000000..5bd6d87c04e8
--- /dev/null
+++ b/media-video/wireplumber/wireplumber-0.4.8-r3.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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 ~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
+"
+
+DEPEND="
+ ${LUA_DEPS}
+ >=dev-libs/glib-2.62
+ >=media-video/pipewire-0.3.45:=
+ virtual/libc
+ 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}"/${P}-restore-stream-do-not-crash-if-config.properties-is-.patch
+ "${FILESDIR}"/${P}-spa-json-fix-va-list-APIs-for-different-architecture.patch
+ "${FILESDIR}"/${P}-policy-bluetooth-fix-string.find-crash-with-nil-stri.patch
+ "${FILESDIR}"/${P}-si-audio-adapter-relax-format-parsing.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
+}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-04-17 16:44 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-04-17 16:44 UTC (permalink / raw
To: gentoo-commits
commit: 4d9cfaff0bc82c7f03c3d6e545dc4e43c3e9c255
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 17 16:37:11 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 16:37:11 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d9cfaff
media-video/wireplumber: drop 0.4.7-r2, 0.4.8-r2
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 -
...default-nodes-handle-nodes-without-Routes.patch | 51 ---------
.../wireplumber/wireplumber-0.4.7-r2.ebuild | 120 --------------------
.../wireplumber/wireplumber-0.4.8-r2.ebuild | 122 ---------------------
4 files changed, 294 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index af187637f863..3c57ec31c440 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,3 +1,2 @@
-DIST wireplumber-0.4.7.tar.gz 358718 BLAKE2B a7e708ccfb9e95b3f3e2ddc5dfc1dc437ac8a2831a7cdaf03f33af65fcce8fc27dd91b2a6f346e60f68873724c2d165616005b485189604863213b5d5565f894 SHA512 8b472e1b3c7a29045326b30989d24224e510f93021c1b5b6aee59859daf594e91a738b8ad9d46d24736b7de29624d9faff40e1061bd3eddc559c95e325bfbf19
DIST wireplumber-0.4.8.tar.gz 374824 BLAKE2B 7b5c8492d58be8b40c4c98bc807d031c453904a7df51c9b0d96c353c93018ba8cbd699b2c3c885defe7b5360df4256ad5e175015dc0102e5007853f6e0132cb7 SHA512 cb96b1d55be7e9d1433fc4a4fb4accce63f5f318a9a2b5cffc51a9f052765df777a0ba4ac73579771084295a73e6f05ed3a16a5fb9d0f5da4e183cfd74483c2c
DIST wireplumber-0.4.9.tar.gz 376170 BLAKE2B 50f552c730ac543fc2e8b0e054c861bcd22ed281a62f2921fb956f39b917cce6eb53287dfcfc81db240476f82f5cf1d7556fa34be8bf507ff847089536b81f44 SHA512 39b9e9be014489042fe480219b99d7591e0b68dd44b889bd5c6aeee73e771adb807bc21f48d031217f097182827bd2f48b68d52291036d52e95d4fa75e7f9929
diff --git a/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch b/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
deleted file mode 100644
index 3451ea73f74b..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.7-default-nodes-handle-nodes-without-Routes.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/211f1e6b6cd4898121e4c2b821fae4dea6cc3317
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/163
-
-From 211f1e6b6cd4898121e4c2b821fae4dea6cc3317 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Fri, 14 Jan 2022 16:28:48 +0100
-Subject: [PATCH] default-nodes: handle nodes without Routes
-
-When a node has not part of any EnumRoute, we must assume it is
-available.
-
-Fixes selection of Pro Audio nodes as default nodes.
----
- modules/module-default-nodes.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/modules/module-default-nodes.c b/modules/module-default-nodes.c
-index 32b2725b..15aadeaa 100644
---- a/modules/module-default-nodes.c
-+++ b/modules/module-default-nodes.c
-@@ -108,6 +108,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
- gint dev_id = dev_id_str ? atoi (dev_id_str) : -1;
- gint cpd = cpd_str ? atoi (cpd_str) : -1;
- g_autoptr (WpDevice) device = NULL;
-+ gint found = 0;
-
- if (dev_id == -1 || cpd == -1)
- return TRUE;
-@@ -168,6 +169,7 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
- for (; wp_iterator_next (it, &v); g_value_unset (&v)) {
- gint32 *d = (gint32 *)g_value_get_pointer (&v);
- if (d && *d == cpd) {
-+ found++;
- if (route_avail != SPA_PARAM_AVAILABILITY_no)
- return TRUE;
- }
-@@ -175,6 +177,10 @@ node_has_available_routes (WpDefaultNodes * self, WpNode *node)
- }
- }
- }
-+ /* The node is part of a profile without routes so we assume it
-+ * is available. This can happen for Pro Audio profiles */
-+ if (found == 0)
-+ return TRUE;
-
- return FALSE;
- }
---
-GitLab
-
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/211f1e6b6cd4898121e4c2b821fae4dea6cc3317
diff --git a/media-video/wireplumber/wireplumber-0.4.7-r2.ebuild b/media-video/wireplumber/wireplumber-0.4.7-r2.ebuild
deleted file mode 100644
index 03a62724a829..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.7-r2.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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 ~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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.43:=
- virtual/libc
- 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}"/${P}-default-nodes-handle-nodes-without-Routes.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
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.8-r2.ebuild b/media-video/wireplumber/wireplumber-0.4.8-r2.ebuild
deleted file mode 100644
index 5e77689f2572..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.8-r2.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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 ~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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.45:=
- virtual/libc
- 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}"/${P}-restore-stream-do-not-crash-if-config.properties-is-.patch
- "${FILESDIR}"/${P}-spa-json-fix-va-list-APIs-for-different-architecture.patch
- "${FILESDIR}"/${P}-policy-bluetooth-fix-string.find-crash-with-nil-stri.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
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-05-25 22:59 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-05-25 22:59 UTC (permalink / raw
To: gentoo-commits
commit: e8f0e99a058f91e7d2209f5cd2282f908d1d449b
Author: Niklāvs Koļesņikovs <89q1r14hd <AT> relay <DOT> firefox <DOT> com>
AuthorDate: Fri May 20 13:58:29 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed May 25 22:46:59 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8f0e99a
media-video/wireplumber: add 0.4.10-r2 and copy loong to 9999
This commit backports a fix for device reservation protocol where
multiple devices may get clashing name because they all get the same
name assigned to them while being reserved. It appears the fix may
need another commit to function, so adding the NULL fix pre-emptively.
And because that one introduced a new bug, adding a follow up fix
backport for that.
Unfortunately the current upstream fix for this breaks the fix for a
small audio glitch that may happen when changing the default device,
which as applied on Gentoo in the 0.4.10-r1 ebuild. This in effect
means no longer applying the corresponding patch. But the benefit
of not having potential device name clashes should outweigh that.
Finally 0.4.10-r1 was keyworded for ~loong but that's liable to getting
lost on version bumps, so copying it to the 9999 in an inactive state.
Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd <AT> relay.firefox.com>
Closes: https://github.com/gentoo/gentoo/pull/25574
Signed-off-by: Sam James <sam <AT> gentoo.org>
...ix-device-name-deduplication-when-reserva.patch | 117 +++++++++++++++++++++
...pting-allow-converting-GValue-holding-NUL.patch | 36 +++++++
...10-m-lua-scripting-fix-object-refcounting.patch | 32 ++++++
...er-9999.ebuild => wireplumber-0.4.10-r2.ebuild} | 8 +-
media-video/wireplumber/wireplumber-9999.ebuild | 2 +-
5 files changed, 193 insertions(+), 2 deletions(-)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch b/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch
new file mode 100644
index 000000000000..610db0e11e89
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch
@@ -0,0 +1,117 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c00c5a6675b6640db13111c808eaa3251917c412
+
+From c00c5a6675b6640db13111c808eaa3251917c412 Mon Sep 17 00:00:00 2001
+From: Julian Bouzas <julian.bouzas@collabora.com>
+Date: Wed, 18 May 2022 10:51:41 -0400
+Subject: [PATCH] alsa.lua: fix device name deduplication when reservation is
+ enabled
+
+Fixes #241
+---
+ src/scripts/monitors/alsa.lua | 47 +++++++++++++++++++----------------
+ 1 file changed, 25 insertions(+), 22 deletions(-)
+
+diff --git a/src/scripts/monitors/alsa.lua b/src/scripts/monitors/alsa.lua
+index 01d241db..7beed3a8 100644
+--- a/src/scripts/monitors/alsa.lua
++++ b/src/scripts/monitors/alsa.lua
+@@ -11,6 +11,10 @@ local config = ... or {}
+ -- ensure config.properties is not nil
+ config.properties = config.properties or {}
+
++-- unique device/node name tables
++device_names_table = nil
++node_names_table = nil
++
+ -- preprocess rules and create Interest objects
+ for _, r in ipairs(config.rules or {}) do
+ r.interests = {}
+@@ -41,16 +45,6 @@ function rulesApplyProperties(properties)
+ end
+ end
+
+-function findDuplicate(parent, id, property, value)
+- for i = 0, id - 1, 1 do
+- local obj = parent:get_managed_object(i)
+- if obj and obj.properties[property] == value then
+- return true
+- end
+- end
+- return false
+-end
+-
+ function nonempty(str)
+ return str ~= "" and str or nil
+ end
+@@ -125,11 +119,11 @@ function createNode(parent, id, type, factory, properties)
+
+ -- deduplicate nodes with the same name
+ for counter = 2, 99, 1 do
+- if findDuplicate(parent, id, "node.name", properties["node.name"]) then
+- properties["node.name"] = name .. "." .. counter
+- else
++ if node_names_table[properties["node.name"]] ~= true then
++ node_names_table[properties["node.name"]] = true
+ break
+ end
++ properties["node.name"] = name .. "." .. counter
+ end
+ end
+
+@@ -186,6 +180,10 @@ function createDevice(parent, id, factory, properties)
+ local device = SpaDevice(factory, properties)
+ if device then
+ device:connect("create-object", createNode)
++ device:connect("object-removed", function (parent, id)
++ local node = parent:get_managed_object(id)
++ node_names_table[node.properties["node.name"]] = nil
++ end)
+ device:activate(Feature.SpaDevice.ENABLED | Feature.Proxy.BOUND)
+ parent:store_managed_object(id, device)
+ else
+@@ -205,11 +203,11 @@ function prepareDevice(parent, id, type, factory, properties)
+
+ -- deduplicate devices with the same name
+ for counter = 2, 99, 1 do
+- if findDuplicate(parent, id, "device.name", properties["device.name"]) then
+- properties["device.name"] = name .. "." .. counter
+- else
++ if device_names_table[properties["device.name"]] ~= true then
++ device_names_table[properties["device.name"]] = true
+ break
+ end
++ properties["device.name"] = name .. "." .. counter
+ end
+
+ -- ensure the device has a description
+@@ -337,16 +335,21 @@ function createMonitor ()
+ -- handle create-object to prepare device
+ m:connect("create-object", prepareDevice)
+
+- -- if dbus reservation, handle object-removed to destroy device reservations
+- if rd_plugin then
+- m:connect("object-removed", function (parent, id)
+- local device = parent:get_managed_object(id)
++ -- handle object-removed to destroy device reservations and recycle device name
++ m:connect("object-removed", function (parent, id)
++ local device = parent:get_managed_object(id)
++ if rd_plugin then
+ local rd_name = device.properties["api.dbus.ReserveDevice1"]
+ if rd_name then
+ rd_plugin:call("destroy-reservation", rd_name)
+ end
+- end)
+- end
++ end
++ device_names_table[device.properties["device.name"]] = nil
++ end)
++
++ -- reset the name tables to make sure names are recycled
++ device_names_table = {}
++ node_names_table = {}
+
+ -- activate monitor
+ Log.info("Activating ALSA monitor")
+--
+GitLab
+
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
new file mode 100644
index 000000000000..c319ac4a617b
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
@@ -0,0 +1,36 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c2f31bb550755acba31da2e9f5bbdf646ed5e805
+
+From c2f31bb550755acba31da2e9f5bbdf646ed5e805 Mon Sep 17 00:00:00 2001
+From: Julian Bouzas <julian.bouzas@collabora.com>
+Date: Mon, 16 May 2022 15:41:10 -0400
+Subject: [PATCH] m-lua-scripting: allow converting GValue holding NULL objects
+ to Lua
+
+---
+ modules/module-lua-scripting/wplua/value.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/modules/module-lua-scripting/wplua/value.c b/modules/module-lua-scripting/wplua/value.c
+index 133051a4..e31ae4ac 100644
+--- a/modules/module-lua-scripting/wplua/value.c
++++ b/modules/module-lua-scripting/wplua/value.c
+@@ -314,9 +314,14 @@ wplua_gvalue_to_lua (lua_State *L, const GValue *v)
+ wplua_pushboxed (L, G_VALUE_TYPE (v), g_value_dup_boxed (v));
+ break;
+ case G_TYPE_OBJECT:
+- case G_TYPE_INTERFACE:
+- wplua_pushobject (L, g_value_dup_object (v));
++ case G_TYPE_INTERFACE: {
++ GObject *object = g_value_dup_object (v);
++ if (object)
++ wplua_pushobject (L, g_value_dup_object (v));
++ else
++ lua_pushnil (L);
+ break;
++ }
+ case G_TYPE_ENUM:
+ wplua_enum_to_lua (L, g_value_get_enum (v), G_VALUE_TYPE (v));
+ break;
+--
+GitLab
+
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch
new file mode 100644
index 000000000000..0b86979ce732
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch
@@ -0,0 +1,32 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/7908b8d7be2a2992c57cd549054eda7ce46e4b44
+
+From 13b85bd4a25ab374f5e5e90b7288e6987996856e Mon Sep 17 00:00:00 2001
+From: Michael Olbrich <m.olbrich@pengutronix.de>
+Date: Tue, 24 May 2022 11:35:15 +0200
+Subject: [PATCH] m-lua-scripting: fix object refcounting
+
+7908b8d7be2a2992c57cd549054eda7ce46e4b44 ("m-lua-scripting: allow
+converting GValue holding NULL objects to Lua") accidentally added a second
+refcount. As a result, the objects are never freeded.
+
+Remove the second refcount to fix this.
+---
+ modules/module-lua-scripting/wplua/value.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/module-lua-scripting/wplua/value.c b/modules/module-lua-scripting/wplua/value.c
+index e31ae4a..a7927dc 100644
+--- a/modules/module-lua-scripting/wplua/value.c
++++ b/modules/module-lua-scripting/wplua/value.c
+@@ -317,7 +317,7 @@ wplua_gvalue_to_lua (lua_State *L, const GValue *v)
+ case G_TYPE_INTERFACE: {
+ GObject *object = g_value_dup_object (v);
+ if (object)
+- wplua_pushobject (L, g_value_dup_object (v));
++ wplua_pushobject (L, object);
+ else
+ lua_pushnil (L);
+ break;
+--
+2.35.1
+
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-0.4.10-r2.ebuild
similarity index 92%
copy from media-video/wireplumber/wireplumber-9999.ebuild
copy to media-video/wireplumber/wireplumber-0.4.10-r2.ebuild
index 9bae3695faf2..a3581508193e 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.10-r2.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
else
SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="Replacement for pipewire-media-session"
@@ -62,6 +62,12 @@ RDEPEND="${DEPEND}
DOCS=( {NEWS,README}.rst )
+PATCHES=(
+ "${FILESDIR}"/${P}-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
+ "${FILESDIR}"/${P}-alsa.lua-fix-device-name-deduplication-when-reserva.patch
+ "${FILESDIR}"/${P}-m-lua-scripting-fix-object-refcounting.patch
+)
+
src_configure() {
local emesonargs=(
-Ddoc=disabled # Ebuild not wired up yet (Sphinx, Doxygen?)
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-9999.ebuild
index 9bae3695faf2..d231bfe704c3 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-9999.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
else
SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
DESCRIPTION="Replacement for pipewire-media-session"
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-07-04 21:40 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-07-04 21:40 UTC (permalink / raw
To: gentoo-commits
commit: ed5e534a1cd4ae88036e99bcb81420e28f824768
Author: Igor V. Kovalenko <igor.v.kovalenko <AT> gmail <DOT> com>
AuthorDate: Mon May 30 06:09:36 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul 4 21:35:33 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed5e534a
media-video/wireplumber: Disable sound server parts
Disable alsa and bluetooth monitors in wireplumber configuration.
Let media-video/pipewire conditionally enable these instead.
Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
...-0.4.10-config-disable-sound-server-parts.patch | 26 ++++++++++++++++++++++
.../wireplumber/wireplumber-0.4.10-r3.ebuild | 1 +
2 files changed, 27 insertions(+)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch
new file mode 100644
index 000000000000..a8bf6f106129
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch
@@ -0,0 +1,26 @@
+commit 3d86f51d2c43fd76be2450a8c27836fdd8619cfa
+Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
+Date: Sun May 15 18:19:03 2022 +0300
+
+ config: Disable alsa and bluez monitors by default
+
+diff --git a/src/config/bluetooth.lua.d/50-bluez-config.lua b/src/config/bluetooth.lua.d/50-bluez-config.lua
+index d5727d3..938eae0 100644
+--- a/src/config/bluetooth.lua.d/50-bluez-config.lua
++++ b/src/config/bluetooth.lua.d/50-bluez-config.lua
+@@ -1,4 +1,4 @@
+-bluez_monitor.enabled = true
++bluez_monitor.enabled = false
+
+ bluez_monitor.properties = {
+ -- These features do not work on all headsets, so they are enabled
+diff --git a/src/config/main.lua.d/50-alsa-config.lua b/src/config/main.lua.d/50-alsa-config.lua
+index 3468333..d4c065b 100644
+--- a/src/config/main.lua.d/50-alsa-config.lua
++++ b/src/config/main.lua.d/50-alsa-config.lua
+@@ -1,4 +1,4 @@
+-alsa_monitor.enabled = true
++alsa_monitor.enabled = false
+
+ alsa_monitor.properties = {
+ -- Create a JACK device. This is not enabled by default because
diff --git a/media-video/wireplumber/wireplumber-0.4.10-r3.ebuild b/media-video/wireplumber/wireplumber-0.4.10-r3.ebuild
index ae1bbb1ec14c..5789bd9c46fb 100644
--- a/media-video/wireplumber/wireplumber-0.4.10-r3.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.10-r3.ebuild
@@ -68,6 +68,7 @@ PATCHES=(
"${FILESDIR}"/${P}-alsa.lua-fix-device-name-deduplication-when-reserva.patch
"${FILESDIR}"/${P}-m-default-nodes-don-t-check-if-all-device-nodes-are.patch
"${FILESDIR}"/${P}-m-lua-scripting-fix-object-refcounting.patch
+ "${FILESDIR}"/${P}-config-disable-sound-server-parts.patch # defer enabling sound server parts to media-video/pipewire
)
src_configure() {
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-07-04 23:37 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-07-04 23:37 UTC (permalink / raw
To: gentoo-commits
commit: 0e2ff88702f11a324a4978df9d7d960b1b2992c9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 4 23:37:35 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul 4 23:37:35 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e2ff887
media-video/wireplumber: drop 0.4.9, 0.4.9-r1, 0.4.10-r1
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 -
...ment-which-options-need-to-be-turned-off-.patch | 87 ---------------
...icy-device-profile-clear-tables-when-devi.patch | 33 ------
.../wireplumber/wireplumber-0.4.10-r1.ebuild | 122 ---------------------
.../wireplumber/wireplumber-0.4.9-r1.ebuild | 121 --------------------
media-video/wireplumber/wireplumber-0.4.9.ebuild | 116 --------------------
6 files changed, 480 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index cf271da67018..ece045dc24b3 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,2 +1 @@
DIST wireplumber-0.4.10.tar.gz 395588 BLAKE2B 6df1af17d1e53ab1449a2f6f9af5a0c4f7b1cd981e07556e5ea3c6b4d5d624e66b97ce4f945f7ccccebbf72b75d35d10990fac11b5228275f27e5320885ff1ec SHA512 342e8bba2cf00faab71ef39bb361b5ada66ff3a68ccf7a756ea1ca402da6e94784eece277ca02992bc7573c51cb8b1bad33aa9c593b3d1bfe0bb0286e2f4506f
-DIST wireplumber-0.4.9.tar.gz 376170 BLAKE2B 50f552c730ac543fc2e8b0e054c861bcd22ed281a62f2921fb956f39b917cce6eb53287dfcfc81db240476f82f5cf1d7556fa34be8bf507ff847089536b81f44 SHA512 39b9e9be014489042fe480219b99d7591e0b68dd44b889bd5c6aeee73e771adb807bc21f48d031217f097182827bd2f48b68d52291036d52e95d4fa75e7f9929
diff --git a/media-video/wireplumber/files/wireplumber-0.4.9-config-document-which-options-need-to-be-turned-off-.patch b/media-video/wireplumber/files/wireplumber-0.4.9-config-document-which-options-need-to-be-turned-off-.patch
deleted file mode 100644
index 9e664ec56564..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.9-config-document-which-options-need-to-be-turned-off-.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/0da29f38181e391160fa8702623050b8544ec775
-
-From 0da29f38181e391160fa8702623050b8544ec775 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Mon, 4 Apr 2022 14:38:28 +0300
-Subject: [PATCH] config: document which options need to be turned off to use
- wp without D-Bus
-
-and actually implement an option for the logind module
-
-Related to: #237
----
- src/config/bluetooth.lua.d/30-bluez-monitor.lua | 4 +++-
- src/config/bluetooth.lua.d/50-bluez-config.lua | 8 ++++++++
- src/config/main.lua.d/50-alsa-config.lua | 4 +++-
- src/config/main.lua.d/50-default-access-config.lua | 3 +++
- 4 files changed, 17 insertions(+), 2 deletions(-)
-
-diff --git a/src/config/bluetooth.lua.d/30-bluez-monitor.lua b/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-index 266d3e2f..ba86657f 100644
---- a/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-+++ b/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-@@ -8,5 +8,7 @@ function bluez_monitor.enable()
- rules = bluez_monitor.rules,
- })
-
-- load_optional_module("logind")
-+ if bluez_monitor.properties["with-logind"] then
-+ load_optional_module("logind")
-+ end
- end
-diff --git a/src/config/bluetooth.lua.d/50-bluez-config.lua b/src/config/bluetooth.lua.d/50-bluez-config.lua
-index 072504ec..dd8033ff 100644
---- a/src/config/bluetooth.lua.d/50-bluez-config.lua
-+++ b/src/config/bluetooth.lua.d/50-bluez-config.lua
-@@ -34,6 +34,14 @@ bluez_monitor.properties = {
- -- Register dummy AVRCP player, required for AVRCP volume function.
- -- Disable if you are running mpris-proxy or equivalent.
- --["bluez5.dummy-avrcp-player"] = true,
-+
-+ -- Enable the logind module, which arbitrates which user will be allowed
-+ -- to have bluetooth audio enabled at any given time (particularly useful
-+ -- if you are using GDM as a display manager, as the gdm user also launches
-+ -- pipewire and wireplumber).
-+ -- This requires access to the D-Bus user session; disable if you are running
-+ -- a system-wide instance of wireplumber.
-+ ["with-logind"] = true,
- }
-
- bluez_monitor.rules = {
-diff --git a/src/config/main.lua.d/50-alsa-config.lua b/src/config/main.lua.d/50-alsa-config.lua
-index 6c97e8ad..d29b0b6f 100644
---- a/src/config/main.lua.d/50-alsa-config.lua
-+++ b/src/config/main.lua.d/50-alsa-config.lua
-@@ -7,6 +7,8 @@ alsa_monitor.properties = {
- --["alsa.jack-device"] = false,
-
- -- Reserve devices via org.freedesktop.ReserveDevice1 on D-Bus
-+ -- Disable if you are running a system-wide instance, which
-+ -- doesn't have access to the D-Bus user session
- ["alsa.reserve"] = true,
- --["alsa.reserve.priority"] = -20,
- --["alsa.reserve.application-name"] = "WirePlumber",
-@@ -20,7 +22,7 @@ alsa_monitor.properties = {
-
- alsa_monitor.rules = {
- -- An array of matches/actions to evaluate.
-- --
-+ --
- -- If you want to disable some devices or nodes, you can apply properties per device as the following example.
- -- The name can be found by running pw-cli ls Device, or pw-cli dump Device
- --{
-diff --git a/src/config/main.lua.d/50-default-access-config.lua b/src/config/main.lua.d/50-default-access-config.lua
-index 6cf18bed..45cc5b73 100644
---- a/src/config/main.lua.d/50-default-access-config.lua
-+++ b/src/config/main.lua.d/50-default-access-config.lua
-@@ -1,4 +1,7 @@
- default_access.properties = {
-+ -- Enable the use of the flatpak portal integration.
-+ -- Disable if you are running a system-wide instance, which
-+ -- doesn't have access to the D-Bus user session
- ["enable-flatpak-portal"] = true,
- }
-
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.9-scripts-policy-device-profile-clear-tables-when-devi.patch b/media-video/wireplumber/files/wireplumber-0.4.9-scripts-policy-device-profile-clear-tables-when-devi.patch
deleted file mode 100644
index 4dc8e276fbfa..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.9-scripts-policy-device-profile-clear-tables-when-devi.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/da5d25acbea5ae03336bd2b4ef2b0687b380978e
-
-From da5d25acbea5ae03336bd2b4ef2b0687b380978e Mon Sep 17 00:00:00 2001
-From: Pauli Virtanen <pav@iki.fi>
-Date: Mon, 28 Mar 2022 20:16:52 +0300
-Subject: [PATCH] scripts: policy-device-profile: clear tables when devices
- removed
-
-When device ids are invalidated, clear all local tables about them,
-because the id may be reused by different object, or the same object
-reappearing.
----
- src/scripts/policy-device-profile.lua | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/scripts/policy-device-profile.lua b/src/scripts/policy-device-profile.lua
-index d0aa2696..9daeafaa 100644
---- a/src/scripts/policy-device-profile.lua
-+++ b/src/scripts/policy-device-profile.lua
-@@ -229,4 +229,10 @@ self.om:connect("object-added", function (_, device)
- handleProfiles (device, true)
- end)
-
-+self.om:connect("object-removed", function (_, device)
-+ local dev_id = device["bound-id"]
-+ self.active_profiles[dev_id] = nil
-+ self.best_profiles[dev_id] = nil
-+end)
-+
- self.om:activate()
---
-GitLab
-
diff --git a/media-video/wireplumber/wireplumber-0.4.10-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.10-r1.ebuild
deleted file mode 100644
index 4c9a4ce04761..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.10-r1.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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.48:=
- virtual/libc
- 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}"/${P}-config-fix-enabled-property-to-default-to-true-when.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
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.9-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.9-r1.ebuild
deleted file mode 100644
index b2cb2a7e4d87..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.9-r1.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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 ~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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.48:=
- virtual/libc
- 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}"/${P}-scripts-policy-device-profile-clear-tables-when-devi.patch
- "${FILESDIR}"/${P}-config-document-which-options-need-to-be-turned-off-.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
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.9.ebuild b/media-video/wireplumber/wireplumber-0.4.9.ebuild
deleted file mode 100644
index 0c71a9ba7f9b..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.9.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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 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
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.48:=
- virtual/libc
- 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 )
-
-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
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-07-09 4:01 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-07-09 4:01 UTC (permalink / raw
To: gentoo-commits
commit: ab7af1e051e1ed13f33fb08389526e31f276a00f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 9 03:53:45 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jul 9 03:53:45 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab7af1e0
media-video/wireplumber: backport crash fix
The worst thing being I actually saw this, had it open, but
forgot about it (because I think I'd confused it with the
done-PW backports).
Bug: https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/303
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../files/wireplumber-0.4.11-alsa-lua-crash.patch | 33 ++++++
.../wireplumber/wireplumber-0.4.11-r1.ebuild | 129 +++++++++++++++++++++
2 files changed, 162 insertions(+)
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
new file mode 100644
index 000000000000..3bc8bbd08bb6
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.11-alsa-lua-crash.patch
@@ -0,0 +1,33 @@
+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/wireplumber-0.4.11-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.11-r1.ebuild
new file mode 100644
index 000000000000..9b738b1c7ac8
--- /dev/null
+++ b/media-video/wireplumber/wireplumber-0.4.11-r1.ebuild
@@ -0,0 +1,129 @@
+# 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
+)
+
+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
+}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2022-10-28 19:53 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2022-10-28 19:53 UTC (permalink / raw
To: gentoo-commits
commit: b01443af1c01a079c4095a8b840c0e645208c7ab
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 28 19:35:35 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct 28 19:50:03 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b01443af
media-video/wireplumber: drop 0.4.10-r4, 0.4.11-r2
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 -
...ix-device-name-deduplication-when-reserva.patch | 117 -------------
...-enabled-property-to-default-to-true-when.patch | 129 --------------
...nodes-don-t-check-if-all-device-nodes-are.patch | 187 ---------------------
...pting-allow-converting-GValue-holding-NUL.patch | 36 ----
...10-m-lua-scripting-fix-object-refcounting.patch | 32 ----
.../wireplumber/wireplumber-0.4.10-r4.ebuild | 125 --------------
.../wireplumber/wireplumber-0.4.11-r2.ebuild | 130 --------------
8 files changed, 757 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index e92dd084c2d1..41f5d74161ca 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,3 +1,2 @@
-DIST wireplumber-0.4.10.tar.gz 395588 BLAKE2B 6df1af17d1e53ab1449a2f6f9af5a0c4f7b1cd981e07556e5ea3c6b4d5d624e66b97ce4f945f7ccccebbf72b75d35d10990fac11b5228275f27e5320885ff1ec SHA512 342e8bba2cf00faab71ef39bb361b5ada66ff3a68ccf7a756ea1ca402da6e94784eece277ca02992bc7573c51cb8b1bad33aa9c593b3d1bfe0bb0286e2f4506f
DIST wireplumber-0.4.11.tar.gz 403931 BLAKE2B 77ef2540081420d4255dcb54165d0aceb08d97c60d19b9eb7606e90cf95e305e690794a1f46234b53b13765452fea0d23ae6acae9deea672db67e21c31d2307d SHA512 73a5120cd0c55b5fe5248cc22497efd23e40bb91961553639d9cf1bbf138d273db65153fa3c1bb0d2794f869e077e011156d323832534f62651d66f8cc87dca4
DIST wireplumber-0.4.12.tar.gz 407239 BLAKE2B 10c5156c730bffc6542976f2d9cdd9634fdfcf6b1271cfd9df2357feb61ce9fbbd606728444e927ad060934e76be4ff99ba9db6c73823f6295a23977ed89a55a SHA512 0da81b62810d15264a14c3349596801cbf6f6f7ee21a1aef867e52f639dfb9b823c5181514ffa8124c3f387499fefe7f14d8cb589bcd785edd9c0e196e114601
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch b/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch
deleted file mode 100644
index 610db0e11e89..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-alsa.lua-fix-device-name-deduplication-when-reserva.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c00c5a6675b6640db13111c808eaa3251917c412
-
-From c00c5a6675b6640db13111c808eaa3251917c412 Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Wed, 18 May 2022 10:51:41 -0400
-Subject: [PATCH] alsa.lua: fix device name deduplication when reservation is
- enabled
-
-Fixes #241
----
- src/scripts/monitors/alsa.lua | 47 +++++++++++++++++++----------------
- 1 file changed, 25 insertions(+), 22 deletions(-)
-
-diff --git a/src/scripts/monitors/alsa.lua b/src/scripts/monitors/alsa.lua
-index 01d241db..7beed3a8 100644
---- a/src/scripts/monitors/alsa.lua
-+++ b/src/scripts/monitors/alsa.lua
-@@ -11,6 +11,10 @@ local config = ... or {}
- -- ensure config.properties is not nil
- config.properties = config.properties or {}
-
-+-- unique device/node name tables
-+device_names_table = nil
-+node_names_table = nil
-+
- -- preprocess rules and create Interest objects
- for _, r in ipairs(config.rules or {}) do
- r.interests = {}
-@@ -41,16 +45,6 @@ function rulesApplyProperties(properties)
- end
- end
-
--function findDuplicate(parent, id, property, value)
-- for i = 0, id - 1, 1 do
-- local obj = parent:get_managed_object(i)
-- if obj and obj.properties[property] == value then
-- return true
-- end
-- end
-- return false
--end
--
- function nonempty(str)
- return str ~= "" and str or nil
- end
-@@ -125,11 +119,11 @@ function createNode(parent, id, type, factory, properties)
-
- -- deduplicate nodes with the same name
- for counter = 2, 99, 1 do
-- if findDuplicate(parent, id, "node.name", properties["node.name"]) then
-- properties["node.name"] = name .. "." .. counter
-- else
-+ if node_names_table[properties["node.name"]] ~= true then
-+ node_names_table[properties["node.name"]] = true
- break
- end
-+ properties["node.name"] = name .. "." .. counter
- end
- end
-
-@@ -186,6 +180,10 @@ function createDevice(parent, id, factory, properties)
- local device = SpaDevice(factory, properties)
- if device then
- device:connect("create-object", createNode)
-+ device:connect("object-removed", function (parent, id)
-+ local node = parent:get_managed_object(id)
-+ node_names_table[node.properties["node.name"]] = nil
-+ end)
- device:activate(Feature.SpaDevice.ENABLED | Feature.Proxy.BOUND)
- parent:store_managed_object(id, device)
- else
-@@ -205,11 +203,11 @@ function prepareDevice(parent, id, type, factory, properties)
-
- -- deduplicate devices with the same name
- for counter = 2, 99, 1 do
-- if findDuplicate(parent, id, "device.name", properties["device.name"]) then
-- properties["device.name"] = name .. "." .. counter
-- else
-+ if device_names_table[properties["device.name"]] ~= true then
-+ device_names_table[properties["device.name"]] = true
- break
- end
-+ properties["device.name"] = name .. "." .. counter
- end
-
- -- ensure the device has a description
-@@ -337,16 +335,21 @@ function createMonitor ()
- -- handle create-object to prepare device
- m:connect("create-object", prepareDevice)
-
-- -- if dbus reservation, handle object-removed to destroy device reservations
-- if rd_plugin then
-- m:connect("object-removed", function (parent, id)
-- local device = parent:get_managed_object(id)
-+ -- handle object-removed to destroy device reservations and recycle device name
-+ m:connect("object-removed", function (parent, id)
-+ local device = parent:get_managed_object(id)
-+ if rd_plugin then
- local rd_name = device.properties["api.dbus.ReserveDevice1"]
- if rd_name then
- rd_plugin:call("destroy-reservation", rd_name)
- end
-- end)
-- end
-+ end
-+ device_names_table[device.properties["device.name"]] = nil
-+ end)
-+
-+ -- reset the name tables to make sure names are recycled
-+ device_names_table = {}
-+ node_names_table = {}
-
- -- activate monitor
- Log.info("Activating ALSA monitor")
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-config-fix-enabled-property-to-default-to-true-when.patch b/media-video/wireplumber/files/wireplumber-0.4.10-config-fix-enabled-property-to-default-to-true-when.patch
deleted file mode 100644
index 40a486616580..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-config-fix-enabled-property-to-default-to-true-when.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/1f045309208ab5d927883b5adc2b7d1623fae162
-
-From 1f045309208ab5d927883b5adc2b7d1623fae162 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Thu, 12 May 2022 12:19:38 +0300
-Subject: [PATCH] config: fix enabled property to default to "true" when not
- defined
-
-Fixes backwards compatibility with older config files
-
-Fixes: #254
----
- src/config/bluetooth.lua.d/30-bluez-monitor.lua | 2 +-
- src/config/main.lua.d/20-default-access.lua | 2 +-
- src/config/main.lua.d/30-alsa-monitor.lua | 2 +-
- src/config/main.lua.d/30-libcamera-monitor.lua | 2 +-
- src/config/main.lua.d/30-v4l2-monitor.lua | 2 +-
- src/config/main.lua.d/40-device-defaults.lua | 2 +-
- src/config/main.lua.d/40-stream-defaults.lua | 2 +-
- src/config/policy.lua.d/10-default-policy.lua | 2 +-
- 8 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/config/bluetooth.lua.d/30-bluez-monitor.lua b/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-index b40026c2..a870aa5d 100644
---- a/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-+++ b/src/config/bluetooth.lua.d/30-bluez-monitor.lua
-@@ -3,7 +3,7 @@ bluez_monitor.properties = {}
- bluez_monitor.rules = {}
-
- function bluez_monitor.enable()
-- if not bluez_monitor.enabled then
-+ if bluez_monitor.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/20-default-access.lua b/src/config/main.lua.d/20-default-access.lua
-index a6ffb2ee..0a7eb955 100644
---- a/src/config/main.lua.d/20-default-access.lua
-+++ b/src/config/main.lua.d/20-default-access.lua
-@@ -3,7 +3,7 @@ default_access.properties = {}
- default_access.rules = {}
-
- function default_access.enable()
-- if not default_access.enabled then
-+ if default_access.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/30-alsa-monitor.lua b/src/config/main.lua.d/30-alsa-monitor.lua
-index da0b2c70..8e45e434 100644
---- a/src/config/main.lua.d/30-alsa-monitor.lua
-+++ b/src/config/main.lua.d/30-alsa-monitor.lua
-@@ -3,7 +3,7 @@ alsa_monitor.properties = {}
- alsa_monitor.rules = {}
-
- function alsa_monitor.enable()
-- if not alsa_monitor.enabled then
-+ if alsa_monitor.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/30-libcamera-monitor.lua b/src/config/main.lua.d/30-libcamera-monitor.lua
-index 4a8257ff..cd820a83 100644
---- a/src/config/main.lua.d/30-libcamera-monitor.lua
-+++ b/src/config/main.lua.d/30-libcamera-monitor.lua
-@@ -3,7 +3,7 @@ libcamera_monitor.properties = {}
- libcamera_monitor.rules = {}
-
- function libcamera_monitor.enable()
-- if not libcamera_monitor.enabled then
-+ if libcamera_monitor.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/30-v4l2-monitor.lua b/src/config/main.lua.d/30-v4l2-monitor.lua
-index 7cfd4bcd..3fbdc9e7 100644
---- a/src/config/main.lua.d/30-v4l2-monitor.lua
-+++ b/src/config/main.lua.d/30-v4l2-monitor.lua
-@@ -3,7 +3,7 @@ v4l2_monitor.properties = {}
- v4l2_monitor.rules = {}
-
- function v4l2_monitor.enable()
-- if not v4l2_monitor.enabled then
-+ if v4l2_monitor.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/40-device-defaults.lua b/src/config/main.lua.d/40-device-defaults.lua
-index 55aafe85..2204c4ac 100644
---- a/src/config/main.lua.d/40-device-defaults.lua
-+++ b/src/config/main.lua.d/40-device-defaults.lua
-@@ -38,7 +38,7 @@ device_defaults.persistent_profiles = {
- }
-
- function device_defaults.enable()
-- if not device_defaults.enabled then
-+ if device_defaults.enabled == false then
- return
- end
-
-diff --git a/src/config/main.lua.d/40-stream-defaults.lua b/src/config/main.lua.d/40-stream-defaults.lua
-index 2975f4f6..307d83df 100644
---- a/src/config/main.lua.d/40-stream-defaults.lua
-+++ b/src/config/main.lua.d/40-stream-defaults.lua
-@@ -25,7 +25,7 @@ stream_defaults.rules = {
- }
-
- function stream_defaults.enable()
-- if not stream_defaults.enabled then
-+ if stream_defaults.enabled == false then
- return
- end
-
-diff --git a/src/config/policy.lua.d/10-default-policy.lua b/src/config/policy.lua.d/10-default-policy.lua
-index 7b00e94e..edfdeb1c 100644
---- a/src/config/policy.lua.d/10-default-policy.lua
-+++ b/src/config/policy.lua.d/10-default-policy.lua
-@@ -38,7 +38,7 @@ bluetooth_policy.policy = {
- }
-
- function default_policy.enable()
-- if not default_policy.enabled then
-+ if default_policy.enabled == false then
- return
- end
-
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-default-nodes-don-t-check-if-all-device-nodes-are.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-default-nodes-don-t-check-if-all-device-nodes-are.patch
deleted file mode 100644
index d9c51489a893..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-m-default-nodes-don-t-check-if-all-device-nodes-are.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/392cce2136e81ac3146078eacbbae85b694c917a
-
-From 392cce2136e81ac3146078eacbbae85b694c917a Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Fri, 20 May 2022 07:38:24 -0400
-Subject: [PATCH] m-default-nodes: don't check if all device nodes are ready
- when finding default node
-
-This check was originally added to avoid a small audio glitch when changing
-default nodes while also changing the device profile (eg Gnome Sound Settings).
-The check is removed because it causes issues when disabling alsa nodes. There
-are plans to fix the audio glitch issue in the future with the planned
-event-dispatcher architecture.
-
-Fixes #279
----
- modules/module-default-nodes.c | 136 ---------------------------------
- 1 file changed, 136 deletions(-)
-
-diff --git a/modules/module-default-nodes.c b/modules/module-default-nodes.c
-index 0fdaed5..577f9bb 100644
---- a/modules/module-default-nodes.c
-+++ b/modules/module-default-nodes.c
-@@ -345,135 +345,6 @@ reevaluate_default_node (WpDefaultNodes * self, WpMetadata *m, gint node_t)
- }
- }
-
--static guint
--get_device_total_nodes (WpPipewireObject * proxy)
--{
-- g_autoptr (WpIterator) profiles = NULL;
-- g_auto (GValue) item = G_VALUE_INIT;
--
-- profiles = wp_pipewire_object_enum_params_sync (proxy, "Profile", NULL);
-- if (!profiles)
-- return 0;
--
-- for (; wp_iterator_next (profiles, &item); g_value_unset (&item)) {
-- WpSpaPod *pod = g_value_get_boxed (&item);
-- gint idx = -1;
-- const gchar *name = NULL;
-- g_autoptr (WpSpaPod) classes = NULL;
--
-- /* Parse */
-- if (!wp_spa_pod_get_object (pod, NULL,
-- "index", "i", &idx,
-- "name", "s", &name,
-- "classes", "?P", &classes,
-- NULL))
-- continue;
-- if (!classes)
-- continue;
--
-- /* Parse profile classes */
-- {
-- g_autoptr (WpIterator) it = wp_spa_pod_new_iterator (classes);
-- g_auto (GValue) v = G_VALUE_INIT;
-- gint total_nodes = 0;
-- for (; wp_iterator_next (it, &v); g_value_unset (&v)) {
-- WpSpaPod *entry = g_value_get_boxed (&v);
-- g_autoptr (WpSpaPodParser) pp = NULL;
-- const gchar *media_class = NULL;
-- gint n_nodes = 0;
-- g_return_val_if_fail (entry, 0);
-- if (!wp_spa_pod_is_struct (entry))
-- continue;
-- pp = wp_spa_pod_parser_new_struct (entry);
-- g_return_val_if_fail (pp, 0);
-- g_return_val_if_fail (wp_spa_pod_parser_get_string (pp, &media_class), 0);
-- g_return_val_if_fail (wp_spa_pod_parser_get_int (pp, &n_nodes), 0);
-- wp_spa_pod_parser_end (pp);
--
-- total_nodes += n_nodes;
-- }
--
-- if (total_nodes > 0)
-- return total_nodes;
-- }
-- }
--
-- return 0;
--}
--
--static gboolean
--nodes_ready (WpDefaultNodes * self)
--{
-- g_autoptr (WpIterator) it = NULL;
-- g_auto (GValue) val = G_VALUE_INIT;
--
-- /* Get the total number of nodes for each device and make sure they exist
-- * and have at least 1 port */
-- it = wp_object_manager_new_filtered_iterator (self->rescan_om,
-- WP_TYPE_DEVICE, NULL);
-- for (; wp_iterator_next (it, &val); g_value_unset (&val)) {
-- WpPipewireObject *device = g_value_get_object (&val);
-- guint total_nodes = get_device_total_nodes (device);
-- if (total_nodes > 0) {
-- guint32 device_id = wp_proxy_get_bound_id (WP_PROXY (device));
-- g_autoptr (WpIterator) node_it = NULL;
-- g_auto (GValue) node_val = G_VALUE_INIT;
-- guint ready_nodes = 0;
--
-- node_it = wp_object_manager_new_filtered_iterator (self->rescan_om,
-- WP_TYPE_NODE, WP_CONSTRAINT_TYPE_PW_PROPERTY,
-- PW_KEY_DEVICE_ID, "=i", device_id, NULL);
-- for (; wp_iterator_next (node_it, &node_val); g_value_unset (&node_val)) {
-- WpPipewireObject *node = g_value_get_object (&node_val);
-- g_autoptr (WpPort) port =
-- wp_object_manager_lookup (self->rescan_om,
-- WP_TYPE_PORT, WP_CONSTRAINT_TYPE_PW_PROPERTY,
-- PW_KEY_NODE_ID, "=u", wp_proxy_get_bound_id (WP_PROXY (node)),
-- NULL);
-- if (port)
-- ready_nodes++;
-- }
--
-- if (ready_nodes < total_nodes) {
-- const gchar *device_name = wp_pipewire_object_get_property (
-- WP_PIPEWIRE_OBJECT (device), PW_KEY_DEVICE_NAME);
-- wp_debug_object (self, "device '%s' is not ready (%d/%d)", device_name,
-- ready_nodes, total_nodes);
-- return FALSE;
-- }
-- }
-- }
--
-- /* Make sure Audio and Video virtual sources have ports */
-- {
-- g_autoptr (WpIterator) node_it = NULL;
-- g_auto (GValue) node_val = G_VALUE_INIT;
-- node_it = wp_object_manager_new_filtered_iterator (self->rescan_om,
-- WP_TYPE_NODE, WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_DEVICE_ID, "-",
-- NULL);
-- for (; wp_iterator_next (node_it, &node_val); g_value_unset (&node_val)) {
-- WpPipewireObject *node = g_value_get_object (&node_val);
-- const gchar *media_class = wp_pipewire_object_get_property (
-- WP_PIPEWIRE_OBJECT (node), PW_KEY_MEDIA_CLASS);
-- g_autoptr (WpPort) port =
-- wp_object_manager_lookup (self->rescan_om,
-- WP_TYPE_PORT, WP_CONSTRAINT_TYPE_PW_PROPERTY,
-- PW_KEY_NODE_ID, "=u", wp_proxy_get_bound_id (WP_PROXY (node)),
-- NULL);
-- if (!port &&
-- (g_strcmp0 ("Audio/Source/Virtual", media_class) == 0 ||
-- g_strcmp0 ("Video/Source/Virtual", media_class) == 0)) {
-- const gchar *node_name = wp_pipewire_object_get_property (
-- WP_PIPEWIRE_OBJECT (node), PW_KEY_NODE_NAME);
-- wp_debug_object (self, "virtual node '%s' is not ready", node_name);
-- return FALSE;
-- }
-- }
-- }
--
-- return TRUE;
--}
--
- static void
- sync_rescan (WpCore * core, GAsyncResult * res, WpDefaultNodes * self)
- {
-@@ -491,10 +362,6 @@ sync_rescan (WpCore * core, GAsyncResult * res, WpDefaultNodes * self)
- if (!metadata)
- return;
-
-- /* Make sure nodes are ready for current profile */
-- if (!nodes_ready (self))
-- return;
--
- wp_trace_object (self, "re-evaluating defaults");
- reevaluate_default_node (self, metadata, AUDIO_SINK);
- reevaluate_default_node (self, metadata, AUDIO_SOURCE);
-@@ -584,13 +451,10 @@ on_metadata_added (WpObjectManager *om, WpMetadata *metadata, gpointer d)
- self->rescan_om = wp_object_manager_new ();
- wp_object_manager_add_interest (self->rescan_om, WP_TYPE_DEVICE, NULL);
- wp_object_manager_add_interest (self->rescan_om, WP_TYPE_NODE, NULL);
-- wp_object_manager_add_interest (self->rescan_om, WP_TYPE_PORT, NULL);
- wp_object_manager_request_object_features (self->rescan_om, WP_TYPE_DEVICE,
- WP_OBJECT_FEATURES_ALL);
- wp_object_manager_request_object_features (self->rescan_om, WP_TYPE_NODE,
- WP_OBJECT_FEATURES_ALL);
-- wp_object_manager_request_object_features (self->rescan_om, WP_TYPE_PORT,
-- WP_OBJECT_FEATURES_ALL);
- g_signal_connect_object (self->rescan_om, "objects-changed",
- G_CALLBACK (schedule_rescan), self, G_CONNECT_SWAPPED);
- g_signal_connect_object (self->rescan_om, "object-added",
---
-2.35.1
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
deleted file mode 100644
index c319ac4a617b..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c2f31bb550755acba31da2e9f5bbdf646ed5e805
-
-From c2f31bb550755acba31da2e9f5bbdf646ed5e805 Mon Sep 17 00:00:00 2001
-From: Julian Bouzas <julian.bouzas@collabora.com>
-Date: Mon, 16 May 2022 15:41:10 -0400
-Subject: [PATCH] m-lua-scripting: allow converting GValue holding NULL objects
- to Lua
-
----
- modules/module-lua-scripting/wplua/value.c | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/modules/module-lua-scripting/wplua/value.c b/modules/module-lua-scripting/wplua/value.c
-index 133051a4..e31ae4ac 100644
---- a/modules/module-lua-scripting/wplua/value.c
-+++ b/modules/module-lua-scripting/wplua/value.c
-@@ -314,9 +314,14 @@ wplua_gvalue_to_lua (lua_State *L, const GValue *v)
- wplua_pushboxed (L, G_VALUE_TYPE (v), g_value_dup_boxed (v));
- break;
- case G_TYPE_OBJECT:
-- case G_TYPE_INTERFACE:
-- wplua_pushobject (L, g_value_dup_object (v));
-+ case G_TYPE_INTERFACE: {
-+ GObject *object = g_value_dup_object (v);
-+ if (object)
-+ wplua_pushobject (L, g_value_dup_object (v));
-+ else
-+ lua_pushnil (L);
- break;
-+ }
- case G_TYPE_ENUM:
- wplua_enum_to_lua (L, g_value_get_enum (v), G_VALUE_TYPE (v));
- break;
---
-GitLab
-
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch
deleted file mode 100644
index 0b86979ce732..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/7908b8d7be2a2992c57cd549054eda7ce46e4b44
-
-From 13b85bd4a25ab374f5e5e90b7288e6987996856e Mon Sep 17 00:00:00 2001
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Tue, 24 May 2022 11:35:15 +0200
-Subject: [PATCH] m-lua-scripting: fix object refcounting
-
-7908b8d7be2a2992c57cd549054eda7ce46e4b44 ("m-lua-scripting: allow
-converting GValue holding NULL objects to Lua") accidentally added a second
-refcount. As a result, the objects are never freeded.
-
-Remove the second refcount to fix this.
----
- modules/module-lua-scripting/wplua/value.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/module-lua-scripting/wplua/value.c b/modules/module-lua-scripting/wplua/value.c
-index e31ae4a..a7927dc 100644
---- a/modules/module-lua-scripting/wplua/value.c
-+++ b/modules/module-lua-scripting/wplua/value.c
-@@ -317,7 +317,7 @@ wplua_gvalue_to_lua (lua_State *L, const GValue *v)
- case G_TYPE_INTERFACE: {
- GObject *object = g_value_dup_object (v);
- if (object)
-- wplua_pushobject (L, g_value_dup_object (v));
-+ wplua_pushobject (L, object);
- else
- lua_pushnil (L);
- break;
---
-2.35.1
-
diff --git a/media-video/wireplumber/wireplumber-0.4.10-r4.ebuild b/media-video/wireplumber/wireplumber-0.4.10-r4.ebuild
deleted file mode 100644
index 820d1ed7d4a3..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.10-r4.ebuild
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-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.48:=
- 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}"/${P}-config-fix-enabled-property-to-default-to-true-when.patch
- "${FILESDIR}"/${P}-m-lua-scripting-allow-converting-GValue-holding-NUL.patch
- "${FILESDIR}"/${P}-alsa.lua-fix-device-name-deduplication-when-reserva.patch
- "${FILESDIR}"/${P}-m-default-nodes-don-t-check-if-all-device-nodes-are.patch
- "${FILESDIR}"/${P}-m-lua-scripting-fix-object-refcounting.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
-}
diff --git a/media-video/wireplumber/wireplumber-0.4.11-r2.ebuild b/media-video/wireplumber/wireplumber-0.4.11-r2.ebuild
deleted file mode 100644
index 8cef1f20f182..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.11-r2.ebuild
+++ /dev/null
@@ -1,130 +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
-)
-
-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
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2023-04-25 19:01 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2023-04-25 19:01 UTC (permalink / raw
To: gentoo-commits
commit: 7d75832388dfdc5f715e150fcb48ad31b83a7a9a
Author: Matoro Mahri <matoro <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Mon Apr 24 15:24:20 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 25 19:00:44 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d758323
media-video/wireplumber: crank up internal test timeouts
Bug: https://bugs.gentoo.org/902445
Signed-off-by: Matoro Mahri <matoro <AT> users.noreply.github.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../files/wireplumber-0.4.14-backport-pr505.patch | 31 ++++++++++++++++++++++
media-video/wireplumber/wireplumber-0.4.14.ebuild | 1 +
2 files changed, 32 insertions(+)
diff --git a/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch b/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch
new file mode 100644
index 000000000000..35eedb027b0a
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/show_bug.cgi?id=902445
+https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/505
+
+From b7d41ac5bdf08c682c693e91c77d428268a7869e Mon Sep 17 00:00:00 2001
+From: matoro <75928-matoro1@users.noreply.gitlab.freedesktop.org>
+Date: Thu, 20 Apr 2023 17:53:35 -0400
+Subject: [PATCH] tests: common: crank up timeout for slower devices
+
+Timeout of 3 seconds is too slow for test-si-standard-link on slower
+devices, crank this up with plenty of extra margin. Does not
+practically affect running time on faster devices.
+---
+ tests/common/base-test-fixture.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/common/base-test-fixture.h b/tests/common/base-test-fixture.h
+index b15dd1af2..d1b56ab4b 100644
+--- a/tests/common/base-test-fixture.h
++++ b/tests/common/base-test-fixture.h
+@@ -67,7 +67,7 @@ wp_base_test_fixture_setup (WpBaseTestFixture * self, WpBaseTestFlags flags)
+ g_main_context_push_thread_default (self->context);
+
+ /* watchdog */
+- self->timeout_source = g_timeout_source_new_seconds (3);
++ self->timeout_source = g_timeout_source_new_seconds (8);
+ g_source_set_callback (self->timeout_source, (GSourceFunc) timeout_callback,
+ self, NULL);
+ g_source_attach (self->timeout_source, self->context);
+--
+GitLab
+
diff --git a/media-video/wireplumber/wireplumber-0.4.14.ebuild b/media-video/wireplumber/wireplumber-0.4.14.ebuild
index d63e08f157d4..d7df8416b68f 100644
--- a/media-video/wireplumber/wireplumber-0.4.14.ebuild
+++ b/media-video/wireplumber/wireplumber-0.4.14.ebuild
@@ -71,6 +71,7 @@ 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}"/${PN}-0.4.14-backport-pr505.patch # bug 902445
)
src_configure() {
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2023-10-13 15:11 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2023-10-13 15:11 UTC (permalink / raw
To: gentoo-commits
commit: 21fa54526ef9bf24bb31b416e731c3422f3a3d9c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 13 15:10:06 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct 13 15:10:33 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21fa5452
media-video/wireplumber: add 0.4.15
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 +
...-0.4.15-config-disable-sound-server-parts.patch | 24 ++++
media-video/wireplumber/wireplumber-0.4.15.ebuild | 133 +++++++++++++++++++++
3 files changed, 158 insertions(+)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index c33c6fe9cbb3..3deb5840f9c1 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1 +1,2 @@
DIST wireplumber-0.4.14.tar.bz2 323688 BLAKE2B feb6cd4bc4e6617395fc8cc6a6f0c8d61026250f1d4691e60f2778ac6bb92e05a6a4078df95c932931bbf8c57f74c592cacbb2adeb6b2f332514eb50e04746b5 SHA512 51dc830d4dfe000cf6091d728d9ce6248585f5fae729536d611f85a0981722b9ab7f13322b516dc9988cdc15e0859f946aa0b78a35ad13a67e2de8082e6d5549
+DIST wireplumber-0.4.15.tar.bz2 327269 BLAKE2B a733e1e768f31bf6a278df84718d56c86b44a6669144b578e9c9514203eb9967dba008bb3446d293e8362b0be1dc20b0bfbff8d37ae7dc909c49a6438b5527b9 SHA512 53cf2027c69e8f44fc2c0c8910c1371ef8b5020aa1c47ca77f448998e810133821d9aa8de855482308b861f67b3d1cbd039c510460d59c6f9f2a44049577605b
diff --git a/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch
new file mode 100644
index 000000000000..b4f3ecd311f7
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch
@@ -0,0 +1,24 @@
+commit 3d86f51d2c43fd76be2450a8c27836fdd8619cfa
+Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
+Date: Sun May 15 18:19:03 2022 +0300
+
+ config: Disable alsa and bluez monitors by default
+--- a/src/config/bluetooth.lua.d/50-bluez-config.lua
++++ b/src/config/bluetooth.lua.d/50-bluez-config.lua
+@@ -1,4 +1,4 @@
+-bluez_monitor.enabled = true
++bluez_monitor.enabled = false
+
+ bluez_monitor.properties = {
+ -- Enabled roles (default: [ a2dp_sink a2dp_source bap_sink bap_source hfp_hf hfp_ag ])
+--- a/src/config/main.lua.d/50-alsa-config.lua
++++ b/src/config/main.lua.d/50-alsa-config.lua
+@@ -1,4 +1,4 @@
+-alsa_monitor.enabled = true
++alsa_monitor.enabled = false
+
+ alsa_monitor.properties = {
+ -- Create a JACK device. This is not enabled by default because
+--
+2.42.0
+
diff --git a/media-video/wireplumber/wireplumber-0.4.15.ebuild b/media-video/wireplumber/wireplumber-0.4.15.ebuild
new file mode 100644
index 000000000000..65a32be64aeb
--- /dev/null
+++ b/media-video/wireplumber/wireplumber-0.4.15.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2023 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.bz2"
+ 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
+ test? ( sys-apps/dbus )
+"
+
+DEPEND="
+ ${LUA_DEPS}
+ >=dev-libs/glib-2.62
+ >=media-video/pipewire-0.3.65-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.15-config-disable-sound-server-parts.patch # defer enabling sound server parts to media-video/pipewire
+)
+
+src_configure() {
+ local emesonargs=(
+ -Ddaemon=true
+ -Dtools=true
+ -Dmodules=true
+ -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_use test dbus-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
+}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2024-02-02 3:50 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2024-02-02 3:50 UTC (permalink / raw
To: gentoo-commits
commit: ee515becc753986db3bff2de767a7315752906bb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 2 03:47:39 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 2 03:47:39 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee515bec
media-video/wireplumber: drop 0.4.14
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 -
...-0.4.10-config-disable-sound-server-parts.patch | 26 ----
.../files/wireplumber-0.4.14-backport-pr505.patch | 31 -----
media-video/wireplumber/wireplumber-0.4.14.ebuild | 134 ---------------------
4 files changed, 192 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index c26c988f4af4..41d841c64527 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,2 +1 @@
-DIST wireplumber-0.4.14.tar.bz2 323688 BLAKE2B feb6cd4bc4e6617395fc8cc6a6f0c8d61026250f1d4691e60f2778ac6bb92e05a6a4078df95c932931bbf8c57f74c592cacbb2adeb6b2f332514eb50e04746b5 SHA512 51dc830d4dfe000cf6091d728d9ce6248585f5fae729536d611f85a0981722b9ab7f13322b516dc9988cdc15e0859f946aa0b78a35ad13a67e2de8082e6d5549
DIST wireplumber-0.4.17.tar.bz2 330355 BLAKE2B fec1cf75bec687bff1cb48416cf22503a79609cf11220ab9353d3b8038cae1db63da8aa269aca034c0c0afd474e2ba89b236bb7e778da111516e3b15d5449f02 SHA512 5efb71091f262458bc912f4670249fac3ef858021785fbee9be749564a3fa452b1c4ff75634132f7d44fd06d7fc5ea2debb022b1f4a8d5c9c3afa992fab7ecf8
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch
deleted file mode 100644
index a8bf6f106129..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.10-config-disable-sound-server-parts.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-commit 3d86f51d2c43fd76be2450a8c27836fdd8619cfa
-Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
-Date: Sun May 15 18:19:03 2022 +0300
-
- config: Disable alsa and bluez monitors by default
-
-diff --git a/src/config/bluetooth.lua.d/50-bluez-config.lua b/src/config/bluetooth.lua.d/50-bluez-config.lua
-index d5727d3..938eae0 100644
---- a/src/config/bluetooth.lua.d/50-bluez-config.lua
-+++ b/src/config/bluetooth.lua.d/50-bluez-config.lua
-@@ -1,4 +1,4 @@
--bluez_monitor.enabled = true
-+bluez_monitor.enabled = false
-
- bluez_monitor.properties = {
- -- These features do not work on all headsets, so they are enabled
-diff --git a/src/config/main.lua.d/50-alsa-config.lua b/src/config/main.lua.d/50-alsa-config.lua
-index 3468333..d4c065b 100644
---- a/src/config/main.lua.d/50-alsa-config.lua
-+++ b/src/config/main.lua.d/50-alsa-config.lua
-@@ -1,4 +1,4 @@
--alsa_monitor.enabled = true
-+alsa_monitor.enabled = false
-
- alsa_monitor.properties = {
- -- Create a JACK device. This is not enabled by default because
diff --git a/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch b/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch
deleted file mode 100644
index 35eedb027b0a..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.14-backport-pr505.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=902445
-https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/505
-
-From b7d41ac5bdf08c682c693e91c77d428268a7869e Mon Sep 17 00:00:00 2001
-From: matoro <75928-matoro1@users.noreply.gitlab.freedesktop.org>
-Date: Thu, 20 Apr 2023 17:53:35 -0400
-Subject: [PATCH] tests: common: crank up timeout for slower devices
-
-Timeout of 3 seconds is too slow for test-si-standard-link on slower
-devices, crank this up with plenty of extra margin. Does not
-practically affect running time on faster devices.
----
- tests/common/base-test-fixture.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/common/base-test-fixture.h b/tests/common/base-test-fixture.h
-index b15dd1af2..d1b56ab4b 100644
---- a/tests/common/base-test-fixture.h
-+++ b/tests/common/base-test-fixture.h
-@@ -67,7 +67,7 @@ wp_base_test_fixture_setup (WpBaseTestFixture * self, WpBaseTestFlags flags)
- g_main_context_push_thread_default (self->context);
-
- /* watchdog */
-- self->timeout_source = g_timeout_source_new_seconds (3);
-+ self->timeout_source = g_timeout_source_new_seconds (8);
- g_source_set_callback (self->timeout_source, (GSourceFunc) timeout_callback,
- self, NULL);
- g_source_attach (self->timeout_source, self->context);
---
-GitLab
-
diff --git a/media-video/wireplumber/wireplumber-0.4.14.ebuild b/media-video/wireplumber/wireplumber-0.4.14.ebuild
deleted file mode 100644
index d7df8416b68f..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.14.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2023 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.bz2"
- 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
- test? ( sys-apps/dbus )
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.65-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}"/${PN}-0.4.14-backport-pr505.patch # bug 902445
-)
-
-src_configure() {
- local emesonargs=(
- -Ddaemon=true
- -Dtools=true
- -Dmodules=true
- -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_use test dbus-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
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2024-09-08 9:24 Sam James
0 siblings, 0 replies; 19+ messages in thread
From: Sam James @ 2024-09-08 9:24 UTC (permalink / raw
To: gentoo-commits
commit: ac7e14f88027f14b3b8b745544039de74d2178b3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 8 09:23:30 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 8 09:23:30 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac7e14f8
media-video/wireplumber: add 0.5.6
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-video/wireplumber/Manifest | 1 +
...umber-0.5.6-config-disable-sound-server-parts.patch | 18 ++++++++++++++++++
...ireplumber-9999.ebuild => wireplumber-0.5.6.ebuild} | 2 +-
media-video/wireplumber/wireplumber-9999.ebuild | 2 +-
4 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index 05bb9ac24752..fceeff018ba5 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -2,3 +2,4 @@ DIST wireplumber-0.4.17.tar.bz2 330355 BLAKE2B fec1cf75bec687bff1cb48416cf22503a
DIST wireplumber-0.5.2.tar.bz2 408788 BLAKE2B 51a9c0268212b353b54099d2d57fd93dec5b42d4ec3151f93b4ebd4df3f4478a19858ec8302af58558a9387afa647a00a0872d471f0f2ea5e681978afbdcf553 SHA512 4cd2949739b8af86f73e072fe8c1d8606fa9be77b6e109aa0825d516f11953c4811ae1162da07ae245f7039f4243d01c43b8e9c083d4e0be1066b180484abbfb
DIST wireplumber-0.5.3.tar.bz2 411081 BLAKE2B 627cb0adaddd512e2b5f2e706b622972232f76000d690837da5f03a3628669b99c4768de6590ec378684311915626de7ac3316bda1f5d1152c9df448ec41e389 SHA512 1c62f7f919242b2a9586ff6a532f214b564bcf10c838eae4a64078edf6fd461fc65f364c8af79150e33b86594331446516a1a4c926bb245a4b2ba2d9f63f7243
DIST wireplumber-0.5.5.tar.bz2 411519 BLAKE2B 016641b6b21b6176b0f3f70c0c96ccd32ea4d3609bf337a3c9af6e8219cb160a92e30027e3187adb023d0c35ad822ce9be374d098eab76508f218a7ae2528754 SHA512 50ddc6f275bba89ddac0e55dd2a572a13ca19953bce6bdbca14eadd44f3669c7ad4b39ae857770543567a05ea3e437ccee36a2538fad1f4caa777036ace04f77
+DIST wireplumber-0.5.6.tar.bz2 415566 BLAKE2B 7f5323ddea415bac31bbb5f05b711e52bd631d9e6c4b22b6055055761a19c0a4c16a36a90ecd0f90c3fbfaddad8be57e823ad0b97327569e94074bee21d5e31c SHA512 58b18c1c1f1040e9954de75488a82ff7504fb908f7e5d57dd219f3479612551c94a1384d399a99b983f66859560aaf71c8ab9414318e48abb6f8cd3b88fcecc8
diff --git a/media-video/wireplumber/files/wireplumber-0.5.6-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.5.6-config-disable-sound-server-parts.patch
new file mode 100644
index 000000000000..4e691e5790b3
--- /dev/null
+++ b/media-video/wireplumber/files/wireplumber-0.5.6-config-disable-sound-server-parts.patch
@@ -0,0 +1,18 @@
+From ed5ce9c176db2e26ac9915b4d86c3a076a8093ae Mon Sep 17 00:00:00 2001
+From: "Igor V. Kovalenko" <igor.v.kovalenko@gmail.com>
+Date: Fri, 2 Feb 2024 22:00:03 +0300
+Subject: [PATCH] config: Disable alsa and bluez monitors by default
+
+--- a/src/config/wireplumber.conf
++++ b/src/config/wireplumber.conf
+@@ -72,8 +72,8 @@ wireplumber.profiles = {
+
+ policy.standard = required
+
+- hardware.audio = required
+- hardware.bluetooth = required
++ #hardware.audio = required
++ #hardware.bluetooth = required
+ hardware.video-capture = required
+ }
+
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-0.5.6.ebuild
similarity index 98%
copy from media-video/wireplumber/wireplumber-9999.ebuild
copy to media-video/wireplumber/wireplumber-0.5.6.ebuild
index a3a02062c4c1..05daac42ad03 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-0.5.6.ebuild
@@ -68,7 +68,7 @@ PATCHES=(
# Defer enabling sound server parts to media-video/pipewire
# TODO: Soon, we should be able to migrate to just a dropin at
# /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735.
- "${FILESDIR}"/${PN}-0.4.81-config-disable-sound-server-parts.patch
+ "${FILESDIR}"/${PN}-0.5.6-config-disable-sound-server-parts.patch
)
src_configure() {
diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-9999.ebuild
index a3a02062c4c1..05daac42ad03 100644
--- a/media-video/wireplumber/wireplumber-9999.ebuild
+++ b/media-video/wireplumber/wireplumber-9999.ebuild
@@ -68,7 +68,7 @@ PATCHES=(
# Defer enabling sound server parts to media-video/pipewire
# TODO: Soon, we should be able to migrate to just a dropin at
# /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735.
- "${FILESDIR}"/${PN}-0.4.81-config-disable-sound-server-parts.patch
+ "${FILESDIR}"/${PN}-0.5.6-config-disable-sound-server-parts.patch
)
src_configure() {
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/
@ 2024-09-17 20:00 Andreas Sturmlechner
0 siblings, 0 replies; 19+ messages in thread
From: Andreas Sturmlechner @ 2024-09-17 20:00 UTC (permalink / raw
To: gentoo-commits
commit: 43d93066488c2519a1420c85237887c339c489f3
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 17 18:06:12 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Sep 17 20:00:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43d93066
media-video/wireplumber: drop 0.4.17-r1, 0.5.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-video/wireplumber/Manifest | 2 -
...-0.4.15-config-disable-sound-server-parts.patch | 24 ----
.../wireplumber/wireplumber-0.4.17-r1.ebuild | 122 --------------------
media-video/wireplumber/wireplumber-0.5.2.ebuild | 123 ---------------------
4 files changed, 271 deletions(-)
diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest
index fceeff018ba5..806fb40828a4 100644
--- a/media-video/wireplumber/Manifest
+++ b/media-video/wireplumber/Manifest
@@ -1,5 +1,3 @@
-DIST wireplumber-0.4.17.tar.bz2 330355 BLAKE2B fec1cf75bec687bff1cb48416cf22503a79609cf11220ab9353d3b8038cae1db63da8aa269aca034c0c0afd474e2ba89b236bb7e778da111516e3b15d5449f02 SHA512 5efb71091f262458bc912f4670249fac3ef858021785fbee9be749564a3fa452b1c4ff75634132f7d44fd06d7fc5ea2debb022b1f4a8d5c9c3afa992fab7ecf8
-DIST wireplumber-0.5.2.tar.bz2 408788 BLAKE2B 51a9c0268212b353b54099d2d57fd93dec5b42d4ec3151f93b4ebd4df3f4478a19858ec8302af58558a9387afa647a00a0872d471f0f2ea5e681978afbdcf553 SHA512 4cd2949739b8af86f73e072fe8c1d8606fa9be77b6e109aa0825d516f11953c4811ae1162da07ae245f7039f4243d01c43b8e9c083d4e0be1066b180484abbfb
DIST wireplumber-0.5.3.tar.bz2 411081 BLAKE2B 627cb0adaddd512e2b5f2e706b622972232f76000d690837da5f03a3628669b99c4768de6590ec378684311915626de7ac3316bda1f5d1152c9df448ec41e389 SHA512 1c62f7f919242b2a9586ff6a532f214b564bcf10c838eae4a64078edf6fd461fc65f364c8af79150e33b86594331446516a1a4c926bb245a4b2ba2d9f63f7243
DIST wireplumber-0.5.5.tar.bz2 411519 BLAKE2B 016641b6b21b6176b0f3f70c0c96ccd32ea4d3609bf337a3c9af6e8219cb160a92e30027e3187adb023d0c35ad822ce9be374d098eab76508f218a7ae2528754 SHA512 50ddc6f275bba89ddac0e55dd2a572a13ca19953bce6bdbca14eadd44f3669c7ad4b39ae857770543567a05ea3e437ccee36a2538fad1f4caa777036ace04f77
DIST wireplumber-0.5.6.tar.bz2 415566 BLAKE2B 7f5323ddea415bac31bbb5f05b711e52bd631d9e6c4b22b6055055761a19c0a4c16a36a90ecd0f90c3fbfaddad8be57e823ad0b97327569e94074bee21d5e31c SHA512 58b18c1c1f1040e9954de75488a82ff7504fb908f7e5d57dd219f3479612551c94a1384d399a99b983f66859560aaf71c8ab9414318e48abb6f8cd3b88fcecc8
diff --git a/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch b/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch
deleted file mode 100644
index b4f3ecd311f7..000000000000
--- a/media-video/wireplumber/files/wireplumber-0.4.15-config-disable-sound-server-parts.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-commit 3d86f51d2c43fd76be2450a8c27836fdd8619cfa
-Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
-Date: Sun May 15 18:19:03 2022 +0300
-
- config: Disable alsa and bluez monitors by default
---- a/src/config/bluetooth.lua.d/50-bluez-config.lua
-+++ b/src/config/bluetooth.lua.d/50-bluez-config.lua
-@@ -1,4 +1,4 @@
--bluez_monitor.enabled = true
-+bluez_monitor.enabled = false
-
- bluez_monitor.properties = {
- -- Enabled roles (default: [ a2dp_sink a2dp_source bap_sink bap_source hfp_hf hfp_ag ])
---- a/src/config/main.lua.d/50-alsa-config.lua
-+++ b/src/config/main.lua.d/50-alsa-config.lua
-@@ -1,4 +1,4 @@
--alsa_monitor.enabled = true
-+alsa_monitor.enabled = false
-
- alsa_monitor.properties = {
- -- Create a JACK device. This is not enabled by default because
---
-2.42.0
-
diff --git a/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild b/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild
deleted file mode 100644
index 747c967706dc..000000000000
--- a/media-video/wireplumber/wireplumber-0.4.17-r1.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2024 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.bz2"
- KEYWORDS="amd64 arm arm64 ~loong ~mips 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
- test? ( sys-apps/dbus )
-"
-
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.62
- >=media-video/pipewire-0.3.68:=
- 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.15-config-disable-sound-server-parts.patch # defer enabling sound server parts to media-video/pipewire
-)
-
-src_configure() {
- local emesonargs=(
- -Ddaemon=true
- -Dtools=true
- -Dmodules=true
- -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_use test dbus-tests)
- )
-
- meson_src_configure
-}
-
-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
-}
diff --git a/media-video/wireplumber/wireplumber-0.5.2.ebuild b/media-video/wireplumber/wireplumber-0.5.2.ebuild
deleted file mode 100644
index ea1b71883dbb..000000000000
--- a/media-video/wireplumber/wireplumber-0.5.2.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2024 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
-
-DESCRIPTION="Replacement for pipewire-media-session"
-HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber"
-
-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.bz2"
- KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-
-LICENSE="MIT"
-SLOT="0/0.5"
-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
- test? ( sys-apps/dbus )
-"
-DEPEND="
- ${LUA_DEPS}
- >=dev-libs/glib-2.68
- >=media-video/pipewire-1.0.5-r1:=
- virtual/libintl
- elogind? ( sys-auth/elogind )
- systemd? ( sys-apps/systemd )
-"
-RDEPEND="
- ${DEPEND}
- system-service? (
- acct-user/pipewire
- acct-group/pipewire
- )
-"
-
-DOCS=( {NEWS,README}.rst )
-
-PATCHES=(
- # Defer enabling sound server parts to media-video/pipewire
- # TODO: Soon, we should be able to migrate to just a dropin at
- # /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735.
- "${FILESDIR}"/${PN}-0.4.81-config-disable-sound-server-parts.patch
-)
-
-src_configure() {
- local emesonargs=(
- -Ddaemon=true
- -Dtools=true
- -Dmodules=true
- # Ebuild not wired up yet (Sphinx, Doxygen?)
- -Ddoc=disabled
- # Only used for Sphinx doc generation
- -Dintrospection=disabled
- -Dsystem-lua=true
- -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_use test dbus-tests)
- )
-
- meson_src_configure
-}
-
-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
-}
^ permalink raw reply related [flat|nested] 19+ messages in thread
end of thread, other threads:[~2024-09-17 20:00 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-02 3:50 [gentoo-commits] repo/gentoo:master commit in: media-video/wireplumber/, media-video/wireplumber/files/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2024-09-17 20:00 Andreas Sturmlechner
2024-09-08 9:24 Sam James
2023-10-13 15:11 Sam James
2023-04-25 19:01 Sam James
2022-10-28 19:53 Sam James
2022-07-09 4:01 Sam James
2022-07-04 23:37 Sam James
2022-07-04 21:40 Sam James
2022-05-25 22:59 Sam James
2022-04-17 16:44 Sam James
2022-03-05 22:02 John Helmert III
2022-02-12 5:17 Sam James
2022-01-14 19:58 Sam James
2022-01-14 19:58 Sam James
2022-01-06 20:53 Sam James
2022-01-01 3:49 Sam James
2021-12-01 19:49 Sam James
2021-09-15 17:06 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox