I think the entire idea behind Wayland is to NOT have any of the remote desktop protocols in the graphics system. Cutting that(and a lot of other) clutter out of the existing X11 solution.
Originally Posted by timofonic
NX, VNC, or something else would be a better solution. It doesn't add the extra overhead that is in X11 with its networking ability.
The 'networking overhead' of X11 is almost nill. That and VNC sucks huge donkey dick when compared to X11 networking. NX is pretty cool, but advancements in toolkits are helping out X a lot (ignoring the fact that NX requires X Windows anyways...).
People have this misconception that X is slow because it has to go through some sort of networking stack, which entirely misinformed.
When using X locally your going over 'fast unix sockets' which is a very low overhead form of IPC and is plenty fast. As fast as anything you'd get for standardized multi process communication on any other platform. There is definitely some overhead associated with X, but it's not the performance killer people are making it out to be.
X is slow, not because of the networking, but because Linux graphics drivers suck. Fixing the Linux drivers is what is necessary for Wayland to work properly _at_all_... and is also the same exact thing that will make your X server much faster.
X is bloated, not because of the networking, but because the stupid thing has been around for decades and decades and has been the victim of a combination of bad corporate policies and a software license that discourages code sharing. That is where the 'bloat' comes from. It's called 'legacy overhead'.
It has much less to do with the networking then the fact that it's designed to be backwards compatible with all the Unix/Linux graphic software made in the past 15 years (or so).
THAT and Wayland and X are not mutually exclusive.
YOU CAN HAVE BOTH.
With Wayland and composited desktops you will have a X server that renders windows off-screen and then are composited together on the Wayland managed display.
Therefore you do not have to give up X networking to use Wayland.
I don't know if they have this setup yet, but it is certainly in the cards since nobody in their right mind will sacrifice application compatibility for a minor boost in performance.
So if Wayland is to make any headway it will end up supporting X in some manner, most likely through composition. Either that or Wayland will die.
Oh and Gallium is compatible with both. Which is the point of having Gallium.
With Gallium you can support multiple APIs (relatively) easily by adding another state tracker. So this way we can get rid of having to have separate drivers for 2D and 3D and be able to support lots of other APIs like GL shading, OpenCL, vector rendering, graphics acceleration, and so on and so forth.
So with Gallium you can have a Wayland state tracker running along side of a X11/EXA/Xrender state tracker and have both. So your wayland display gets accelerated and your X apps get accelerated at the same time.
I wasn't talking network overhead.
I was saying that X11 is a big big big piece of code, with lots of features that most desktop users don't need. and the development and upkeep overhead of that is something that should NOT be adopted by Wayland, but should instead be handled by VNC or NX or something else.
Well my comment was not just directed at you.
Originally Posted by TobiasTheViking
But, your talking about taking something that exists right now and rewriting it from scratch in order to lower the development effort? It does not make much sense. By the time Wayland reaches a similar level of functionality that it can replace X it'll end up being nearly as complicated.
That's just how these sort of things work out. That and X will still be required for software compatibility reasons, so people will end up having to support BOTH Wayland and X.
The loss of network transparency is just a minor inconvenience compared to that. If people did not care about backwards compatibility then they could strip out huge amounts of legacy X cruft very quickly and make that much simpler right now without having to develop something new from scratch.
That is not to say that Wayland does not have a chance. It's just to say that it's not a slam dunk and it's not going to be a simpler solution.
What he said, plus history has shown that such "complete rewrites" of software have been the quickest path to failure. Netscape, Lotus and countless other applications tried that approach only to be lost in the sands of time.
As tempting as it sounds, throwing away decades of bugfixes, optimizations, workarounds and technical expertise is *not* the way to salvation. Wayland looks interesting, but it will have support existing applications (probably by hosting an X server inside it) before it can become widely useful.
That's exactly what the plan is as far as I can see. Wayland can already host multiple X servers to run legacy applications and in cases where users want the networking capability of X.
Originally Posted by BlackStar
Wayland isn't supposed to be a rewrite of X, it's aiming to be something much simpler and I believe it's what should eventually be used by default in desktop Linux, as most users don't need all the features of X.
I can really recommend the following article and the embedded video to those who are curious about wayland, its goals and (future) abilities:
(Kristian Talks about the wayland display server)
Wayland's Rewrite Philosophy
Goal: deprecate the complex X11 protocol in a backward-compatible way.
Wayland's minimal and toolkits must be ported. GTK & QT have ports in-progress. It offers X11's GEM buffers (most common feature) making porting easier.
It has plugins for compositing & X-Server (for non-ported programs' backwards compatibility). Plugins can be created for VNC.
Why do people (who know nothing about X) keep insisting that X needs to be replaced and that it is bloated? X isn't some simple piece of software so if you don't understand it, shut up.
I'm not saying X is perfect and doesn't need to be replaced, but don't come and say it's full of problems when you don't know anything about it. Many of the problems people blame on X actually lies somewhere else.
X is complicated
Anything with 10s of millions of lines of code is too complicated for anyone to "know". Still X-server sees few developers than projects of similar importance.
Unnecessary complication is often beaten by choice since developers can work on the competing product. Here there's no choice.
That's why someone from the community who has enhanced Linux kernel, Mesa, and X.org's server decided to build a simpler competitor: Wayland. It takes that level of knowledge to even begin doing the job.