On 2022-02-03 14:46, Alexander Kanavin wrote:
The current recipe doesn't enable (or allow to enable) those alternatives, so unless someone needs them, and tests that they work, there is still no point in splitting.


That is reasonable. I was just a bit concerned about possible RDPENDS for other software packages. Depending on `libseat` seems to be more future-proof than `seatd` if only the library is required, whatever the backend is.

But I don't feel too strongly about this, so your call ;)

Alex

On Thu, 3 Feb 2022 at 14:36, Claudius Heine <[email protected] <mailto:[email protected]>> wrote:

    On 2022-02-03 14:28, Alexander Kanavin wrote:
     > As far as I understand the library is not useful without the
    daemon, so
     > there is no point in packaging them separately. -dev stuff is split
     > automatically.

    That is not the impression I got from the readme:

      > # libseat
      >
      > A seat management library allowing applications to use whatever
    seat
    management is available.
      >
      > Supports:
      >
      >     seatd
      >     (e)logind
      >     embedded seatd for standalone operation
      >
      > Each backend can be compile-time included and is runtime
    auto-detected or manually selected with the LIBSEAT_BACKEND environment
    variable.
      >
      > Which backend is in use is transparent to the application,
    providing
    a simple common interface.

    https://sr.ht/~kennylevinsen/seatd/#libseat
    <https://sr.ht/~kennylevinsen/seatd/#libseat>

    I guess the general question is if it makes sense to split them up
    for OE.

    regards,
    Claudius

     >
     > Alex
     >
     > On Thu, 3 Feb 2022 at 13:55, Claudius Heine <[email protected]
    <mailto:[email protected]>
     > <mailto:[email protected] <mailto:[email protected]>>> wrote:
     >
     >     Hi Alexander,
     >
     >     On 2022-02-02 19:27, Alexander Kanavin wrote:
     >      > This is needed to run weston properly as non-root in the
    absence
     >      > of systemd-logind, and other compositors will likely
    require seatd
     >      > as well.
     >      >
     >      > Signed-off-by: Alexander Kanavin <[email protected]
    <mailto:[email protected]>
     >     <mailto:[email protected] <mailto:[email protected]>>>
     >      > ---
     >      >   meta/conf/distro/include/maintainers.inc |  1 +
     >      >   meta/recipes-core/seatd/seatd/init       | 45
     >     ++++++++++++++++++++++++
     >      >   meta/recipes-core/seatd/seatd_0.6.3.bb
    <http://seatd_0.6.3.bb> <http://seatd_0.6.3.bb <http://seatd_0.6.3.bb>>
     >       | 29 +++++++++++++++
     >      >   3 files changed, 75 insertions(+)
     >      >   create mode 100644 meta/recipes-core/seatd/seatd/init
     >      >   create mode 100644
    meta/recipes-core/seatd/seatd_0.6.3.bb <http://seatd_0.6.3.bb>
     >     <http://seatd_0.6.3.bb <http://seatd_0.6.3.bb>>
     >      >
     >      > diff --git a/meta/conf/distro/include/maintainers.inc
     >     b/meta/conf/distro/include/maintainers.inc
     >      > index ae25287c11..cb289a0eee 100644
     >      > --- a/meta/conf/distro/include/maintainers.inc
     >      > +++ b/meta/conf/distro/include/maintainers.inc
     >      > @@ -684,6 +684,7 @@ RECIPE_MAINTAINER:pn-rxvt-unicode =
     >     "Unassigned <[email protected]
    <mailto:[email protected]>
     >     <mailto:[email protected]
    <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-sato-screenshot = "Ross Burton
     >     <[email protected] <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-sbc = "Unassigned
     >     <[email protected]
    <mailto:[email protected]>
    <mailto:[email protected]
    <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-screen = "Anuj Mittal
     >     <[email protected] <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>>"
     >      > +RECIPE_MAINTAINER:pn-seatd = "Alexander Kanavin
     >     <[email protected] <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-sed = "Chen Qi
    <[email protected] <mailto:[email protected]>
     >     <mailto:[email protected] <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-serf = "Anuj Mittal
    <[email protected] <mailto:[email protected]>
     >     <mailto:[email protected] <mailto:[email protected]>>>"
     >      >   RECIPE_MAINTAINER:pn-setserial = "Yi Zhao
     >     <[email protected] <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>>"
     >      > diff --git a/meta/recipes-core/seatd/seatd/init
     >     b/meta/recipes-core/seatd/seatd/init
     >      > new file mode 100644
     >      > index 0000000000..0589c765ac
     >      > --- /dev/null
     >      > +++ b/meta/recipes-core/seatd/seatd/init
     >      > @@ -0,0 +1,45 @@
     >      > +#!/bin/sh
     >      > +#
     >      > +### BEGIN INIT INFO
     >      > +# Provides: seatd
     >      > +# Required-Start: $local_fs $remote_fs
     >      > +# Required-Stop: $local_fs $remote_fs
     >      > +# Default-Start:     2 3 4 5
     >      > +# Default-Stop:      0 1 6
     >      > +### END INIT INFO
     >      > +
     >      > +killproc() {
     >      > +        pid=`/bin/pidof $1`
     >      > +        [ "$pid" != "" ] && kill $pid
     >      > +}
     >      > +
     >      > +case "$1" in
     >      > +  start)
     >      > +        seatd -g video -n 1 > /tmp/seatd-start-notify &
     >      > +        [ -s /tmp/seatd-start-notify ] && exit 0
     >      > +        sleep 0.1
     >      > +        [ -s /tmp/seatd-start-notify ] && exit 0
     >      > +        sleep 0.5
     >      > +        [ -s /tmp/seatd-start-notify ] && exit 0
     >      > +        sleep 5
     >      > +        [ -s /tmp/seatd-start-notify ] && exit 0
     >      > +        exit 1
     >      > +  ;;
     >      > +
     >      > +  stop)
     >      > +        echo "Stopping seatd"
     >      > +        killproc seatd
     >      > +  ;;
     >      > +
     >      > +  restart)
     >      > +     $0 stop
     >      > +        sleep 1
     >      > +        $0 start
     >      > +  ;;
     >      > +
     >      > +  *)
     >      > +        echo "usage: $0 { start | stop | restart }"
     >      > +  ;;
     >      > +esac
     >      > +
     >      > +exit 0
     >      > diff --git a/meta/recipes-core/seatd/seatd_0.6.3.bb
    <http://seatd_0.6.3.bb>
     >     <http://seatd_0.6.3.bb <http://seatd_0.6.3.bb>>
    b/meta/recipes-core/seatd/seatd_0.6.3.bb <http://seatd_0.6.3.bb>
     >     <http://seatd_0.6.3.bb <http://seatd_0.6.3.bb>>
     >      > new file mode 100644
     >      > index 0000000000..0e1a79dddf
     >      > --- /dev/null
     >      > +++ b/meta/recipes-core/seatd/seatd_0.6.3.bb
    <http://seatd_0.6.3.bb> <http://seatd_0.6.3.bb <http://seatd_0.6.3.bb>>
     >      > @@ -0,0 +1,29 @@
     >      > +SUMMARY = "A minimal seat management daemon, and a universal
     >     seat management library."
     >      > +DESCRIPTION = "Seat management takes care of mediating
    access to
     >     shared devices (graphics, input), without requiring the
    applications
     >     needing access to be root."
     >      > +HOMEPAGE = "https://git.sr.ht/~kennylevinsen/seatd
    <https://git.sr.ht/~kennylevinsen/seatd>
     >     <https://git.sr.ht/~kennylevinsen/seatd
    <https://git.sr.ht/~kennylevinsen/seatd>>"
     >      > +
     >      > +LICENSE = "MIT"
     >      > +
     >      > +LIC_FILES_CHKSUM =
     >     "file://LICENSE;md5=715a99d2dd552e6188e74d4ed2914d5a"
     >      > +
     >      > +SRC_URI =
>  "git://git.sr.ht/~kennylevinsen/seatd;protocol=https;branch=master
    <http://git.sr.ht/~kennylevinsen/seatd;protocol=https;branch=master>
>  <http://git.sr.ht/~kennylevinsen/seatd;protocol=https;branch=master <http://git.sr.ht/~kennylevinsen/seatd;protocol=https;branch=master>> \
     >      > +           file://init"
     >      > +SRCREV = "88db55f6068c1c01d85b61aa6adff0a6b2a8dce8"
     >      > +S = "${WORKDIR}/git"
     >      > +
     >      > +inherit meson pkgconfig update-rc.d
     >      > +
     >      > +PACKAGECONFIG ?= "libseat-builtin"
     >      > +
     >      > +PACKAGECONFIG[libseat-builtin] =
     >     "-Dlibseat-builtin=enabled,-Dlibseat-builtin=disabled"
     >      > +
     >      > +do_install:append() {
     >      > +        if [ "${VIRTUAL-RUNTIME_init_manager}" !=
    "systemd" ]; then
     >      > +                install -Dm755 ${WORKDIR}/init
     >     ${D}/${sysconfdir}/init.d/seatd
     >      > +        fi
     >      > +}
     >      > +
     >      > +INITSCRIPT_NAME = "seatd"
     >      > +INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
     >      > +INHIBIT_UPDATERCD_BBCLASS =
     >     "${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager',
    'systemd',
     >     '1', '', d)}"
     >      > +
     >      >
     >
     >     I was looking into seatd as well, in my recipe I split it up
    a bit:
     >
     >     ```
     >     PACKAGES =+ "${PN}-launch libseat libseat-dev"
     >
     >     FILES:${PN} = "${bindir}/seatd"
     >     FILES:${PN}-launch = "${bindir}/seatd-launch"
     >     FILES:libseat = "${libdir}/lib*${SOLIBS}"
     >     FILES:libseat-dev = " \
     >              ${includedir} ${FILES_SOLIBSDEV} \
     >              ${libdir}/pkgconfig"
     >
     >     RDEPENDS:${PN} = "libseat (= ${EXTENDPKGV})"
     >     RDEPENDS:${PN}-launch = "${PN} (= ${EXTENDPKGV})"
     >     RDEPENDS:libseat-dev = "libseat (= ${EXTENDPKGV})"
     >     ```
     >
     >     regards,
     >     Claudius
     >

-- DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
    HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
    Phone: (+49)-8142-66989-54 Fax: (+49)-8142-66989-80 Email:
    [email protected] <mailto:[email protected]>


--
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-54 Fax: (+49)-8142-66989-80 Email: [email protected]
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#161282): 
https://lists.openembedded.org/g/openembedded-core/message/161282
Mute This Topic: https://lists.openembedded.org/mt/88865275/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to