diff options
| author | Carlos Rafael Giani <crg7475@mailbox.org> | 2022-02-16 21:55:02 +0100 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2022-02-17 11:12:44 -0800 |
| commit | 6c6b8d97b4dd6dd3e951e9e0f66bf5ad505d73f8 (patch) | |
| tree | d5be1b89b606661338362627bda8a11375489b61 | |
| parent | 5c379cf62588c4e2365570010bcb115d5360e930 (diff) | |
| download | meta-openembedded-6c6b8d97b4dd6dd3e951e9e0f66bf5ad505d73f8.tar.gz | |
wireplumber: Improve configuration
By default, the WirePlumber lua scripts try to access a session DBus, which
is not available if WirePlumber is run system wide. Add a small script
that turns off the bits that require session DBus. These involve reserving
ALSA devices (only useful in multi-user desktop setups) and Flatpak.
Also, fix the configuration file paths (WirePlumber uses /usr/share instead
of /etc) and add the correct files to CONFFILES:${PN}.
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
| -rw-r--r-- | meta-multimedia/recipes-multimedia/wireplumber/files/90-OE-disable-session-dbus-dependent-features.lua | 5 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.8.bb | 17 |
2 files changed, 15 insertions, 7 deletions
diff --git a/meta-multimedia/recipes-multimedia/wireplumber/files/90-OE-disable-session-dbus-dependent-features.lua b/meta-multimedia/recipes-multimedia/wireplumber/files/90-OE-disable-session-dbus-dependent-features.lua new file mode 100644 index 0000000000..353a49c0b5 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/wireplumber/files/90-OE-disable-session-dbus-dependent-features.lua | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | -- These features require a session DBus instance, which is not available | ||
| 2 | -- by default in OE generated images. The absence of such a DBus instance | ||
| 3 | -- causes WirePlumber to fail to start. Turn these off to prevent that. | ||
| 4 | alsa_monitor.properties["alsa.reserve"] = false | ||
| 5 | default_access.properties["enable-flatpak-portal"] = false | ||
diff --git a/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.8.bb b/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.8.bb index 4d26e33608..2310c3a780 100644 --- a/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.8.bb +++ b/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.8.bb | |||
| @@ -13,7 +13,8 @@ DEPENDS = "glib-2.0 glib-2.0-native lua pipewire \ | |||
| 13 | 13 | ||
| 14 | SRCREV = "e14bb72dcc85e2130d0ea96768e5ae3b375a041e" | 14 | SRCREV = "e14bb72dcc85e2130d0ea96768e5ae3b375a041e" |
| 15 | SRC_URI = "git://gitlab.freedesktop.org/pipewire/wireplumber.git;branch=master;protocol=https \ | 15 | SRC_URI = "git://gitlab.freedesktop.org/pipewire/wireplumber.git;branch=master;protocol=https \ |
| 16 | " | 16 | file://90-OE-disable-session-dbus-dependent-features.lua \ |
| 17 | " | ||
| 17 | 18 | ||
| 18 | S = "${WORKDIR}/git" | 19 | S = "${WORKDIR}/git" |
| 19 | 20 | ||
| @@ -50,6 +51,12 @@ PACKAGESPLITFUNCS:append = " set_dynamic_metapkg_rdepends " | |||
| 50 | 51 | ||
| 51 | WP_MODULE_SUBDIR = "wireplumber-0.4" | 52 | WP_MODULE_SUBDIR = "wireplumber-0.4" |
| 52 | 53 | ||
| 54 | add_custom_lua_config_scripts() { | ||
| 55 | install -m 0644 ${WORKDIR}/90-OE-disable-session-dbus-dependent-features.lua ${D}${datadir}/wireplumber/main.lua.d | ||
| 56 | } | ||
| 57 | |||
| 58 | do_install[postfuncs] += "add_custom_lua_config_scripts" | ||
| 59 | |||
| 53 | python split_dynamic_packages () { | 60 | python split_dynamic_packages () { |
| 54 | # Create packages for each WirePlumber module. | 61 | # Create packages for each WirePlumber module. |
| 55 | wp_module_libdir = d.expand('${libdir}/${WP_MODULE_SUBDIR}') | 62 | wp_module_libdir = d.expand('${libdir}/${WP_MODULE_SUBDIR}') |
| @@ -117,12 +124,8 @@ PACKAGES_DYNAMIC = "^${PN}-modules.*" | |||
| 117 | 124 | ||
| 118 | SYSTEMD_SERVICE:${PN} = "wireplumber.service" | 125 | SYSTEMD_SERVICE:${PN} = "wireplumber.service" |
| 119 | CONFFILES:${PN} += " \ | 126 | CONFFILES:${PN} += " \ |
| 120 | ${sysconfdir}/wireplumber/config.lua \ | 127 | ${datadir}/wireplumber/wireplumber.conf \ |
| 121 | ${sysconfdir}/wireplumber/config.lua.d/* \ | 128 | ${datadir}/wireplumber/*.lua.d/* \ |
| 122 | " | ||
| 123 | FILES:${PN} += " \ | ||
| 124 | ${sysconfdir}/wireplumber/config.lua \ | ||
| 125 | ${sysconfdir}/wireplumber/config.lua.d/* \ | ||
| 126 | " | 129 | " |
| 127 | # Add pipewire to RRECOMMENDS, since WirePlumber expects a PipeWire daemon to | 130 | # Add pipewire to RRECOMMENDS, since WirePlumber expects a PipeWire daemon to |
| 128 | # be present. While in theory any application that uses libpipewire can configure | 131 | # be present. While in theory any application that uses libpipewire can configure |
