diff mbox series

[meta-multimedia] pipewire: install as configured

Message ID 20220821101303.4155-1-f_l_k@t-online.de
State New
Headers show
Series [meta-multimedia] pipewire: install as configured | expand

Commit Message

Markus Volk Aug. 21, 2022, 10:13 a.m. UTC
This is to make sure that all configured parts of pipewire are installed on the target.
For the systemd case, it would then just be a matter of starting the pipewire user services,
to get it running.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../pipewire/pipewire-media-session_0.4.1.bb          |  1 +
 .../recipes-multimedia/pipewire/pipewire_0.3.56.bb    | 11 +++++++++++
 2 files changed, 12 insertions(+)

Comments

Markus Volk Aug. 21, 2022, 10:15 a.m. UTC | #1
I've sent this as a follow up since i'm unsure if you want that much 
configuration inside meta-openembedded

Am So, 21. Aug 2022 um 12:13:03 +0200 schrieb Markus Volk 
<f_l_k@t-online.de>:
> This is to make sure that all configured parts of pipewire are 
> installed on the target.
> For the systemd case, it would then just be a matter of starting the 
> pipewire user services,
> to get it running.
> 
> Signed-off-by: Markus Volk <f_l_k@t-online.de 
> <mailto:f_l_k@t-online.de>>
> ---
>  .../pipewire/pipewire-media-session_0.4.1.bb          |  1 +
>  .../recipes-multimedia/pipewire/pipewire_0.3.56.bb    | 11 
> +++++++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git 
> a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb 
> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> index 5dd1eb160..2facf8529 100644
> --- 
> a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> +++ 
> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> @@ -11,6 +11,7 @@ DEPENDS = " \
>  "
> 
>  RRECOMMENDS:${PN} += "pipewire"
> +RPROVIDES:${PN} = "media-session"
> 
>  SRC_URI = 
> "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
> 
> diff --git 
> a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb 
> b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> index eb8c9d01a..4dca6cc97 100644
> --- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> @@ -319,6 +319,17 @@ FILES:${PN}-jack = "\
>      ${libdir}/${PW_MODULE_SUBDIR}/jack/libjack*.so.* \
>  "
> 
> +RRECOMMENDS:${PN}:class-target = " \
> +	pipewire-alsa-card-profile \
> +	pipewire-modules-meta \
> +	pipewire-spa-plugins-meta \
> +	${@bb.utils.contains 
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'alsa', 
> 'pipewire-alsa', '', d)} \
> +	${@bb.utils.contains 
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'gstreamer', 
> 'gstreamer1.0-pipewire', '', d)} \
> +	${@bb.utils.contains 
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'jack', 
> 'pipewire-jack', '', d)} \
> +	${@bb.utils.contains 
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'pulseaudio', 
> 'pipewire-pulse', '', d)} \
> +	${PIPEWIRE_SESSION_MANAGER} \
> +"
> +
>  # Dynamic SPA plugin packages (see set_dynamic_metapkg_rdepends).
>  FILES:${PN}-spa-plugins = ""
>  RRECOMMENDS:${PN}-spa-plugins += "${PN}-spa-plugins-meta"
> --
> 2.34.1
>
Peter Kjellerstedt Aug. 22, 2022, 8:26 a.m. UTC | #2
> -----Original Message-----
> From: openembedded-devel@lists.openembedded.org <openembedded-devel@lists.openembedded.org> On Behalf Of Markus Volk
> Sent: den 21 augusti 2022 12:13
> To: openembedded-devel@lists.openembedded.org
> Cc: Markus Volk <f_l_k@t-online.de>
> Subject: [oe] [meta-multimedia][PATCH] pipewire: install as configured
> 
> This is to make sure that all configured parts of pipewire are installed on the target.
> For the systemd case, it would then just be a matter of starting the pipewire user services,
> to get it running.
> 
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  .../pipewire/pipewire-media-session_0.4.1.bb          |  1 +
>  .../recipes-multimedia/pipewire/pipewire_0.3.56.bb    | 11 +++++++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> index 5dd1eb160..2facf8529 100644
> --- a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> @@ -11,6 +11,7 @@ DEPENDS = " \
>  "
> 
>  RRECOMMENDS:${PN} += "pipewire"
> +RPROVIDES:${PN} = "media-session"

Why is this needed?

> 
>  SRC_URI = "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
> 
> diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> index eb8c9d01a..4dca6cc97 100644
> --- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> @@ -319,6 +319,17 @@ FILES:${PN}-jack = "\
>      ${libdir}/${PW_MODULE_SUBDIR}/jack/libjack*.so.* \
>  "
> 
> +RRECOMMENDS:${PN}:class-target = " \
> +	pipewire-alsa-card-profile \
> +	pipewire-modules-meta \
> +	pipewire-spa-plugins-meta \
> +	${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'pipewire-alsa', '', d)} \
> +	${@bb.utils.contains('DISTRO_FEATURES', 'gstreamer', 'gstreamer1.0-pipewire', '', d)} \
> +	${@bb.utils.contains('DISTRO_FEATURES', 'jack', 'pipewire-jack', '', d)} \
> +	${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pipewire-pulse', '', d)} \

The fifth argument to PACKAGECONFIG is for recommendations. That is where these 
conditional dependencies belong.

> +	${PIPEWIRE_SESSION_MANAGER} \
> +"
> +
>  # Dynamic SPA plugin packages (see set_dynamic_metapkg_rdepends).
>  FILES:${PN}-spa-plugins = ""
>  RRECOMMENDS:${PN}-spa-plugins += "${PN}-spa-plugins-meta"
> --
> 2.34.1

//Peter
diff mbox series

Patch

diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
index 5dd1eb160..2facf8529 100644
--- a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
+++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
@@ -11,6 +11,7 @@  DEPENDS = " \
 "
 
 RRECOMMENDS:${PN} += "pipewire"
+RPROVIDES:${PN} = "media-session"
 
 SRC_URI = "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
 
diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
index eb8c9d01a..4dca6cc97 100644
--- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
+++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
@@ -319,6 +319,17 @@  FILES:${PN}-jack = "\
     ${libdir}/${PW_MODULE_SUBDIR}/jack/libjack*.so.* \
 "
 
+RRECOMMENDS:${PN}:class-target = " \
+	pipewire-alsa-card-profile \
+	pipewire-modules-meta \
+	pipewire-spa-plugins-meta \
+	${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'pipewire-alsa', '', d)} \
+	${@bb.utils.contains('DISTRO_FEATURES', 'gstreamer', 'gstreamer1.0-pipewire', '', d)} \
+	${@bb.utils.contains('DISTRO_FEATURES', 'jack', 'pipewire-jack', '', d)} \
+	${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pipewire-pulse', '', d)} \
+	${PIPEWIRE_SESSION_MANAGER} \
+"
+
 # Dynamic SPA plugin packages (see set_dynamic_metapkg_rdepends).
 FILES:${PN}-spa-plugins = ""
 RRECOMMENDS:${PN}-spa-plugins += "${PN}-spa-plugins-meta"