xpra icon
Bug tracker and wiki

Opened 3 years ago

Closed 3 years ago

Last modified 2 years ago

#580 closed enhancement (fixed)

Please, document usage of Xdummy with nvidia proprietary drivers

Reported by: callegar Owned by: callegar
Priority: major Milestone: 0.14
Component: server Version: 0.13.x
Keywords: Cc: devurandom@…

Description (last modified by Antoine Martin)

Hi,

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/"
EndSection

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.

Change History (6)

comment:1 Changed 3 years ago by Antoine Martin

Description: modified (diff)
Owner: changed from Antoine Martin to callegar

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?

Last edited 3 years ago by Antoine Martin (previous) (diff)

comment:2 Changed 3 years ago by Antoine Martin

Resolution: fixed
Status: newclosed

Not heard back, closing.

comment:3 Changed 3 years ago by 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/"
EndSection

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).

comment:4 Changed 3 years ago by Antoine Martin

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

comment:5 Changed 2 years ago by devurandom

Cc: devurandom@… added

comment:6 Changed 2 years ago by Antoine Martin

@devurandom: FYI this ticket is closed.

Note: See TracTickets for help on using tickets.