[oe-commits] Koen Kooi : xserver-common: add workaround for xmodmap problems with kdrive 1.4+

GIT User account git at amethyst.openembedded.net
Tue Dec 30 16:36:04 UTC 2008


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 814da25dfa191482e1b0bf614eb064c85a3233b0
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=814da25dfa191482e1b0bf614eb064c85a3233b0

Author: Koen Kooi <koen at openembedded.org>
Date:   Tue Dec 30 17:30:50 2008 +0100

xserver-common: add workaround for xmodmap problems with kdrive 1.4+

---

 packages/xserver-common/files/98keymap-fixup   |   10 ++++++++++
 packages/xserver-common/xserver-common_1.22.bb |    6 ++++--
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/packages/xserver-common/files/98keymap-fixup b/packages/xserver-common/files/98keymap-fixup
new file mode 100755
index 0000000..fcc84d9
--- /dev/null
+++ b/packages/xserver-common/files/98keymap-fixup
@@ -0,0 +1,10 @@
+#!/bin/sh
+ 
+# kdrive 1.4 and up have a heisenbug where it may take multiple tries to apply a modmap
+iter=0
+while [ $(xmodmap -pke | awk '{if ($2 == 36) { if ($4 == "Return") { print "good" } else {print "bad" }}}') = "bad" ] ; do
+	xmodmap - </etc/X11/default.xmodmap
+	let iter=iter+1
+done
+
+echo "modmap applied after $iter additional tries"
diff --git a/packages/xserver-common/xserver-common_1.22.bb b/packages/xserver-common/xserver-common_1.22.bb
index 05b15ae..63a7449 100644
--- a/packages/xserver-common/xserver-common_1.22.bb
+++ b/packages/xserver-common/xserver-common_1.22.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts and support files"
 LICENSE = "GPL"
 SECTION = "x11"
 RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo"
-PR = "r8"
+PR = "r10"
 
 PACKAGE_ARCH = "all"
 
@@ -13,10 +13,12 @@ SRC_URI_append = " file://setDPI.sh "
 SRC_URI_append_angstrom = " file://kdrive-1.4-fixes.patch;patch=1 \
                             file://xorg-fixes.patch;patch=1 \
 			    file://gta-xorg-fixes.patch;patch=1 \
-                            file://default.xmodmap "
+                            file://default.xmodmap \
+                            file://98keymap-fixup "
 
 do_install_append() {
 	install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi"
+	install -m 0755 "${WORKDIR}/98keymap-fixup" "${D}/etc/X11/Xinit.d/"
 }
 
 do_install_append_angstrom() {





More information about the Openembedded-commits mailing list