4 ms·
The problem is that the X11 architecture has been dead for a decade. The X11 architecture was network-transparent drawing primitives. Almost all of modern X is
by kevincox 3y ago
The problem is that the X11 architecture has been dead for a decade. The X11 architecture was network-transparent drawing primitives. Almost all of modern X is done via extensions. Your drawing is done using OpenGL or some similar interface, buffers are passed using shared memory, lots of display metadata and configuration is done via extensions as well. The actual rendering is done by the window manager (assuming you are doing compositing).
As Daniel Stone said, all that is left of "Core X11" is really bad IPC. (As the client talks to X which talks to the window manager which talks to X which talks to the client, requiring 2 round-trips for every request)
https://youtu.be/RIctzAQOe44?t=1037 https://youtu.be/RIctzAQOe44?t=1037
So saving Core X11 is a dead end. All you have is a basic IPC system with unnecessary round-trips.
So all that is left to save is the extensions. You can save GLX and the Vulkan equivalent but tearing them from the IPC is leaving not much behind.
So really, no. The things that could be saved are so basic (like feeding input events) that it is better to just re-implement them using a better IPC protocol. For clients that need backwards compatibility there is XWayland (although it is limited for security reasons).
- bzzzt 3y agoEveryone defending the X11 protocol nowadays should be forced to write at least one GUI app using just Xlib and Xt. I don't believe people are invested in the X protocol per se, but more the Xorg implementation that still offers a few interesting features not ported to Wayland yet. But allowing people to choose will mean any urgency of porting those features will diminish and you don't get feedback on Wayland from all those people who switch to X11. Linux users seem to be overrepresented at both ends of the conservative/progressive spectrum.