From 36473898f0a122880aaa2220fbf98732027d759f Mon Sep 17 00:00:00 2001 From: Randolph Sapp Date: Mon, 27 Oct 2025 18:19:19 -0500 Subject: [PATCH] x11-volatiles: register x11 volatile directories Add a volatiles entry for popular x11 and adjacent utilities. This is designed to mimic the systemd tmpfiles.d entries and prevent any one user from creating these directories with permissions that may negatively impact multi-user environments. Signed-off-by: Randolph Sapp Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- meta/conf/distro/include/maintainers.inc | 1 + .../x11-common/x11-volatiles.bb | 20 +++++++++++++++++++ .../x11-common/x11-volatiles/02_x11 | 6 ++++++ .../xorg-xserver/xserver-xorg_21.1.18.bb | 2 ++ .../xwayland/xwayland_24.1.8.bb | 2 +- 5 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-graphics/x11-common/x11-volatiles.bb create mode 100644 meta/recipes-graphics/x11-common/x11-volatiles/02_x11 diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index c4142e2b72..6902bc0c44 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -886,6 +886,7 @@ RECIPE_MAINTAINER:pn-wic-tools = "Unassigned " RECIPE_MAINTAINER:pn-wireless-regdb = "Unassigned " RECIPE_MAINTAINER:pn-wpa-supplicant = "Unassigned " RECIPE_MAINTAINER:pn-wpebackend-fdo = "Unassigned " +RECIPE_MAINTAINER:pn-x11-volatiles = "Unassigned " RECIPE_MAINTAINER:pn-x11perf = "Unassigned " RECIPE_MAINTAINER:pn-x264 = "Unassigned " RECIPE_MAINTAINER:pn-xauth = "Unassigned " diff --git a/meta/recipes-graphics/x11-common/x11-volatiles.bb b/meta/recipes-graphics/x11-common/x11-volatiles.bb new file mode 100644 index 0000000000..23bd6e1661 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-volatiles.bb @@ -0,0 +1,20 @@ +SUMMARY = "Xserver Volatile Directories" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" +SECTION = "x11" + +SRC_URI = "file://02_x11" + +S = "${UNPACKDIR}" + +inherit bin_package features_check + +REQUIRED_DISTRO_FEATURES = "x11" +CONFLICT_DISTRO_FEATURES = "systemd" + +do_install() { + install -d ${D}${sysconfdir}/default/volatiles + install -m 0644 ${UNPACKDIR}/02_x11 ${D}${sysconfdir}/default/volatiles +} + +FILES:${PN} += "${sysconfdir}/default/volatiles" diff --git a/meta/recipes-graphics/x11-common/x11-volatiles/02_x11 b/meta/recipes-graphics/x11-common/x11-volatiles/02_x11 new file mode 100644 index 0000000000..35c3698479 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-volatiles/02_x11 @@ -0,0 +1,6 @@ +# Volatile entries to match systemd +# https://github.com/systemd/systemd/blob/main/tmpfiles.d/x11.conf +d root root 1777 /tmp/.X11-unix none +d root root 1777 /tmp/.ICE-unix none +d root root 1777 /tmp/.XIM-unix none +d root root 1777 /tmp/.font-unix none diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb index 14c45be432..3c8cb0173f 100644 --- a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.18.bb @@ -26,3 +26,5 @@ RCONFLICTS:${PN} = "${PN}-extension-dri \ ${PN}-extension-extmod \ ${PN}-extension-dbe \ " + +RDEPENDS:${PN} += "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "x11-volatiles", d)}" diff --git a/meta/recipes-graphics/xwayland/xwayland_24.1.8.bb b/meta/recipes-graphics/xwayland/xwayland_24.1.8.bb index 900da524b3..a621af1a7f 100644 --- a/meta/recipes-graphics/xwayland/xwayland_24.1.8.bb +++ b/meta/recipes-graphics/xwayland/xwayland_24.1.8.bb @@ -47,4 +47,4 @@ do_install:append() { FILES:${PN} += "${libdir}/xorg/protocol.txt" -RDEPENDS:${PN} += "xkbcomp" +RDEPENDS:${PN} += "xkbcomp ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "x11-volatiles", d)}" -- 2.47.3