ssh – transfer x11: the server has no GPU – nor swrast_dri.so

I'm trying to configure my server to be able to use Chromium remotely, which I need to set aside some of the stupid IP restrictions … Therefore, I have to use the X11 transfer and – apparently? – Need to have OpenGL available.

First, some information about the material:

  • The client that connects is: macOS 10.14, XQuartz 2.7.11 (xorg-server 1.18.4)
  • The server I want to connect to is …

This:

# cat / etc / os-release
PRETTY_NAME = "Debian GNU / Linux 9 (extension)"
NAME = "Debian GNU / Linux"
VERSION_ID = "9"
VERSION = "9 (stretch)"
ID = debian
HOME_URL = "https://www.debian.org/"
SUPPORT_URL = "https://www.debian.org/support"
BUG_REPORT_URL = "https://bugs.debian.org/"

(The preview kept the bizarre formatting of this code, so I had to split it here, sorry for that!)

Now, every time I run Chromium, I immediately get messages that swrast_dri.so was not found, which turns out to be a software rendering engine. In addition, being run xdriinfo came with this (a bit of noise because of ssh -v):

# xdriinfo
debug1: client_input_channel_open: ctype x11chan 5 win 65536 max 16384
debug1: client_request_x11: request for :: 1 44410
debug1: x11_connect_display: $ DISPLAY is launched
debug1: channel 1: new [x11]
debug1: confirm x11
Screen 0: no direct rendering capability.
debug1: channel 1: FORCE input drain

I therefore learned that I had to install some kind of video driver. Since my Mac has a built-in Intel graphics processor (MacBook Pro 2015 release), I decided to install Mesa, hoping it would solve the problem – which was not the case. Until now, I've installed these:

# dpkg -l | grep -i mesa
ii libegl1-mesa: amd64 13.0.6-1 + b2 free implementation of EGL API amd64 - execution
libgl1-mesa-dev: amd64 13.0.6-1 + b2 amd64 free implementation of OpenGL API - GLX development files
ii libgl1-mesa-glx: amd64 13.0.6-1 + b2 amd64 free implementation of OpenGL API - GLX runtime
ii libglapi-mesa: amd64 13.0.6-1 + b2 amd64 free implementation of the GL API - shared library
ii libglu1-mesa: amd64_virus_2.2.2.1 amd64 Mesa OpenGL Utility (GLU)
ii libglu1-mesa-dev: amd64_virus_2.2.2.1 amd64 Mesa OpenGL Utilities Library - Development Files
ii libosmesa6: amd64 13.0.6-1 + b2 amd64 Mesa rendering extension off screen
ii libosmesa6-dev: amd64 13.0.6-1 + b2 amd64 Mesa rendering extension off-screen - development files
ii libwayland-egl1-mesa: amd64 13.0.6-1 + b2 amd64 Implementation of the Wayland EGL Platform - Execution
ii mesa-common-dev: amd64 13.0.6-1 + b2 Amd64 developer documentation for Mesa
ii mesa-utils 8.3.0-3 amd64 Various utilities from Mesa GL
# dpkg -l | grep -i x11
ii libfontenc1: amd64 1: 1.1.3-1 + font coding library amd64 X11 b2
ii libice-dev: amd64 2: 1.0.9-2 Amd64 X11 Exchange Client Exchange (Development Headers)
ii libice6: amd64 2: 1.0.9-2 X11 Exchange Client Library
ii libqt5x11extras5: amd64 5.7.1 ~ 20161021-2 extras amd64 Qt 5 X11
ii libsm-dev: amd64 2: 1.2.2-1 + b3 amd64 X11 session management library (development headers)
ii libsm6: amd64 2: 1.2.2-1 + b3 amd64 X11 Session Management Library
ii libtk8.6: amd64 8.6.6-1 + b1 amd64 Tk toolkit for Tcl and X11 v8.6 - runtime files
ii libva-x11-1: amd64 1.7.3-2 amd64 video acceleration API (VA) for Linux - X11 runtime environment
ii libx11-6: amd64 2: 1.6.4-3 + deb9u1 client-side amd64 X11 library
ii libx11-data 2: 1.6.4-3 + deb9u1 of all X11 client-side libraries
ii libx11-dev: amd64 2: 1.6.4-3 + deb9u1 amd64 X11 client-side library (development headers)
ii libx11-xcb-dev: amd64 2: 1.6.4-3 + deb9u1 xlib / XCB amd64 interface library (development headers)
ii libx11-xcb1: amd64 2: 1.6.4-3 + deb9u1 interface library amd64 Xlib / XCB
ii libxau-dev: amd64 1: 1.0.8-1 amd64 X11 authorization library (development headers)
ii libxau6: amd64 1: 1.0.8-1 authorization library amd64 X11
ii libxaw7: amd64 2: 1.0.13-1 + b2 amd64 X11 Athena Widget Library
ii libxcomposite1: amd64 1: 0.4.4-2 amd64 X11 Composite extension library
ii libxdamage-dev: amd64 1: 1.1.4-2 + b3 amd64 x11 damaged region extension library (development headers)
ii libxdamage1: amd64 1: 1.1.4-2 + b3 damaged region extension library amd64 X11
ii libxdmcp-dev: amd64 1: 1.1.2-3 amd64 X11 Authorization Library (Development Headers)
ii libxdmcp6: amd64 1: 1.1.2-3 amd64 display manager control protocol library amd64
ii libxext-dev: amd64 2: 1.3.3-1 + b2 Library of various extensions amd64 X11 (development headers)
ii libxext6: amd64 2: 1.3.3-1 + b2 amd64 extension library X11
ii libxfixes-dev: amd64 1: 5.0.3-1 Extension Library & # 39; corrections & # 39; miscellaneous of amd64 X11 (development headers)
ii libxfixes3: amd64 1: 5.0.3-1 Extension Library & # 39; patches & # 39; various amd64 X11
ii libxfont1: amd64 1: 1.5.2-4 amd64 X11 font rasterization library
ii libxfont2: amd64 1: 2.0.1-3 + deb9u1 amd64 X11 font rasterization library
ii libxi6: amd64 2: 1.7.9-1 amd64 X11 extension library input
ii libxinerama1: amd64 2: 1.1.3-1 + b3 extension library amd64 X11 Xinerama
ii libxkbcommon-x11-0: amd64 0.7.1-2 ~ deb9u1 amd64 library to create key maps with the XKB X11 protocol
ii libxkbfile1: amd64 1: 1.0.9-2 amd64 X11 keyboard file manipulation library
ii libxmu6: amd64 2: 1.1.2-2 Miscellaneous Utilities Library amd64 X11
ii libxmuu1: amd64 2: 1.1.2-2 library of various micro-utilities amd64 X11
ii libxpm-dev: amd64 1: 3.5.12-1 pixmap amd64 X11 library (development headers)
ii libxpm4: amd64 1: 3.5.12-1 pixmap library amd64 X11
ii libxrandr2: amd64 2: 1.5.1-1 amd64 X11 RandR extension library
ii libxss-dev: amd64 1: 1.2.2-1 amd64 X11 Screen Saver extension library (development headers)
ii libxss1: amd64 1: 1.2.2-1 extension library amd64 X11 Screen Saver
ii libxt-dev: amd64 1: 1.1.5-1, intrinsic library of the amd64 X11 toolbox (development headers)
ii libxt6: amd64 1: 1.1.5-1, intrinsic library of the amd64 X11 toolbox
ii libxtst6: amd64 2: 1.2.3-1 amd64 test X11 - Recording Extension Library
ii libxv1: amd64 2: 1.0.11-1 amd64 extension library X11 Video
ii libxvmc1: amd64 2: 1.0.10-1 amd64 extension library X11 Video
ii libxxf86dga1: amd64 2: 1.1.4-1 + b3 extension library amd64 X11 Direct Graphics Access
ii libxxf86vm-dev: amd64 1: 1.1.4-1 + b2 amd64 x11 XFree86 video mode extension library (development headers)
ii libxxf86vm1: video mode extension library amd64 1: 1.1.4-1 + b2 amd64 X11 XFree86
ii tk 8.6.0 + 9 amd64 Toolkit for Tcl and X11 (default version) - windowing shell
ii tk-dev: amd64 8.6.0 + 9 amd64 Toolkit for Tcl and X11 (default version) - development files
ii tk8.6 8.6.6-1 + b1 amd64 Tk toolkit for Tcl and X11 v8.6 - windowing shell
ii tk8.6-dev: amd64 8.6.6-1 + b1 amd64 Tk toolkit for Tcl and X11 v8.6 - development files
ii x11-common 1: 7.7 + 19 all X Window System (X.Org) infrastructure
ii x11-utils 7.7 + 3 + b1 utilities amd64 X11
ii x11-xkb-utils 7.7 + 3 + b1 utilities amd64 X11 XKB
ii x11proto-core-dev 7.0.31-1 all X11 core wire protocol and auxiliary headers
ii x11proto-damage-dev 1: 1.2.1-2 all the protocol of X11 Damage extension wire
ii x11proto-dri2-dev 2.8-2 any X11 DRI2 extension wire protocol
ii x11proto-fixed-dev 1: 5.0-2 all X11 corrects the extension wire protocol
ii x11proto-gl-dev 1.4.17-1 any X11 OpenGL extension protocol
ii x11proto-input-dev 2.3.2-1 any protocol X11 input extension wire
ii x11proto-kb-dev 1.0.7-1 any X11 XKB extension wire protocol
ii x11proto-render-dev 2: 0.11.1-2 all X11 Render protocol of extension wire
ii x11proto-scrnsaver-dev 1.2.2-1 any X11 screensaver extension wire protocol
ii x11proto-xext-dev 7.3.0-1 all X11 extension cable protocols
ii x11proto-xf86vidmode-dev 2.3.1-2 any X11 video mode extension wire protocol

Now, notice that this is obviously a Debian server installation and I'm literally trying to add some sort of "office-y" to it, which is really something that someone should not do unless you know what he does. And to be fair – I do not know everything myself here.

So how can i get this lack swrast_dri.so and stop having Chromium complain about its lack and its erroneous rendering? Because all I get is a big blue box with virtually nothing I can click on. 🙂

Sincere friendships,
Ingwie.