diff mbox series

package/weston: add option to build seatd-based launcher

Message ID 20220804204656.31915-1-thomas.petazzoni@bootlin.com
State Accepted
Headers show
Series package/weston: add option to build seatd-based launcher | expand

Commit Message

Thomas Petazzoni Aug. 4, 2022, 8:46 p.m. UTC
Since version 10, the weston-launch command has been deprecated, and
can only be built with -Ddeprecated-weston-launch=true, which
Buildroot does not do.

So the only launcher currently available is logind, provided by
systemd.

But weston provides an alternate way, based on the seatd daemon. This
commit enables this possibility by adding an optional dependency on
BR2_PACKAGE_SEATD and using -Dlauncher-libseat=true.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 package/weston/weston.mk | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Yann E. MORIN Aug. 5, 2022, 4:53 p.m. UTC | #1
Thomas, All,

On 2022-08-04 22:46 +0200, Thomas Petazzoni via buildroot spake thusly:
> Since version 10, the weston-launch command has been deprecated, and
> can only be built with -Ddeprecated-weston-launch=true, which
> Buildroot does not do.
> 
> So the only launcher currently available is logind, provided by
> systemd.
> 
> But weston provides an alternate way, based on the seatd daemon. This
> commit enables this possibility by adding an optional dependency on
> BR2_PACKAGE_SEATD and using -Dlauncher-libseat=true.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/weston/weston.mk | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/package/weston/weston.mk b/package/weston/weston.mk
> index 76df9bf2dd..e6c54ee7aa 100644
> --- a/package/weston/weston.mk
> +++ b/package/weston/weston.mk
> @@ -35,6 +35,13 @@ else
>  WESTON_CONF_OPTS += -Dlauncher-logind=false
>  endif
>  
> +ifeq ($(BR2_PACKAGE_SEATD),y)
> +WESTON_CONF_OPTS += -Dlauncher-libseat=true
> +WESTON_DEPENDENCIES += seatd
> +else
> +WESTON_CONF_OPTS += -Dlauncher-libseat=false
> +endif
> +
>  ifeq ($(BR2_PACKAGE_JPEG),y)
>  WESTON_CONF_OPTS += -Dimage-jpeg=true
>  WESTON_DEPENDENCIES += jpeg
> -- 
> 2.37.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Yann E. MORIN Aug. 5, 2022, 4:57 p.m. UTC | #2
Thomas, All,

On 2022-08-04 22:46 +0200, Thomas Petazzoni via buildroot spake thusly:
> Since version 10, the weston-launch command has been deprecated, and
> can only be built with -Ddeprecated-weston-launch=true, which
> Buildroot does not do.
> 
> So the only launcher currently available is logind, provided by
> systemd.

Forgot to add in my previous reply...

Is a launcher mandatory? Should we en sure that at least one is present?
I.e. if dbus+systemd is not set, then select seatd?

Regards,
Yann E. MORIN.

> But weston provides an alternate way, based on the seatd daemon. This
> commit enables this possibility by adding an optional dependency on
> BR2_PACKAGE_SEATD and using -Dlauncher-libseat=true.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> ---
>  package/weston/weston.mk | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/package/weston/weston.mk b/package/weston/weston.mk
> index 76df9bf2dd..e6c54ee7aa 100644
> --- a/package/weston/weston.mk
> +++ b/package/weston/weston.mk
> @@ -35,6 +35,13 @@ else
>  WESTON_CONF_OPTS += -Dlauncher-logind=false
>  endif
>  
> +ifeq ($(BR2_PACKAGE_SEATD),y)
> +WESTON_CONF_OPTS += -Dlauncher-libseat=true
> +WESTON_DEPENDENCIES += seatd
> +else
> +WESTON_CONF_OPTS += -Dlauncher-libseat=false
> +endif
> +
>  ifeq ($(BR2_PACKAGE_JPEG),y)
>  WESTON_CONF_OPTS += -Dimage-jpeg=true
>  WESTON_DEPENDENCIES += jpeg
> -- 
> 2.37.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Thomas Petazzoni Aug. 6, 2022, 1:39 p.m. UTC | #3
Hello,

On Fri, 5 Aug 2022 18:57:05 +0200
"Yann E. MORIN" <yann.morin.1998@free.fr> wrote:

> On 2022-08-04 22:46 +0200, Thomas Petazzoni via buildroot spake thusly:
> > Since version 10, the weston-launch command has been deprecated, and
> > can only be built with -Ddeprecated-weston-launch=true, which
> > Buildroot does not do.
> > 
> > So the only launcher currently available is logind, provided by
> > systemd.  
> 
> Forgot to add in my previous reply...
> 
> Is a launcher mandatory? Should we en sure that at least one is present?
> I.e. if dbus+systemd is not set, then select seatd?

I am not 100% clear on this. My current understanding is indeed that a
launcher is needed.

However, it would be possible to use the logind launcher with elogind,
which is Gentoo's extract of logind from systemd as a standalone
project: https://wiki.gentoo.org/wiki/Elogind. Of course, we don't
currently have elogind as a Buildroot package.

The options would be:

 - logind launcher, with systemd
 - logind launcher, with elogind
 - libseat launcher, with seatd

Best regards,

Thomas
Arnout Vandecappelle Aug. 8, 2022, 4:56 p.m. UTC | #4
On 06/08/2022 15:39, Thomas Petazzoni via buildroot wrote:
> Hello,
> 
> On Fri, 5 Aug 2022 18:57:05 +0200
> "Yann E. MORIN" <yann.morin.1998@free.fr> wrote:
> 
>> On 2022-08-04 22:46 +0200, Thomas Petazzoni via buildroot spake thusly:
>>> Since version 10, the weston-launch command has been deprecated, and
>>> can only be built with -Ddeprecated-weston-launch=true, which
>>> Buildroot does not do.
>>>
>>> So the only launcher currently available is logind, provided by
>>> systemd.
>>
>> Forgot to add in my previous reply...
>>
>> Is a launcher mandatory? Should we en sure that at least one is present?
>> I.e. if dbus+systemd is not set, then select seatd?
> 
> I am not 100% clear on this. My current understanding is indeed that a
> launcher is needed.

  My understanding is of course extremely limited, but I believe it is possible 
(and relatively easy) to write your own launcher. This is relevant if you want 
to run a single application on Wayland (which is sometimes easier to get HW 
acceleration working in libraries than using DRM/Mesa directly).

  So I think it's not really needed to force one of our "known" launchers on people.

  This might be a use case for the newfangled "imply" Kconfig feature though.

  Regards,
  Arnout


> However, it would be possible to use the logind launcher with elogind,
> which is Gentoo's extract of logind from systemd as a standalone
> project: https://wiki.gentoo.org/wiki/Elogind. Of course, we don't
> currently have elogind as a Buildroot package.
> 
> The options would be:
> 
>   - logind launcher, with systemd
>   - logind launcher, with elogind
>   - libseat launcher, with seatd
> 
> Best regards,
> 
> Thomas
diff mbox series

Patch

diff --git a/package/weston/weston.mk b/package/weston/weston.mk
index 76df9bf2dd..e6c54ee7aa 100644
--- a/package/weston/weston.mk
+++ b/package/weston/weston.mk
@@ -35,6 +35,13 @@  else
 WESTON_CONF_OPTS += -Dlauncher-logind=false
 endif
 
+ifeq ($(BR2_PACKAGE_SEATD),y)
+WESTON_CONF_OPTS += -Dlauncher-libseat=true
+WESTON_DEPENDENCIES += seatd
+else
+WESTON_CONF_OPTS += -Dlauncher-libseat=false
+endif
+
 ifeq ($(BR2_PACKAGE_JPEG),y)
 WESTON_CONF_OPTS += -Dimage-jpeg=true
 WESTON_DEPENDENCIES += jpeg