[FreeNX-kNX] Solved "evdev" keyboard mapping issues.
Troban Trumsko
trumsko at yahoo.com
Fri Nov 20 00:13:05 UTC 2009
After upgrading my desktop linux to openSuSE 11.2, I got problems with the keyboard mapping, when logging to a freeNX server. (The most obvious symptom were the broken arrow keys).
It turned out, that openSuSE uses the "AutoAddDevices" option by default.
A workaround on the client side was to use the "AutoAddDevices off" option in the "local" xorg.conf:
Section "ServerFlags"
# Uncomment the following option to reenable kbd/mouse driver input sections.
# Otherwise evdev driver is used.
Option "AutoAddDevices" "off"
Option "AllowMouseOpenFail" "on"
EndSection
However, nomachine claimed to have fixed this problem since the beginning of this year:
http://web01.nomachine.com/tr/view.php?id=TR11F02129
Nevertheless even using a recent version of nxagent with the freenx-server did not solve the problem. It turned out, that nxagent needs the "client" option to be passed to work around the "evdev" problem.
A small change in the nxnode script fixed the problem:
@@ -1246,7 +1246,7 @@
umask 0077
cat << EOF > "$USER_FAKE_HOME/.nx/C-$sess_id/options"
-${keyboard:+keyboard=$keyboard,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype,cleanup=0,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${clipboard:+,clipboard=$clipboard}${menu:+,menu=$menu}:$display
+${keyboard:+keyboard=$keyboard,}${client:+client=$client,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype,cleanup=0,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${clipboard:+,clipboard=$clipboard}${menu:+,menu=$menu}:$display
EOF
umask $OLD_UMASK
I hope this might help you as well.
Cheers, Troban.
The problem occurs, if the X-server on the client machine uses the
evdev keyboard driver. In principle this problem is fixed in 'nxagent'
within the 3.3.0 series. However it turns out, that using a recent
(>3.3.0-11) nxagent is not enough to solve the problem. To work
properly, the "client" option has to be passed to nxagent. This can
easily be done by fixing the 'nxnode' script:
@@ -1246,7 +1246,7 @@
umask 0077
cat << EOF > "$USER_FAKE_HOME/.nx/C-$sess_id/options"
-${keyboard:+keyboard=$keyboard,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype,cleanup=0,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${clipboard:+,clipboard=$clipboard}${menu:+,menu=$menu}:$display
+${keyboard:+keyboard=$keyboard,}${client:+client=$client,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype,cleanup=0,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${clipboard:+,clipboard=$clipboard}${menu:+,menu=$menu}:$display
EOF
umask $OLD_UMASK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/freenx-knx/attachments/20091119/a2522f1e/attachment.html>
More information about the FreeNX-kNX
mailing list