
The Linux graphics stack from X to Wayland (2011) - signa11
http://arstechnica.com/information-technology/2011/03/the-linux-graphics-stack-from-x-to-wayland/
======
DonHopkins
Here's an interesting interview [1] [2] with Jim "Internet Plumber" Gettys
[3], one of the original designers of X [4], and editor of the HTTP/1.1
specification. He talks about his work on the OLPC project, X memory usage,
Linux and other stuff. He also has a great blog [5], and has been
investigating the effect of bufferbloat on network performance [6] [7].

[1] Part 1:
[https://lwn.net/Articles/188060/](https://lwn.net/Articles/188060/)

[2] Part 2:
[https://lwn.net/Articles/188073/](https://lwn.net/Articles/188073/)

[3] Jim Gettys:
[https://en.wikipedia.org/wiki/Jim_Gettys](https://en.wikipedia.org/wiki/Jim_Gettys)

[4] The (Re)Architecture of the X Window System (July 2004 Ottawa Linux
Symposium): [https://keithp.com/~keithp/talks/xarch_ols2004/xarch-
ols2004...](https://keithp.com/~keithp/talks/xarch_ols2004/xarch-
ols2004-html/)

[5] Blog: [https://gettys.wordpress.com/](https://gettys.wordpress.com/)

[6] Bufferbloat:
[https://en.wikipedia.org/wiki/Bufferbloat](https://en.wikipedia.org/wiki/Bufferbloat)

[7] Bufferbloat project:
[https://www.bufferbloat.net/projects/](https://www.bufferbloat.net/projects/)

------
MayeulC
There is quite a lot of slightly wrong bits here, or I just don't remember
some parts.

It is however relieving to see how much progress has been done on the graphics
stack since (open source drivers, DRI3) and the Wayland side (especially with
libinput, which I think didn't exist at the time of this article).

Anyway, Wayland is almost there, guys!

~~~
IshKebab
> It is however relieving to see how much progress has been done on the
> graphics stack since

Really? Most distros still use X11 by default 5 years later. That's pretty bad
progress in my book.

~~~
stephen_g
X11 has been the main windowing system for Unix and Linux for 32 years... You
can't expect Wayland to replace it overnight!

~~~
lake99
Actually, this is something that _can_ get replaced overnight, were it not for
the serious lack of manpower. Most people use Gnome or KDE. They will continue
to do so when their distros quitely replace X11 with Wayland, overnight.
Except that Gnome/Wayland has some features still unimplemented, and
KDE/Wayland is awfully unstable.

I mean, this is more of a upstream-domain issue than a user-domain issue.

------
bandrami
Like most of what freedesktop.org does (pretty much since dbus), I look at
Wayland and think, "hmm... that's a probably-interesting solution to a set of
problems I just don't have."

I've never in my life seen this "tearing" that people keep complaining about.
OTOH I use X's network transparency daily. I'm sure several years from now
Wayland will be able to replicate the use cases I get now from X, at which
point I'll probably switch. So, I wish the best to the people working on it,
even if I scratch my head over their intentions.

~~~
madez
I see tearing often and it bothers me a lot. Also, if you run a program with
gui in X you will need to trust that program to act in your best interest
since X doesn't protect against malicious clients. When I start a game on my
computer, I do not want to have to trust it to behave nicely.

~~~
bandrami
I mean, that's a great example of what I'm saying: worrying about an
application screen-scraping my display (which is the only protection Wayland
provides) is a kind-of-interesting thought experiment that I just don't care
about.

~~~
maggit
For completeness; Wayland also protects against keyloggers. In Wayland, input
events are sent only to the application that hosts the window into which the
input goes. So, keyboard events go to the app that has the keyboard focus.

I'm not sure exactly how X works here. I think as long as you have a visible
window (1x1 pixel or more), you can get all keyboard input.

This may or may not be central to your point, but I wanted to have it out
there to better inform about how Wayland improves upon X :)

~~~
rtpg
kinda curious: how would you build something like Text Expander in this world?
As a keyboard driver?

~~~
maggit
Wayland is built up of multiple orthogonal protocols that each app negotiates
access to with the server. Any given app will probably use multiple of these,
for output, input, etc.

Not knowing exactly what Text Expander is, I'm guessing it would probably need
access to a specific protocol for controlling accessibility features. The
Wayland server would need to be configured to allow this app access to that
protocol somehow, for example by way of a server-initiated popup window that
asks you to allow or deny this access.

Does that explain it?

~~~
michaelmrose
What you mean is that because each compositor would have to add each feature
that wayland breaks on each environment some will be implemented badly, others
not at all.

------
oDot
Super noob question: Where can I read in depth about the _whole_ stack? An
example question is how apps draw things on the screen (qt/gtk or neither)? Do
they use OpenGL? Something else?

Is there a good write up of this or do I need to gather bits and pieces?

~~~
ProfDreamer
[https://magcius.github.io/xplain/article/](https://magcius.github.io/xplain/article/)

Something like this?

~~~
oDot
Yes! Thank you. If anyone has more, I'll be glad to read :D

------
shrewduser
5 years ago and we still haven't got wayland yet.

~~~
teh
I've been running on Wayland for a year with only minor issues. Which distro
are you using?

~~~
kochthesecond
Which apps and what DE do you typically use?

------
qznc
Since I use Ubuntu 16.04 with Unity, I should be using Mir, which is the
Ubuntu competitor to Wayland.

~~~
rantanplan
I don't think it's going to compete with anything. Pretty much everyone
supports(and if not they will) Wayland, so maintaining and supporting Mir will
become moot.

One of those things that you really can't understand why they sink money into
it :(

~~~
yxhuvud
Most of the stack is still the same as Wayland, so the question is how much
extra work support will require.

~~~
majewsky
Either it's sufficiently different to require extra support, or it's similar
enough to not warrant its own existence.

------
ramblenode
> Recently, Ubuntu has stepped up, suggesting that they are planning to use
> Wayland in conjunction with their own new window manager called Unity.

FYI, the article is a bit dated. Currently Ubuntu is working on their own
display server called Mir [0].

[0] [https://wiki.ubuntu.com/Mir/Spec](https://wiki.ubuntu.com/Mir/Spec)

------
pmoriarty
Are legacy X apps going to be able to be run directly under Wayland, or will
they have to be ported?

~~~
FreeFull
There already is an X server that runs under Wayland, called XWayland, and
most Wayland compositors integrate well with it.

------
kleiba
From March 2011.

~~~
majewsky
Yeah, I was confused there too why a lot of recent developments were omitted.
Can mods please add "(2011)"?

