X.Org Server 1.15 Brings DRI3, Lacks XWayland Support
An anonymous reader writes "A belated holiday gift for Linux users is the X.Org Server 1.15 'Egg Nog' release. X.Org Server 1.15 presents new features including DRI3 — a big update to their rendering model — a rewrite of the GLX windowing system code, support for Mesa Mega Drivers, and many bug fixes plus polishing. The release, though, goes without any mainline support for XWayland to ease the adoption of the Wayland Display Server while maintaining legacy X11 application support."
Yet another good reason to disparage Wayland: Not even X supports it.
Kid-proof tablet..
Its not obvious to me that XWayland and X should be merged. XWayland is a compatibility layer for Wayland, and the only things in needs to support is the published interface. Changes to the rendering model may well be irrelevant, as XWayland would render through the Wayland display layer anyway.
X11 is not dead. As you point out, the "next-game challengers" have yet to prove themselves viable. If you want to be relevant today you support the technology that actually exists.
If all of the competent people working on Wayland would stop wasting time on it and improve the X server, think how much better it might be.
Wayland lacks absolutely necessary features (true "over the net" and root window access, for example) for a significant number of applications and users. Until it has those, even if only through X emulation, it is simply not ready for use by me, and a lot of people like me.
It is asking too much for a link to *official* sources? (Hint: http://lists.x.org/archives/xorg-announce/2013-December/002384.html)
Having seen terrible X compatibility layers for Mac OS X and Windows, I have got to ask if I should expect XWayland to be better? Integration between applications talking the X protocol and applications talking a proprietary protocol has been ranging from terrible to nonexistent. Some implementations have taken the approach of creating a window inside which all X applications are rendered. This has potential for great compatibility among the X applications, but they are demoted to second class citizens, with no chance of integrating with anything happening outside that window. Others have been rendering X applications each in a separate window. But usually they still cannot see windows opened by applications talking the proprietary protocol, and thus cannot interact with them. Secondly that design has a tendency to treat windows opened by an X application I just started as if it was just one more window opened by another X application, which was already running. For example on Windows, that causes new windows to be opened behind existing windows instead of in front.
The lack of X has been the main technical drawback Mac OS X has been having compared to Linux. I'd much rather see Mac OS X catch up with Linux than for Linux to go down to the level of Mac OS X.
It's good enough for valve to base its console on (and not wayland), it's also good enough for me (FWIW) in that it works and at this point wayland does not as it is nowhere near feature parity with X11.
And when comparing X11 vs wayland for a simple desktop: wayland loses every single benchmark.
TODO: 753) write sig.
then you're using slow equipment, or you're eyes are broken in some way
When Citrix came out with ICA that should have been an indication where remote display tech should be headed, then we have Microsoft doing RDP and now the king pin is VMware with PCoIP. What we need is a way to remote a whole computer and not just the graphics. Why?
ALL USERS want the following:
1) Remote sound
2) Remote USB
3) Video Acceleration between a client and server
Why so that simple web pages with Flash content do not suck. And so that all this crappy USB stuff that end users have purchased can work on a remote session.
Your Average Joe
In a country long ago and far away there lived the good King X the eleventh.
He had a lot of ministers, the most important of which had become the minister of Composition. His job was to have peoples houses painted. If you wanted your house painted, you would have to ask the King. Every day the king would spend long hours with the minister of Composition, who would know all the houses in the country, had an exact knowledge of the Royal Paint Budget, and could call in the painters.
Although almost everyone lived in the capital called Localhost the King would sometimes travel around the country and kindly hear peoples paint requests. Every night the King would return to his palace, talk to the minister of Composition, and then decide whether you could have your house painted, and when.
Then on a dark winter's night, a group of grumpy people thought how much more efficient it would be if everyone would talk to the minister of Composition directly. Thus the Wayland Conspiracy was born. The next day, at daybreak, they deposed the good King and made the minister of Composition the head of state: president Compositor. To cater for the few people in remote villages they re-appointed the King as secratary to the president: the Secretary for Remote Villages. He would still travel around the country (albeit in a suit, and without his crown). He would still talk to president Compositor every night, like in the old days.
The press in other counties, like Windonia and Applestan, were very positive: finally this backward country had a modern government. Now its poor inhabitants could have the same beautiful colored houses they had. Welcome to the modern world!
The people in the country itself didn't notice a lot of difference, however. In the old days things took a little longer, but not everyone needs his house painted every day. Many still called the Secretary for Remote Villages "King", especially in the countryside.
But the people in Windonia and Applestan were very satisfied: they always had felt that their geovernment was superior, and the Wayland revolution had proved their point.
The King just smiled.
When something running under Wine runs faster with that translation than it does under windows, you cannot claim that the windowing system in X is slower and degrading performance of Linux compared to Windows.
It's taken as a matter of faith that this network transparency MUST be making it slow.
Merely because it is "obvious" that if something is flexible, it MUST be slower!
Yeah and even we don't use it any more. Well, not all of it anyway.
Yeah, I had a sig once; I got bored of it.
With respect, I believe you utterly miss the point. GP is right. While the desktop is animating uselessly, it is not doing anything useful. That is the definition of sluggish.
It has nothing whatever to do with "slow equipment". It has to do with waiting, however briefly, for bullshit eye candy with no purpose whatsoever. There is a class of users who perceive the time delay from clicking "open", until the window is fully opened and responsive, and who find anything that increases this delay a step backward.
We do realize that with the absurd oversupply of CPU and GPU power in recent desktops and laptops, this delay is completely a deliberate visual artifact, and that it does not mean the available power is being taxed. But while the time of the GMA 950 and processors of 1/10 or less the power found now is past, the principle is still valid. It should not require a vast profusion of transistors using 10 times as much power as should be necessary, just to draw a desktop.
As long as every last vestige of these "desktop effects" can be turned off in a straightforward manner, I have no objection to the Mars Bars being there for such people as want to subsist on them.
I believe he's still part of X.org anyway, but he's working exclusively on Wayland.
For everyone that disparages Wayland without really understanding anything about Wayland, which seems to be most everyone, I highly recommend listening to this talk by a core X.org developer:
http://www.youtube.com/watch?v=RIctzAQOe44
TL;DR points:
- X11 is no longer "network transparent" and hasn't been so in a long time, due to reliance on DRI, Xrender, Xvideo, etc.
- X11 is already used in a manner that is similar to Wayland but with a very poor inter-process communication layer and synchronization issues, with most of X11's core bypassed (server-side fonts, drawing APIs, etc).
- X11 when used remotely is already like VNC, but very poor at it. Lots of round-trips, etc, all to show bitmaps.
In the end, there are a few things I need from Wayland, and I think they will be there in the end:
- app-based network transparency, not just remote desktop
- middle click paste. Maybe done with a virtual frame buffer and rdp to ship the final rendering across the wire.
- customizable focus policy (focus follows mouse, click to raise)
- user replaceable window/composite managers
I suspect we'll lose a few features that very few people use such as using a remote window manager to manage windows on a local server. For example, running Xming on Windows, and then running metacity or even twm on my remote linux machine. A full remote desktop would probably be the way to go here with wayland. And faster.
No, this is Slashdot, you can't have a serious discussion.
It's full of idiots who don't like shiny new things, idiots who adore shiny new things and both types of idiots love to shout at each other.
Ok. Seriously.
Wayland is a new architecture for the Linux graphics stack.
It merges the role of the display server and the window manager/compositor into one piece, called the Wayland compositor.
It is envisioned that writing a Wayland compositor is not more complicated than writing a X window manager/compositor.
Buttet point: We will not have A Wayland compositor, but serveral of them to choose from: Weston, Enlightenment, Mutter/Gnome Shell, KWin.
This is made possible because a) Linux now has a proper graphic driver stack and b) the Wayland protocol is much simpler.
The new model and the simplified protocol will allow
A) better control of the input (keyboard, mice). Currently, the X window manager/compositor do not have absolute control about the input. Besides posing some security risks, it makes it hard to implement some behaviors sanely. Things as simple as being able to mute the sound when you have a full screen application running are hard to do.
Wayland compositors, of course, get all the input and then they forward them to applications as they see fit.
B) better performance (except OpenGL full screen applications which already mostly bypass X). This will come from a number of place.
- Reduced number of rountrips (W app/W compositor/kernel instead of X app/X server/X compositor/X compositor/kernel).
- Better implementation (the X.org server isn't the fastest cookie in the world, but the protocol is so complex it's hard to do better)
- On embedded platforms (phones, tablets, Raspberri Pi) the compositor can be written to exploit hardware compositing capabilites (there's no good way to expose it though the X server).
Additionally, the Wayland protocol fixes several issues, some of which could be fixed with more extensions, some need breaking.
- Artifacts/tearing. X doesn't specify when the data sent by applications is drawn on the screen, so sometimes you get artifacts as the server or compositor draw the contents of a window in the middle of an application drawing. Wayland fixes this by making every frame perfect.
- Saner input model. The currently used X input extensions are too complicated (by the authors own admission), as they need to maintain backward compatibility with the X Core input model.
- Saner dynamic reconfiguration (resolution, orientation). Again, by authors admission, XRandR is too complicated.
- Binding versioning. Currently, if you have an application built upon components who support different versions of an extension (ie, input), it's a russian roulette on how it will pan out.
Bullet point: despite all the drama going on on Slashdot and other sites, the simple truth is that the majority, if not all, of the developers who actually put in time and effort to maintain and upgrade the X.org server, the X window managers we use, the application toolkits, etc seem convinced Wayland is the way forward and are putting in the time and effort needed to make it happen.
Wayland is not network transparent. And despite the drama, that's OK. Nobody cares about network transparency.
People (including me) do care about having rootless remote applications. We care to have something that works at least as well as "ssh -X".
For the short/medium term, Wayland desktops will run a X compatibility server (XWayland) and most Wayland capable applications will have a X fallback mode. So "ssh -X" will just keep working.
For a longer term solution, when we get Wayland only applications, we'll need to implement something like NX or Xpra for Wayland. Which is OK too, because for many of us, it's better than running X over the network.
Despite the capabilities of the X protocol, most X applications are in fact too bandwidth intensive and latency sensitive to run remotely outside LANs. And their developers can't be arsed to do it otherwise. That's why we use things like NX and Xpra in the first place.