From: <rs@ti.com>
To: <raj.khem@gmail.com>, <richard.purdie@linuxfoundation.org>,
<mathieu.dubois-briand@bootlin.com>, <alex@linutronix.de>,
<otavio@ossystems.com.br>, <kexin.hao@windriver.com>
Cc: <afd@ti.com>, <detheridge@ti.com>, <denis@denix.org>,
<reatmon@ti.com>, <openembedded-core@lists.openembedded.org>,
<vijayp@ti.com>
Subject: [oe-core][PATCHv16 0/6] Display manager proposal for x11 and wayland
Date: Fri, 27 Feb 2026 12:31:29 -0600 [thread overview]
Message-ID: <20260227183135.64544-1-rs@ti.com> (raw)
From: Randolph Sapp <rs@ti.com>
No functional changes. Just bumping PR to help with automated testing issues.
Information from v15:
Alright, now that cgo binary reproducibility has been addressed this should be
good to go. One slight change from v13, I replaced the inittab.d entry with a
rootfs-postcommands function since busybox-init doesn't support it.
Information from v13:
Hello maintainers, I wanted to wait for the latest tag to get cut before
bringing this back up, but here it is. This version addresses most of the
concerns I've seen regarding this series and adds on a little more functionality
considering we now allow for proper session selection.
This led me into a bit of a dive into the desktop-entry-spec [1] and associated
validator [2] that I wouldn't mind some opinions on as well if people are
curious about that.
Legacy details follow:
We've recently run into some issues with weston-init attempting to start Weston
prior to all drm devices being registered. There's not really a good, scriptable
mechanism to listen in to device registration events that works with the
existing weston-init package. Well, at least one that doesn't involve polling
files or introducing more dependency on the init system being used.
I also see there is also a lot of scripting around starting X11,
xserver-nodm-init, that (from my limited review) should experience the same
issue.
I'd like to introduce the following display manager for oe-core, emptty [3].
This display manager is, as described upstream, a "Dead simple CLI Display
Manager on TTY". It supports both x11 and wayland sessions, with togglable build
parameters to completely remove x11 and pam dependencies. It's licensed MIT,
which shouldn't be an issue for any users. (It is written in Go, if you have
opinions about that.)
With this, both weston-init and the xserver-nodm-init packages can be re-tuned
to leverage this display manager and simply add a user and emptty config for an
autologin session. This can resolve the current behavior across init systems
without additional scripting, and move some development out of this layer.
This lists myself as a maintainer of emptty as well as xserver-nodm-init and
xuser-account since these are currently unassigned and I've reworked them
significantly here.
Sorry for the delay on this series. I found a few bugs in emptty that I wanted
to address before submitting this officially.
[1] https://gitlab.freedesktop.org/xdg/xdg-specs/-/merge_requests/110
[2] https://gitlab.freedesktop.org/xdg/desktop-file-utils/-/merge_requests/28
[3] https://github.com/tvrzna/emptty
v2:
- Address spelling issues in commit messages
- Attempt to resolve some test related issues with weston
- Add additional logs to X11 related tests
v3:
- Reset AUTOLOGIN_MAX_RETRY to the default value of 2. When running
under QEMU the first auth attempt almost always fails.
v4:
- Add a tmpfile entry for the x11 domain socket directory.
- Remove some scripts associated with weston-init that were being
shipped with weston
v5:
- Move tmpfile data to individual files
- Add explicit entries for these in the FILES variable
v6:
- Do not attempt to ship a tmpfiles.d entry in libx11
v7:
- Include a backported fix for go/runtime to address segfault issues
reported on x86 platforms in previous revisions
v8:
- Sign-off backported patch
v9:
- Resolve merge conflict in maintainers file
v10:
- Remove the ability to run x11 as root in xserver-nodm-init, see
https://lists.openembedded.org/g/openembedded-core/topic/115318655#msg223906
for more information
- Merge xuser-account and xserver-nodm-init as this is now a direct
dependency with no other consumers
- Fix warning about multiple providers for virtual-emptty-conf
v11:
- Bump emptty revision to 0.15.0
- Add session entries for all the session providers
- Make autologin default session configurable for xserver-nodm-init
v12:
- Add util-linux-mcookie as a runtime dependency to emptty when x11
support is enabled
v13:
- Add nopasswdlogin to the static group definitions list, also register
it in the emptty recipe itself since the pam rule provided in that
package mentions it
- Always ship the legacy inittab entry, since it's possible the end user
has some unusual distro configuration with multiple init managers
enabled
v14:
- Move from legacy inittab.d entry that only sysvinit supports to
modifying the inittab file itself for both sysvinit and busybox init
support
v15:
- Remind myself how POSIX shell "return" is supposed to work when not
given an explicit value
v16:
- Bump PR to make sure caching isn't generating weird test results after
changes to source date epoch calculation method
Randolph Sapp (6):
emptty: add version 0.15.0
weston-init: convert to virtual-emptty-conf
weston: remove deprecated weston-start scripts
xserver-nodm-init: convert to virtual-emptty-conf
xuser-account: merge with xserver-nodm-init
xsessions: add unique desktop entries
meta-selftest/files/static-group | 2 +-
.../rootfs-postcommands.bbclass | 14 +-
.../conf/distro/include/default-providers.inc | 1 +
meta/conf/distro/include/maintainers.inc | 5 +-
meta/lib/oeqa/runtime/cases/weston.py | 18 +-
meta/lib/oeqa/runtime/cases/xorg.py | 8 +
meta/recipes-graphics/emptty/emptty-conf.bb | 14 +
meta/recipes-graphics/emptty/emptty.inc | 27 ++
meta/recipes-graphics/emptty/emptty/pamconf | 10 +
meta/recipes-graphics/emptty/emptty_0.15.0.bb | 55 +++
.../matchbox-session/matchbox-session.desktop | 6 +
.../matchbox-session/matchbox-session_0.1.bb | 13 +-
.../files/mini-x-session.desktop | 6 +
.../mini-x-session/mini-x-session_0.1.bb | 13 +-
meta/recipes-graphics/wayland/weston-init.bb | 66 +---
.../wayland/weston-init/emptty.conf | 77 ++++
.../recipes-graphics/wayland/weston-init/init | 54 ---
.../wayland/weston-init/weston-autologin | 11 -
.../wayland/weston-init/weston-socket.sh | 20 -
.../wayland/weston-init/weston-start | 76 ----
.../wayland/weston-init/weston.env | 0
.../wayland/weston-init/weston.service | 71 ----
.../wayland/weston-init/weston.socket | 14 -
.../weston/systemd-notify.weston-start | 9 -
.../wayland/weston/xwayland.weston-start | 6 -
.../recipes-graphics/wayland/weston_14.0.2.bb | 10 -
.../x11-common/xserver-nodm-init/X11/Xsession | 38 --
.../X11/Xsession.d/13xdgbasedirs.sh | 19 -
.../X11/Xsession.d/89xdgautostart.sh | 7 -
.../X11/Xsession.d/90XWindowManager.sh | 7 -
.../x11-common/xserver-nodm-init/Xserver | 25 --
.../xserver-nodm-init/capability.conf | 2 -
.../xserver-nodm-init/emptty.conf.in | 77 ++++
.../xserver-nodm-init/gplv2-license.patch | 355 ------------------
.../xserver-nodm-init}/system-xuser.conf | 0
.../x11-common/xserver-nodm-init/xserver-nodm | 75 ----
.../xserver-nodm-init/xserver-nodm.conf.in | 7 -
.../xserver-nodm-init/xserver-nodm.service.in | 13 -
.../x11-common/xserver-nodm-init_3.0.bb | 73 ++--
.../user-creation/xuser-account_0.1.bb | 30 --
40 files changed, 358 insertions(+), 976 deletions(-)
create mode 100644 meta/recipes-graphics/emptty/emptty-conf.bb
create mode 100644 meta/recipes-graphics/emptty/emptty.inc
create mode 100644 meta/recipes-graphics/emptty/emptty/pamconf
create mode 100644 meta/recipes-graphics/emptty/emptty_0.15.0.bb
create mode 100644 meta/recipes-graphics/matchbox-session/matchbox-session/matchbox-session.desktop
create mode 100644 meta/recipes-graphics/mini-x-session/files/mini-x-session.desktop
create mode 100644 meta/recipes-graphics/wayland/weston-init/emptty.conf
delete mode 100644 meta/recipes-graphics/wayland/weston-init/init
delete mode 100644 meta/recipes-graphics/wayland/weston-init/weston-autologin
delete mode 100755 meta/recipes-graphics/wayland/weston-init/weston-socket.sh
delete mode 100755 meta/recipes-graphics/wayland/weston-init/weston-start
delete mode 100644 meta/recipes-graphics/wayland/weston-init/weston.env
delete mode 100644 meta/recipes-graphics/wayland/weston-init/weston.service
delete mode 100644 meta/recipes-graphics/wayland/weston-init/weston.socket
delete mode 100644 meta/recipes-graphics/wayland/weston/systemd-notify.weston-start
delete mode 100644 meta/recipes-graphics/wayland/weston/xwayland.weston-start
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/13xdgbasedirs.sh
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/89xdgautostart.sh
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/X11/Xsession.d/90XWindowManager.sh
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/Xserver
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/capability.conf
create mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/emptty.conf.in
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/gplv2-license.patch
rename meta/{recipes-support/user-creation/files => recipes-graphics/x11-common/xserver-nodm-init}/system-xuser.conf (100%)
delete mode 100755 meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.conf.in
delete mode 100644 meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.service.in
delete mode 100644 meta/recipes-support/user-creation/xuser-account_0.1.bb
--
2.53.0
next reply other threads:[~2026-02-27 18:32 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-27 18:31 rs [this message]
2026-02-27 18:31 ` [oe-core][PATCHv16 1/6] emptty: add version 0.15.0 rs
2026-02-27 18:31 ` [oe-core][PATCHv16 2/6] weston-init: convert to virtual-emptty-conf rs
2026-02-27 18:31 ` [oe-core][PATCHv16 3/6] weston: remove deprecated weston-start scripts rs
2026-02-27 18:31 ` [oe-core][PATCHv16 4/6] xserver-nodm-init: convert to virtual-emptty-conf rs
2026-02-27 18:31 ` [oe-core][PATCHv16 5/6] xuser-account: merge with xserver-nodm-init rs
2026-02-27 18:31 ` [oe-core][PATCHv16 6/6] xsessions: add unique desktop entries rs
[not found] <18982E1417FE35B6.1454197@lists.openembedded.org>
2026-03-16 17:25 ` [oe-core][PATCHv16 0/6] Display manager proposal for x11 and wayland Randolph Sapp
[not found] ` <189D6251D8E3EDE7.1508127@lists.openembedded.org>
2026-03-26 18:35 ` Randolph Sapp
2026-03-27 17:09 ` Richard Purdie
2026-03-27 22:38 ` Otavio Salvador
2026-03-29 9:06 ` Richard Purdie
2026-04-06 18:16 ` Randolph Sapp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260227183135.64544-1-rs@ti.com \
--to=rs@ti.com \
--cc=afd@ti.com \
--cc=alex@linutronix.de \
--cc=denis@denix.org \
--cc=detheridge@ti.com \
--cc=kexin.hao@windriver.com \
--cc=mathieu.dubois-briand@bootlin.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=otavio@ossystems.com.br \
--cc=raj.khem@gmail.com \
--cc=reatmon@ti.com \
--cc=richard.purdie@linuxfoundation.org \
--cc=vijayp@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox