On Fri Feb 6, 2026 at 5:28 PM CST, Randolph Sapp via lists.openembedded.org wrote: > On Fri Feb 6, 2026 at 2:00 PM CST, Randolph Sapp via lists.openembedded.org > wrote: >> On Fri Feb 6, 2026 at 12:15 PM CST, Khem Raj via lists.openembedded.org >> wrote: >>> this also needs adjustments for fvwm and xscreensaver recipes in meta-oe >>> >>> On Mon, Feb 2, 2026 at 5:20 PM Randolph Sapp via lists.openembedded.org <rs= >>> [email protected]> wrote: >> >> If everyone's alright with this version of the series I'd be more than happy >> to >> submit the necessary patches. >> >> - Randolph > > Actually, this brings up a good point. The other window managers shipped in > meta-oe were expecting xserver-nodm-init to be present, but weren't calling it > out explicitly as a runtime dependency. > > They were also implicitly expecting the user account to be xuser, despite > nothing stopping any layers from changing that username. Previous emails > actually highlighted this as a reason for making a separate package, despite > nothing being equipped to handle such a change. > > Should we define some global distro variable to manage the default > GUI/underprivileged user? That would unify all Xorg and Wayland default > package > configurations and allow for seamless arbitrary user names. Maybe something > like > "STANDARD_USER", which defaults to the value of "DISTRO"? > > Take xscreensaver for example. The systemd service hardcodes xuser. > Practically, > this would be better suited as a service template with a default instance > enabled for "$STANDARD_USER". > > I don't know if this should be part of this series or if it would be better > suited as a follow-up. > > - Randolph
So far, I've been trying to preserve old behavior as best as I can, but I really just want to sit down and break things up into their logical pieces so components can be replaced piecemeal later if necessary. Define a global standard user account. Define a display manager package that ensures the global standard user is in the proper groups and sets up a skeleton config. Then we can provide the separate config overrides to do this whole out-of-box setup that the tests and end users are currently expecting. Unfortunately, I don't think I can do that properly in a backwards compatible way. If people think this is a good idea I can submit another version with all of this in place for oe-core and we can see what breaks, but otherwise this is the best I got. - Randolph >>>> From: Randolph Sapp <[email protected]> >>>> >>>> Merge the xuser-account recipe with xserver-nodm-init, since: >>>> >>>> - This is the only recipe dependent on it >>>> - This matches the current behavior in weston-init >>>> - Running x11 as root is no longer a supported path in >>>> xserver-nodm-init >>>> - The display manager configuration and user account name are heavily >>>> connected >>>> - The existing method of integration ignored this connection >>>> >>>> Signed-off-by: Randolph Sapp <[email protected]> >>>> --- >>>> meta/conf/distro/include/maintainers.inc | 1 - >>>> .../xserver-nodm-init}/system-xuser.conf | 0 >>>> .../x11-common/xserver-nodm-init_3.0.bb | 20 +++++++++--- >>>> .../user-creation/xuser-account_0.1.bb | 31 ------------------- >>>> 4 files changed, 15 insertions(+), 37 deletions(-) >>>> rename meta/{recipes-support/user-creation/files => >>>> recipes-graphics/x11-common/xserver-nodm-init}/system-xuser.conf (100%) >>>> delete mode 100644 meta/recipes-support/user-creation/ >>>> xuser-account_0.1.bb >>>> >>>> diff --git a/meta/conf/distro/include/maintainers.inc >>>> b/meta/conf/distro/include/maintainers.inc >>>> index a7425f7020..ec0a128901 100644 >>>> --- a/meta/conf/distro/include/maintainers.inc >>>> +++ b/meta/conf/distro/include/maintainers.inc >>>> @@ -935,7 +935,6 @@ RECIPE_MAINTAINER:pn-xserver-xf86-config = "Unassigned >>>> <unassigned@yoctoproject. >>>> RECIPE_MAINTAINER:pn-xserver-xorg = "Unassigned < >>>> [email protected]>" >>>> RECIPE_MAINTAINER:pn-xset = "Unassigned <[email protected]>" >>>> RECIPE_MAINTAINER:pn-xtrans = "Unassigned <[email protected]>" >>>> -RECIPE_MAINTAINER:pn-xuser-account = "Randolph Sapp <[email protected]>" >>>> RECIPE_MAINTAINER:pn-xvinfo = "Unassigned <[email protected]>" >>>> RECIPE_MAINTAINER:pn-xwayland = "Unassigned <[email protected] >>>> >" >>>> RECIPE_MAINTAINER:pn-xwininfo = "Unassigned <[email protected] >>>> >" >>>> diff --git a/meta/recipes-support/user-creation/files/system-xuser.conf >>>> b/meta/recipes-graphics/x11-common/xserver-nodm-init/system-xuser.conf >>>> similarity index 100% >>>> rename from meta/recipes-support/user-creation/files/system-xuser.conf >>>> rename to >>>> meta/recipes-graphics/x11-common/xserver-nodm-init/system-xuser.conf >>>> diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb >>>> b/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb >>>> index ed056df72f..0e9fe1e65a 100644 >>>> --- a/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb >>>> +++ b/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb >>>> @@ -1,14 +1,15 @@ >>>> -SUMMARY = "Simple Xserver Init Script (no dm)" >>>> +SUMMARY = "Simple Xserver Init Script and user account" >>>> LICENSE = "MIT" >>>> LIC_FILES_CHKSUM = >>>> "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" >>>> SECTION = "x11" >>>> >>>> SRC_URI = "file://emptty.conf.in \ >>>> - file://default.desktop" >>>> + file://default.desktop \ >>>> + file://system-xuser.conf" >>>> >>>> S = "${UNPACKDIR}" >>>> >>>> -inherit features_check >>>> +inherit features_check useradd >>>> >>>> REQUIRED_DISTRO_FEATURES = "x11" >>>> >>>> @@ -26,10 +27,19 @@ do_install() { >>>> >>>> sed -i "s:@NO_CURSOR_ARG@:${NO_CURSOR_ARG}:" >>>> ${D}${sysconfdir}/emptty/conf >>>> sed -i "s:@BLANK_ARGS@:${BLANK_ARGS}:" ${D}${sysconfdir}/emptty/conf >>>> + >>>> + install -D -m 0644 ${S}/system-xuser.conf >>>> ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf >>>> } >>>> >>>> FILES:${PN} = "${sysconfdir}/emptty/conf \ >>>> - ${datadir}/xsessions/default.desktop" >>>> + ${datadir}/xsessions/default.desktop \ >>>> + ${sysconfdir}/dbus-1/system.d/system-xuser.conf" >>>> + >>>> +USERADD_PACKAGES = "${PN}" >>>> +USERADD_PARAM:${PN} = "--create-home \ >>>> + --groups >>>> video,tty,audio,input,shutdown,disk,nopasswdlogin \ >>>> + --user-group xuser" >>>> +GROUPADD_PARAM:${PN} = "-r nopasswdlogin" >>>> >>>> -RDEPENDS:${PN} = "emptty xuser-account" >>>> +RDEPENDS:${PN} = "emptty" >>>> RPROVIDES:${PN} += "virtual-emptty-conf" >>>> diff --git a/meta/recipes-support/user-creation/xuser-account_0.1.bb >>>> b/meta/recipes-support/user-creation/xuser-account_0.1.bb >>>> deleted file mode 100644 >>>> index f1e4cb674f..0000000000 >>>> --- a/meta/recipes-support/user-creation/xuser-account_0.1.bb >>>> +++ /dev/null >>>> @@ -1,31 +0,0 @@ >>>> -SUMMARY = "Creates an 'xuser' account used for running X11" >>>> -LICENSE = "MIT" >>>> -LIC_FILES_CHKSUM = >>>> "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" >>>> - >>>> -SRC_URI = "file://system-xuser.conf" >>>> - >>>> -inherit allarch useradd >>>> - >>>> -S = "${UNPACKDIR}" >>>> - >>>> -do_configure() { >>>> - : >>>> -} >>>> - >>>> -do_compile() { >>>> - : >>>> -} >>>> - >>>> -do_install() { >>>> - install -D -m 0644 ${UNPACKDIR}/system-xuser.conf >>>> ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf >>>> -} >>>> - >>>> -FILES:${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf" >>>> - >>>> -USERADD_PACKAGES = "${PN}" >>>> -USERADD_PARAM:${PN} = "--create-home \ >>>> - --groups >>>> video,tty,audio,input,shutdown,disk,nopasswdlogin \ >>>> - --user-group xuser" >>>> -GROUPADD_PARAM:${PN} = "-r nopasswdlogin" >>>> - >>>> -ALLOW_EMPTY:${PN} = "1" >>>> -- >>>> 2.52.0 >>>> >>>> >>>> >>>> >>>>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#230665): https://lists.openembedded.org/g/openembedded-core/message/230665 Mute This Topic: https://lists.openembedded.org/mt/117609025/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
