I am a Frictional Games customer like you. I will try helping you because since some years, despite releasing Linux games, Frictional Games has completely dropped Linux end user support. This is unacceptable.

The Problem is that Soma doesn't create a GL 3.3 Context hence
"3 (X_GLXCreateContext)".which defaults to compatibility mode opengl 3. I surmise back when it was created it could get away with whatever mechanisms it used but not with 4.X opengl it seems.
Since the game folder files are flat except for the .exe's you could get away with tinkering with the main graphics init file (if there is one) to fix the problem. I've poked around but haven't found it YET. Looks pretty easy. https://www.khronos.org/opengl/wiki/OpenGL_Context

Either Mesa is advertising the wrong GL Version to Soma(Glew?) or Soma is asking for the wrong string in Mesa...nVidia seems to advertise the Max core from what I've seen.
IE. glxinfo
Max core profile version: 4.2
Max compat profile version: 3.0

Soma(Glew?) reads the compat not the max core version hence why the shaders will not compile.