Skip to content
Oleksandr Motsak edited this page May 17, 2015 · 2 revisions

Evaluation of Xpra under VirtualBox without dealing with docker containers:

Two shells in parallel (1. before 2.):

  1. ssh shell to VB:
  • cd && rm -R .xpra && xpra start :100 --start-child=xterm --exit-with-children
Entering daemon mode; any further errors will be reported to:
  /home/vagrant/.xpra/:100.log
  • xpra list:
Found the following xpra sessions:
	LIVE session at :100
  1. GUI login & startx:
  • perfect OpenGL performance: glxgears -info -fullscreen directly in xterm:
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
GL_RENDERER   = Chromium
GL_VERSION    = 2.1 Chromium 1.9
GL_VENDOR     = Humper
GL_EXTENSIONS = GL_EXT_texture_compression_s3tc ... GL_EXT_stencil_two_side
1785 frames in 5.0 seconds = 356.899 FPS
1864 frames in 5.0 seconds = 372.707 FPS
1784 frames in 5.0 seconds = 356.707 FPS
<ESC>
  • xpra list:
Found the following xpra sessions:
	LIVE session at :100
  • xpra attach:
xpra client version 0.12.3
libGL error: pci id for fd 6: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
2015-05-17 22:44:49,271 PyOpenGL warning: missing accelerate module
2015-05-17 22:44:49,273 PyOpenGL warning: missing array format handlers: numpy, numeric, vbo, vbooffset
2015-05-17 22:44:49,273 OpenGL Version: 2.1 Chromium 1.9
2015-05-17 22:44:49,309 OpenGL support not enabled: vendor 'Humper' is blacklisted!
2015-05-17 22:44:50,579 failed to instantiate the dbus notification handler: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files
2015-05-17 22:44:50,604 disable notifications to avoid this error
2015-05-17 22:44:50,832 detected keyboard: rules=evdev, model=SKIP, layout=us
2015-05-17 22:44:50,839 desktop size is 1024x768 with 1 screen(s):
2015-05-17 22:44:50,841   ':0.0' (270x203 mm)
2015-05-17 22:44:50,841     VGA-0
2015-05-17 22:44:52,175 mmap is enabled using 128MB area in /tmp/xpra.0XV4ax.mmap
2015-05-17 22:44:52,177 server: Linux Ubuntu 14.04 trusty, Xpra version 0.12.3 (r6075)
2015-05-17 22:44:52,251 Attached to :100 (press Control-C to detach)
  • previous command opens xterm, where we run: glxgears -info -fullscreen:
GL_RENDERER   = Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)
GL_VERSION    = 2.1 Mesa 10.1.3
GL_VENDOR     = VMware, Inc.
GL_EXTENSIONS = GL_ARB_multisample GL_EXT_abgr ... GL_ARB_vertex_type_10f_11f_11f_rev 
30 frames in 5.1 seconds =  5.909 FPS
49 frames in 5.1 seconds =  9.626 FPS
48 frames in 5.0 seconds =  9.541 FPS
47 frames in 5.1 seconds =  9.138 FPS
<ESC>
  • back to xpra attach
2015-05-17 22:46:01,262 read connection reset or aborted for SocketConnection( - /home/vagrant/.xpra/ubuntu-14-100)
2015-05-17 22:46:01,325 write connection reset or aborted for SocketConnection( - /home/vagrant/.xpra/ubuntu-14-100)
2015-05-17 22:46:01,329 connection lost: write connection reset: [Errno 32] Broken pipe
2015-05-17 22:46:01,337 Connection lost
2015-05-17 22:46:01,664 connection lost: read connection reset: [Errno 104] Connection reset by peer

NOTE: .xpra/Xorg.:100.log contains the following :

[ 11955.122] (II) AIGLX: Screen 0 is not DRI2 capable
[ 11955.122] (EE) AIGLX: reverting to software rendering
[ 11955.353] (II) AIGLX: Loaded and initialized swrast
[ 11955.354] (II) GLX: Initialized DRISWRAST GL provider for screen 0

Xpra / Docker:

  • build docker-desktop following https://github.com/rogaha/docker-desktop
  • Run docker-desktop:
docker run -e USER --rm -it -a stdin -a stdout -a stderr  -v /etc/passwd:/etc/passwd:ro \
 -v /etc/shadow:/etc/shadow:ro -v /etc/group:/etc/group:ro -v /etc/localtime:/etc/localtime:ro \
 -v /etc/sudoers:/etc/sudoers:ro -v /etc/sudoers.d/:/etc/sudoers.d/:ro \
 -v /tmp/:/tmp/:rw -v /home/:/home/:rw docker-desktop sudo su $USER
  • testing the start of Xpra in that container:
XPRA_SOCKET_HOSTNAME=myhostname xpra --socket-dir=$HOME/.xpra start :100 --start-child=xterm --exit-with-children

Note that setting a different socket-dir (e.g. --socket-dir=/tmp/.xpra) still leads to the creation of $HOME/.xpra with Xorg.:ID.log and run-xpra.

In any case xpra terminates & cleans-up shortly afterwards... ps aux shows a bunch of zombies (like [xpra] <defunct>) :(

What is wrong?

TODO: try VirtualGL ( http://www.virtualgl.org/About/Introduction )?

Clone this wiki locally