Xpra: Ticket #580: Please, document usage of Xdummy with nvidia proprietary drivers


Xdummy is unfortunately not very much documented. Since it is very nice to use xpra with it, I suggest that hints for some usage cases are provided with xpra and that xpra default config files are possibly updated including comments for particular situations.

Specifically, the current xpra documentation and default files appear not to work well for setups where the server is a linux machine using nvidia proprietary drivers.

I am experiencing the following issues in ubuntu trusty 64 bit with the nvidia proprietary drivers loaded using the ubuntu 'driver manager' which sets up the nvidia proprietary drivers as packaged by ubuntu.

There are 2 issues:

1) With the current default, Xdummy tries to load the nvidia glx stuff rather than the xorg one, which does not seem to work. I believe that something like

Section "Files"
   ModulePath "/usr/lib/xorg/modules/"

may be needed in the xorg.conf used for xdummy.

2) Even with the above, the opengl software rasterizer has recently started to fail, because of missing symbols. I get

[528282.114] (EE) AIGLX error: dlopen of /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so failed (/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so: undefined symbol: _glapi_tls_Dispatch)

I believe that this is because the Xdummy server loads the nvidia libGL rather than the mesa one, but I am not sure about this.

Please, add some documentation to illustrate use of xdummy on systems with the nvidia proprietary driver. Specifically: how to make opengl work in Xdummy either via the software rasterizer or if possible with the nvidia driver rendering on the Xdummy framebuffer.

Tue, 27 May 2014 09:00:15 GMT - Antoine Martin: owner, description changed

Xdummy is unfortunately not very much documented

I assume that you've read wiki/Xdummy? If so, what is missing from it specifically apart from the nvidia problems below? (or is that all of it?)

So, the nvidia proprietary driver installation breaks some things, not xpra...

I believe that there are plans to solve the libGL conflicts, see: NVIDIA Publishes Vendor-Neutral GL Dispatch Library.

Until then, I've added some info here: wiki/Xdummy, is that enough?

Fri, 13 Jun 2014 09:00:37 GMT - Antoine Martin: status changed; resolution set

Not heard back, closing.

Fri, 13 Jun 2014 12:37:00 GMT - callegar:

I must have missed the notification about the last comment to the bug, so I did not answer, sorry.

The little comment on the libgl conflicts in the wiki already helps. Possibly adding some extra text about the following points:

  1. GL cannot be used in conjunction with binary drivers, since they cannot render on the xdummy framebuffer.

[this would be useful, since otherwise, many people may waste time trying to figure out if this is possible or impossible.]

  1. Even software rendering may not work, since binary drivers may ship their own libgl, conflicting with Xdummy.
  1. To get opengl using the rendering engine of the graphics card, VirtualGL may be used

[this is already a very useful addition to the wiki]

  1. In some configurations, soft-rendering may work on Xdummy, while the main screen works with the graphics card acceleration. For this setup to work, it is necessary to have the xorg.conf file for xdummy explicitly provide the path for the xorg glx module (otherwise the proprietary one is automatically selected and fails). This can be done by adding
Section "Files"
   ModulePath "/usr/lib/xorg/modules/"

To the xorg.conf. However, it is better not to count on this setup since the proprietary driver provider may easily break it with driver updates.

This is all I have understood so far. I may be wrong on something.

Linking to https://github.com/NVIDIA/libglvnd for further developments on the vendor-neutral GL dispatch library would also be good (even if development there seems to have stalled 3 months ago).

Fri, 13 Jun 2014 13:17:07 GMT - Antoine Martin:

Thanks. I have edited the page and linked it back here.

Tue, 02 Jun 2015 10:24:51 GMT - Dennis Schridde: cc set

Tue, 02 Jun 2015 10:26:36 GMT - Antoine Martin:

@devurandom: FYI this ticket is closed.

Sat, 23 Jan 2021 04:59:57 GMT - migration script:

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