rdesktop AltGr fixes ^^^^^^^^^^^^^^^^^^^^ by pts@fazekas.hu at Thu Sep 7 17:54:38 MET DST 2006 This tutorial describes how to make the AltGr key work in rdesktop (for Hungarian layouts), and how to make it possible to use several Windows keymaps. The fix includes overriding your whole X11 keyboard layout (using xmodmap), so this might not be feasible unless you run rdesktop _only_, e.g. in the with LTSP (http://ltsp.org/). Step-by-step installation """"""""""""""""""""""""" Apply the appropriate patch to your rdesktop sources: http://www.inf.bme.hu/~pts/pts-rdesktop-1.4.0-xkeymap-altgr-localstate.patch http://www.inf.bme.hu/~pts/pts-rdesktop-1.4.1-xkeymap-altgr-localstate.patch Example (for Debian Sarge): $ apt-get -f source rdesktop $ wget -O pts-rdesktop-1.4.0-xkeymap-altgr-localstate.patch http://\ www.inf.bme.hu/~pts/pts-rdesktop-1.4.0-xkeymap-altgr-localstate.patch $ cd rdesktop-1.4.0 $ patch -p1 <../pts-rdesktop-1.4.0-xkeymap-altgr-localstate.patch $ make -f debian/rules build Install the new rdesktop: $ su # cp ./rdesktop /usr/bin/ Download and activate the raw xmodmap: $ wget -O xmodmap.raw-us \ http://www.inf.bme.hu/~pts/pts-xmodmap-raw-us.txt $ su - # cp xmodmap.raw-us /usr/share/xmodmap/ Download the raw keymap file for rdesktop: $ wget -O pts-raw \ http://www.inf.bme.hu/~pts/pts-rdesktop-keymap-raw.txt $ su # cp pts-raw /usr/share/rdesktop/keymaps Step-by-step running """""""""""""""""""" Activate the raw xmodmap: $ xmodmap /usr/share/xmodmap/xmodmap.raw-us Start rdesktop with the pts-raw mapping: $ rdesktop -k pts-raw $YOUR_SERVERNAME If you are using LTSP, you should modify the /usr/bin/rdesktop.wrapper on the NFS-root: #!/bin/sh /usr/X11R6/bin/xmodmap /usr/share/xmodmap.raw-us || exit while true; do /usr/bin/rdesktop -k pts-raw "$@" done Background information ~~~~~~~~~~~~~~~~~~~~~~ The X server translates your keystrokes to hardware-specific keycodes, which the X server configuration converts to keysyms. rdesktop uses its mapping files to convert keysyms to scancode-modifier pairs, and sends these pairs to the remote Windows server. !! more details __EOF__ ~