Xpra: Ticket #383: Xephyr + Xpra keyboard problem on Mac OS X 10.8

I'm starting a child with Xephyr on Linux xpra 0.9.7 and when I access it from my Mac v.0.9.6. The enter-key and the arrows doesn't work. If I start xpra without the child it works fine across Linux and Mac. Please check the logs attached.

I've noticed that the log with Xephyr, the xkb is not set with options keys.



Thu, 18 Jul 2013 05:21:41 GMT - roberto hashioka: attachment set


Thu, 18 Jul 2013 05:21:48 GMT - roberto hashioka: attachment set


Thu, 18 Jul 2013 05:28:13 GMT - roberto hashioka:

Sorry, after checking again the logs. On both logs the option keys are being configured by xkb. So, should be something else.

Thanks.


Thu, 18 Jul 2013 05:33:08 GMT - roberto hashioka:

The command that I'm using is:

xpra start :10 \
   --start-child="Xephyr -ac -screen 1440x900 -query localhost \
       -host-cursor -reset -terminate :11" \
   --xvfb="Xvfb +extension Composite -screen 0 1440x900x24+32 -nolisten tcp \
       -noreset -auth /home/docker/.Xauthority"

Thu, 18 Jul 2013 05:53:16 GMT - roberto hashioka:

Even if I set the xkb it doesn't work:

docker@9b5c0b4b7e54:~$ DISPLAY=:11 setxkbmap -rules evdev -model pc105 -layout us -option "terminate:ctrl_alt_bksp"
docker@9b5c0b4b7e54:~$ DISPLAY=:11 setxkbmap -query
rules:      evdev
model:      pc105
layout:     us
options:    terminate:ctrl_alt_bksp

Thu, 18 Jul 2013 05:54:09 GMT - roberto hashioka: summary changed


Thu, 18 Jul 2013 06:01:26 GMT - Antoine Martin: keywords, owner, priority changed

Have you tried using Xephyr as your xvfb instead?


Thu, 18 Jul 2013 06:07:48 GMT - roberto hashioka:

No. How should I do that?

xpra start :10 --xvfb="Xephyr -ac -screen 1440x900 -query localhost -host-cursor -reset -terminate"

?


Thu, 18 Jul 2013 06:22:50 GMT - Antoine Martin:

Never mind, this cannot work as Xephyr is itself an X11 client and therefore requires an existing X11 server to run.

So back to key mapping, you will have to tell Xephyr to use the same keymap as the Xvfb, see xmodmap and xkbcomp.


Thu, 18 Jul 2013 06:50:50 GMT - roberto hashioka:

I tried :

xkbcomp :10 :11

But it didn't work! On windows and on Linux the keyboard works fine, only on Mac that it happens!


Thu, 18 Jul 2013 06:52:17 GMT - Antoine Martin:

wiki/Keyboard may help you, but OSX support is not on the same level as the other platforms.


Thu, 18 Jul 2013 06:55:20 GMT - Antoine Martin:

As for xkbcomp, the usual way of doing it is to dump the keymap from setxkbmap -print to xkbcomp.

See http://www.x.org/releases/X11R7.7/doc/man/man1/setxkbmap.1.xhtml


Thu, 18 Jul 2013 06:56:10 GMT - roberto hashioka:

Do you think it is happening due the version? The most recent version on Mac is 0.9.6.


Thu, 18 Jul 2013 07:02:57 GMT - roberto hashioka:

Both xkb are the same. But the problem persists.

docker@9b5c0b4b7e54:~$ DISPLAY=:11
docker@9b5c0b4b7e54:~$ setxkbmap -print
xkb_keymap {
	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete"	};
	xkb_symbols   { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)"	};
	xkb_geometry  { include "pc(pc105)"	};
};
docker@9b5c0b4b7e54:~$ DISPLAY=:10
docker@9b5c0b4b7e54:~$ setxkbmap -print
xkb_keymap {
	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete"	};
	xkb_symbols   { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)"	};
	xkb_geometry  { include "pc(pc105)"	};
};
docker@9b5c0b4b7e54:~$

Thu, 18 Jul 2013 07:03:49 GMT - roberto hashioka:

ps ax
 6020 ?        Sl     0:12 /usr/bin/python /usr/bin/xpra start :10 \
    --start-child=Xephyr -ac -screen 1440x900 -query localhost -host-cursor -reset -terminate :11 \
    --xvfb=Xvfb +extension Composite -screen 0 1440x900x24+32 -nolisten tcp -nore
 6021 ?        Ss     0:01 Xvfb-for-Xpra-:10 +extension Composite -screen 0 1440x900x24+32 \
    -nolisten tcp -noreset -auth /home/docker/.Xauthority :10
 6030 ?        S      0:00 dbus-launch --autolaunch 610097d84ec52199cdf0f8d751e75ea7 --binary-syntax --close-stderr
 6031 ?        Ss     0:00 //bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
 6034 ?        S      0:00 /bin/sh -c Xephyr -ac -screen 1440x900 -query localhost -host-cursor -reset -terminate :11
 6035 ?        S      0:09 Xephyr -ac -screen 1440x900 -query localhost -host-cursor -reset -terminate :11

Thu, 18 Jul 2013 07:09:41 GMT - Antoine Martin:

Having the same layout is not sufficient, you also need the same keymap:

xmodmap -pke

But even then, keyboard support in sharing mode is unlikely to work with heterogeneous clients - at least in current versions.


Thu, 18 Jul 2013 07:14:14 GMT - roberto hashioka:

I'm not using sharing mode any more are it still has some issues. I'm now connecting one by one separately. When I connect from the other machine, the previous one lose the connection.


Thu, 18 Jul 2013 07:26:08 GMT - roberto hashioka:

Yes, the keymap are different between :11 and :10. How can I change the mapping? Which is the best way of telling Xephyr to use the same keymap as Xvfb?


Thu, 18 Jul 2013 07:40:01 GMT - roberto hashioka:

Hi Antoine,

Now it's working! I created a file (xmodmap) from the Xvfb display and then I used it on the Xephyr's display! :)


Thu, 18 Jul 2013 07:47:44 GMT - Antoine Martin: status changed; resolution set


Sat, 23 Jan 2021 04:53:44 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/383