summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2013-08-25 20:37:44 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-26 11:26:00 +0100
commitd4f82500fb30e9e25b517e65c2bd72b3c2bad070 (patch)
tree0adb8ca387116c65019cc5b05cc6e847d3c2b036
parent491fde8cd3fd493f9fec2fd434fe1be547f66148 (diff)
downloadopenembedded-core-d4f82500fb30e9e25b517e65c2bd72b3c2bad070.tar.gz
openembedded-core-d4f82500fb30e9e25b517e65c2bd72b3c2bad070.tar.bz2
openembedded-core-d4f82500fb30e9e25b517e65c2bd72b3c2bad070.zip
xserver-nodm-init: improvements from meta-oe
Bring in some changes from the meta-oe version of this script in order to bring them closer together. (Unfortunately it does not completely supersede the recipes in meta-oe - there is still some unification to be done between x11-common and xserver-common.) * Add systemd support (with extensions for ROOTLESS_X) * Remove sudo from RDEPENDS_${PN} since this hasn't been used by this for a long time * Rearrange recipe slightly to make the order logical A couple of additional improvements at the same time: * Use ROOT_HOME for root's home directory * Set short description in SUMMARY instead of DESCRIPTION Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/recipes-graphics/x11-common/xserver-nodm-init.bb38
-rw-r--r--meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.conf1
-rw-r--r--meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.service10
3 files changed, 41 insertions, 8 deletions
diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init.bb b/meta/recipes-graphics/x11-common/xserver-nodm-init.bb
index 8490c81b48..e4508a917d 100644
--- a/meta/recipes-graphics/x11-common/xserver-nodm-init.bb
+++ b/meta/recipes-graphics/x11-common/xserver-nodm-init.bb
@@ -1,30 +1,52 @@
-DESCRIPTION = "Simple Xserver Init Script (no dm)"
+SUMMARY = "Simple Xserver Init Script (no dm)"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SECTION = "x11"
PR = "r31"
-RDEPENDS_${PN} = "sudo xuser-account"
SRC_URI = "file://xserver-nodm \
file://Xusername \
- file://gplv2-license.patch"
+ file://gplv2-license.patch \
+ file://xserver-nodm.service \
+ file://xserver-nodm.conf \
+"
S = "${WORKDIR}"
+# Since we refer to ROOTLESS_X which is normally enabled per-machine
PACKAGE_ARCH = "${MACHINE_ARCH}"
+inherit update-rc.d systemd
+
do_install() {
- install -d ${D}${sysconfdir}
install -d ${D}${sysconfdir}/init.d
install xserver-nodm ${D}${sysconfdir}/init.d
- if [ "${ROOTLESS_X}" = "1" ] ; then
- install -d ${D}${sysconfdir}/X11
- install Xusername ${D}${sysconfdir}/X11
+
+ if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}${sysconfdir}/default
+ install xserver-nodm.conf ${D}${sysconfdir}/default/xserver-nodm
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/xserver-nodm.service ${D}${systemd_unitdir}/system
+ if [ "${ROOTLESS_X}" = "1" ] ; then
+ sed -i 's!^HOME=.*!HOME=/home/xuser!' ${D}${sysconfdir}/default/xserver-nodm
+ sed -i 's!^User=.*!User=xuser!' ${D}${systemd_unitdir}/system/xserver-nodm.service
+ else
+ sed -i 's!^HOME=.*!HOME=${ROOT_HOME}!' ${D}${sysconfdir}/default/xserver-nodm
+ sed -i '/^User=/d' ${D}${systemd_unitdir}/system/xserver-nodm.service
+ fi
+ fi
+
+ if ${@base_contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
+ if [ "${ROOTLESS_X}" = "1" ] ; then
+ install -d ${D}${sysconfdir}/X11
+ install Xusername ${D}${sysconfdir}/X11
+ fi
fi
}
-inherit update-rc.d
+RDEPENDS_${PN} = "${@base_conditional('ROOTLESS_X', '1', 'xuser-account', '', d)}"
INITSCRIPT_NAME = "xserver-nodm"
INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
+SYSTEMD_SERVICE_${PN} = "xserver-nodm.service"
diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.conf b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.conf
new file mode 100644
index 0000000000..3c0582a87e
--- /dev/null
+++ b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.conf
@@ -0,0 +1 @@
+HOME=/home/root
diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.service b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.service
new file mode 100644
index 0000000000..62d979f1d6
--- /dev/null
+++ b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Xserver startup without a display manager
+
+[Service]
+User=root
+EnvironmentFile=/etc/default/xserver-nodm
+ExecStart=/etc/X11/Xserver
+
+[Install]
+Alias=display-manager.service