[poky] [for-dora][PATCH] matchbox-keyboard: daemonize launch
Alexandre Belloni
alexandre.belloni at free-electrons.com
Mon Jan 6 20:02:22 PST 2014
The .shbg extension is not properly supported by the Xsession script
provided by xserver-common.
Move the main part of the Xsession.d script to a script in usr/bin then
add a Xsession.d script to start it in the background.
See discussion here:
https://lists.yoctoproject.org/pipermail/poky/2013-December/009463.html
Bug here:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5546
Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
---
.../matchbox-keyboard/files/80matchboxkeyboard.sh | 3 +++
.../files/80matchboxkeyboard.shbg | 23 ----------------------
.../files/matchbox-keyboard-daemon.sh | 22 +++++++++++++++++++++
.../matchbox-keyboard/matchbox-keyboard_git.bb | 8 ++++++--
4 files changed, 31 insertions(+), 25 deletions(-)
create mode 100755 meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.sh
delete mode 100755 meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.shbg
create mode 100755 meta/recipes-sato/matchbox-keyboard/files/matchbox-keyboard-daemon.sh
diff --git a/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.sh b/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.sh
new file mode 100755
index 000000000000..d10fd8c32c0e
--- /dev/null
+++ b/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+/usr/bin/matchbox-keyboard-daemon.sh &
diff --git a/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.shbg b/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.shbg
deleted file mode 100755
index 43c5d3ed6a32..000000000000
--- a/meta/recipes-sato/matchbox-keyboard/files/80matchboxkeyboard.shbg
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/sh
-
-. /etc/formfactor/config
-
-CMD=""
-
-if [ "$HAVE_KEYBOARD" = "0" ]; then
- CMD="matchbox-keyboard -d"
-elif [ "$DISPLAY_CAN_ROTATE" = "1" ]; then
- if [ "$HAVE_KEYBOARD_PORTRAIT" = "1" -a "$HAVE_KEYBOARD_LANDSCAPE" = "0" ]; then
- CMD="matchbox-keyboard -d -o landscape"
- elif [ "$HAVE_KEYBOARD_LANDSCAPE" = "1" -a "$HAVE_KEYBOARD_PORTRAIT" = "0" ]; then
- CMD="matchbox-keyboard -d -o portrait"
- fi
-fi
-
-
-if [ "$CMD" ]; then
- # Delay to make sure the window manager is active
- # by waiting for the desktop to say its finished loading
- dbus-wait org.matchbox_project.desktop Loaded
- exec $CMD
-fi
diff --git a/meta/recipes-sato/matchbox-keyboard/files/matchbox-keyboard-daemon.sh b/meta/recipes-sato/matchbox-keyboard/files/matchbox-keyboard-daemon.sh
new file mode 100755
index 000000000000..2975cef7e38a
--- /dev/null
+++ b/meta/recipes-sato/matchbox-keyboard/files/matchbox-keyboard-daemon.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+. /etc/formfactor/config
+
+CMD=""
+
+if [ "$HAVE_KEYBOARD" = "0" ]; then
+ CMD="matchbox-keyboard -d"
+elif [ "$DISPLAY_CAN_ROTATE" = "1" ]; then
+ if [ "$HAVE_KEYBOARD_PORTRAIT" = "1" -a "$HAVE_KEYBOARD_LANDSCAPE" = "0" ]; then
+ CMD="matchbox-keyboard -d -o landscape"
+ elif [ "$HAVE_KEYBOARD_LANDSCAPE" = "1" -a "$HAVE_KEYBOARD_PORTRAIT" = "0" ]; then
+ CMD="matchbox-keyboard -d -o portrait"
+ fi
+fi
+
+if [ "$CMD" ]; then
+ # Delay to make sure the window manager is active
+ # by waiting for the desktop to say its finished loading
+ dbus-wait org.matchbox_project.desktop Loaded
+ exec $CMD
+fi
diff --git a/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb b/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb
index ffcabcad2215..a56d99251077 100644
--- a/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb
+++ b/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb
@@ -17,7 +17,8 @@ PR = "r4"
SRC_URI = "git://git.yoctoproject.org/${BPN} \
file://configure_fix.patch;maxrev=1819 \
file://single-instance.patch \
- file://80matchboxkeyboard.shbg \
+ file://80matchboxkeyboard.sh \
+ file://matchbox-keyboard-daemon.sh \
file://png-fix.patch"
S = "${WORKDIR}/git"
@@ -43,7 +44,10 @@ FILES_${PN}-applet = "${libdir}/matchbox-panel/*.so"
do_install_append () {
install -d ${D}/${sysconfdir}/X11/Xsession.d/
- install -m 755 ${WORKDIR}/80matchboxkeyboard.shbg ${D}/${sysconfdir}/X11/Xsession.d/
+ install -m 755 ${WORKDIR}/80matchboxkeyboard.sh ${D}/${sysconfdir}/X11/Xsession.d/
+
+ install -d ${D}${bindir}
+ install -m 755 ${WORKDIR}/matchbox-keyboard-daemon.sh ${D}${bindir}/
rm -f ${D}${libdir}/gtk-2.0/*/immodules/*.la
rm -f ${D}${libdir}/matchbox-panel/*.la
--
1.8.3.2
More information about the poky
mailing list