aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mini-x-session
diff options
context:
space:
mode:
authorZhai Edwin <edwin.zhai@intel.com>2011-12-21 15:16:31 +0800
committerSaul Wold <sgw@linux.intel.com>2012-01-02 20:26:21 -0800
commit43c2d366622ea52cba8a5b727d723c8ec30bd44b (patch)
tree9e34dcb324347d32121948c1dc97d91ec6e97669 /meta/recipes-graphics/mini-x-session
parent68684b4903261cc5d3f48355f7cc6671484bb546 (diff)
downloadopenembedded-core-contrib-43c2d366622ea52cba8a5b727d723c8ec30bd44b.tar.gz
mini-x-session: Add this recipe as the session file for mini X
mini-x-session runs session files on behalf of file owner, so that no rootless X required. Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
Diffstat (limited to 'meta/recipes-graphics/mini-x-session')
-rw-r--r--meta/recipes-graphics/mini-x-session/files/mini-x-session32
-rw-r--r--meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb24
2 files changed, 56 insertions, 0 deletions
diff --git a/meta/recipes-graphics/mini-x-session/files/mini-x-session b/meta/recipes-graphics/mini-x-session/files/mini-x-session
new file mode 100644
index 0000000000..1940e27872
--- /dev/null
+++ b/meta/recipes-graphics/mini-x-session/files/mini-x-session
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# Very simple session manager for Mini X
+#
+
+# Uncomment below to enable parsing of debian menu entrys
+# export MB_USE_DEB_MENUS=1
+
+if [ -e $HOME/.mini_x/session ]
+then
+exec $HOME/.mini_x/session
+fi
+
+if [ -e /etc/mini_x/session ]
+then
+exec /etc/mini_x/session
+fi
+
+MINI_X_SESSION_DIR=/etc/mini_x/session.d
+
+# Execute session file on behalf of file owner
+for SESSIONFILE in $MINI_X_SESSION_DIR/*; do
+ set +e
+ USERNAME=`stat -c %U $SESSIONFILE`
+ sudo -b -i -u $USERNAME $SESSIONFILE&
+ set -e
+done
+# Default files to run if $HOME/.mini_x/session or /etc/mini_x/session
+# dont exist.
+
+matchbox-terminal&
+exec matchbox-window-manager
diff --git a/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb b/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
new file mode 100644
index 0000000000..3818d16a3d
--- /dev/null
+++ b/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "Mini X session files for poky"
+HOMEPAGE = "http://www.yoctoproject.org"
+BUGTRACKER = "http://bugzilla.pokylinux.org"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://mini-x-session;endline=5;md5=b6430bffbcf05f9760e72938826b7487"
+
+SECTION = "x11"
+RCONFLICTS = "matchbox-common"
+
+SRC_URI = "file://mini-x-session"
+S = "${WORKDIR}"
+
+inherit update-alternatives
+
+ALTERNATIVE_NAME = "x-session-manager"
+ALTERNATIVE_LINK = "${bindir}/x-session-manager"
+ALTERNATIVE_PATH = "${bindir}/mini-x-session"
+ALTERNATIVE_PRIORITY = "10"
+
+do_install() {
+ install -d ${D}/${bindir}
+ install -m 0755 ${S}/mini-x-session ${D}/${bindir}
+}