On Thu, 19 Jun 2025 10:00:07 +0200
"Enrico Weigelt, metux IT consult" <i...@metux.net> wrote:

> > Yes it still works, but the concepts
> > and the implementation are out of touch with today's use cases.
> 
> How exactly "out of touch" ?
> The only thing I don't have practical use anymore is xf86vidmode
> extension. Anything else still has it's place.
> 
> > So people keep hacking at it, trying to somehow improve it, however modern
> > applications need a modern graphics stack.
> 
> What exactly are "modern applications" and "modern stacks" ?

The core X11 protocol was designed around message passing and network
transparency, this seems to be out of touch these days. This made sense
back in the 1980s when computers were expensive and slow. Today
computers are cheap and fast and can run most demanding applications.

X11 is good for what it was designed decades ago, but graphics hardware
has changed a lot and this really needs a completely different approach.

Some of the issues and limitations of X11:

- Complexity and latency associated with X11 protocol. This is part of
the reason XCB was created to replace Xlib, but in my view, these sorts
of hacks are not worth the effort.

- Hacks like direct rendering and shared memory extensions. These are
all designed to sidestep performance limitations of X11.

- Poor security around authentication and encryption. Yes you can
tunnel X11 via ssh or ipsec, but it's a bit clunky and requires correct
configuration on every remote node.

- Poor session handling. If Xserver is terminated, the session is
killed and remote X11 clients also terminate. With VNC I can disconnect
and reconnect multiple times and my session can be running in the
background.

- Complexity and limitations associated with multiple monitors with
different resolution and scaling, HDR issues
(https://gitlab.freedesktop.org/xorg/xserver/-/issues/1037#note_521100),
etc.

- Clunky font support. People didn't like how X11 handled fonts, so
they created fontconfig, which was a completely separate system,
relying on third party libraries for rendering fonts. Personally, I
hate font anti-aliasing and prefer older X11 bitmap fonts, as they look
much sharper on regular monitors. But people keep adding hacks and
workarounds to make X11 more "modern".

So to summarise: modern GUI applications use graphics card GPU for
things like window transparency, shadows, animations, etc. X11 can also
do window composing but via various extensions and workarounds. It is
showing its age and may not be the best design for such applications.

PS.

A lot of people mention X11 network transparency as its best feature,
but Sun had a product called "Sun Ray" about 15 year ago and they did
not use X11 protocol for remote display, instead they designed a
proprietary protocol called ALP (Appliance Link Protocol). This also
supported remote audio, printing, video, usb, etc. Other vendors
created similar but incompatible protocols: RDP, RFB, RSG, etc. So
really X11 seems like a poor man's remote protocol, simply because it
is open and free, that is the only thing going for it.



------------------------------------------
illumos: illumos-discuss
Permalink: 
https://illumos.topicbox.com/groups/discuss/T0d2b921a75184a64-Me9399c9fff44bb7e63247179
Delivery options: https://illumos.topicbox.com/groups/discuss/subscription

Reply via email to