[FreeNX-kNX] Keyboard Layout using RDP connections
Phil Stricker
stril at gmx.de
Fri Aug 31 16:05:45 UTC 2007
Hi!
>> I changed that option. The trace ist attached to the mail.
>> Sorry for the large attachment, but i did not want to cut the wrong
>> parts...
>>
>
> Thanks. I took a long look and the result is devastating :-(:
>
> According to the strace nxdesktop loads the german keymap just fine.
>
> Which NX client do you use?
>
> I guess a windows one ...?
>
> There might be a keyboard=load parameter needed, which I had not reverse engineered at that time.
>
I tried Nomachine Client 2.0.9 and 3.0 for Windows. The result was the
same. Choosing a fix keyboard layout in client 2.0.9 did not work, too...
>
>>> Create a shell script called start-rdesktop in /usr/bin/ (don't forget
>>>
>> to make it executable), where you start rdesktop with all nedded parameters.
>> Thank you! That works, but only for one user / for one Terminalserver.
>>
>
> Hm, sure ...
>
> If we can't fix the issue with the client (which would be the best), you could try to change nxserver:
>
> Around the start of startsession (after the lonely echo_x) do a:
>
> if [ "$(getparam type)" = "windows" ]
> then
> type="unix-application"
> application="rdesktop -f -u $(getparam agent_user) -k $(getparam keyboard) $(getparam agent_server)"
> CMDLINE="$CMDLINE&type=$type&application=$application"
> fi
>
> It might be that the parameter is not keyboard, but called differently. Look at your session log for more information and add any other parameters you need for rdesktop.
>
I try to give you the right parts of the logfiles:
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'XAUTHORITY' to
'/cygdrive/C/DOKUME~1/pstricke/.Xauthority'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable
'LD_LIBRARY_PATH' to 'C:\Programme\NX Client for
Windows\bin:C:\Programme\NX Client for Windows\bin'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'HOME' to
'C:\Dokumente und Einstellungen\pstricke'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'PATH' to
'C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\IVI\bin;C:\VXIPNP\WinNT\Bin;C:\Programme\NX
Client for Windows\bin;C:\Programme\NX Client for
Windows;C:\PROGRA~1\NXCLIE~1;C:\Programme\NX Client for
Windows\bin;C:\Programme\NX Client for Windows'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'NX_TEMP' to
'C:\DOKUME~1\pstricke\NX73F8~1\temp'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'TEMP' to
'C:\DOKUME~1\pstricke\NX73F8~1\temp'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'CYGWIN' to
'server'
[Fr 31. Aug 17:51:34 2007]: Setting environment variable 'NX_VERSION' to
'2.1.0'
[Fr 31. Aug 17:51:35 2007]: Setting environment variable 'HOME' to
'C:/Dokumente und Einstellungen/pstricke'
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got [Posix
path=/mnt/NX/fonts/base path=C:\Programme\NX Client for
Windows\X11R6\lib\X11\fonts\base]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got [Posix
path=/mnt/NX/fonts/TTF path=C:\Programme\NX Client for
Windows\X11R6\lib\X11\fonts\TTF]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got [Info: Using
fontpath: /mnt/NX/fonts/base,/mnt/NX/fonts/TTF]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[0][C:\Programme\NX Client for Windows/bin/NXWin.exe]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[1][-nowinkill]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[2][-clipboard]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[3][-noloadxkb]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[4][-agent]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[5][-hide]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[6][-noreset]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[7][-auth]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[8][/cygdrive/C/DOKUME~1/pstricke/.Xauthority]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[9][-nolisten]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[10][tcp]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[11][-fp]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[12][/mnt/NX/fonts/base,/mnt/NX/fonts/TTF]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[13][-fullscreen]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[14][-name]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[15][root at 129.206.29.123:]]
[Fr 31. Aug 17:51:36 2007]: NXService::readParameters: got
[Service::addArgument[16][:0]]
[Fr 31. Aug 17:51:39 2007]: Parameters passed to NX server [
--link="adsl" --backingstore="1" --nodelay="1" --cache="16M"
--images="64M" --media="0" --session="TSE6" --type="windows"
--agent_server="199.99.99.227" --agent_domain="DOMAIN"
--geometry="1280x994" --fullscreen="1" --kbload=" --kbload=pc102/de"
--kbtype="pc102/de" --keybd="1"
]
sshlog:
NX> 105 listsession --user="root" --status="suspended,running"
--geometry="1280x1024x32+render+fullscreen" --type="windows"
NX> 105 startsession --link="adsl" --backingstore="1" --nodelay="1"
--cache="16M" --images="64M" --media="0" --session="TSE6"
--type="windows" --agent_server="199.99.99.99" --agent_domain="DOMAIN"
--geometry="1280x994" --fullscreen="1" --kbload=" --kbload=pc102/de"
--kbtype="pc102/de" --keybd="1"
--screeninfo="1280x1024x32+render+fullscreen"
NX> 1006 Session status: running
/usr/bin/nxserver: line 1203: 5424 Terminated sleep
$AGENT_STARTUP_TIMEOUT
NX> 105 bye
> With that (as long as you don't use any spaces in parameters to rdesktop you should be good to go.
>
> If you need to automatic filling in of the password, you have more work to do:
>
> Use a rdesktop-start script like in first solution add "-p -" as parameter and add in nxnode:
>
> agent_password=$(getparam agent_password)
> +export agent_password
>
> Then do in rdesktop-start:
>
> #!/bin/sh
>
> echo $agent_password | rdesktop "$@"
>
> Thats all.
>
Thank you very much. Thats great, but i am using NX in a "larger"
environment. There are about 20 users who connect to different servers.
It would just be great, if the users could change destinations, etc in
their client.
Thank you for your support!
Greetings
Phil
More information about the FreeNX-kNX
mailing list