Clearing Up Wayland FUD, Misconceptions
An anonymous reader writes "In clearing up common misconceptions about Wayland (e.g. it breaking compatibility with the Linux desktop and it not supporting remote desktops like X), Eric Griffith (a Linux developer) and Daniel Stone (a veteran X.Org developer) have written The Wayland Situation in which they clearly explain the facts about the shortcomings of X, the corrections made by Wayland, and the advantages to this alternative to Canonical's in-development Mir."
Who thought that "The Wayland Situation" was the title of a 70s sci-fi novel?
Better remoting than with X11? Seriously? I'm in!
Just recall to support authentication (certificates, kerberos, and/or ssh piping), and root windowless operation, and you will get every admin that works in corporate environments at least to test Wayland. If it manages to fulfill the promise on better reactivity (== better usability), Wayland will catch like wildfire.
Because it would require completely rearchitecting and breaking the protocol.
Why not fix X?
The simplest and most obvious answer: it's easier and faster to just not bother and start from scratch.
First, SDL isn't an alternative display technology, it's a library which works on top of X (and Weston). Second, I am running KDE on Weston right now and it is working pretty well. It's not ready to replace X for most users yet, but it's stable and getting close to ready for mass consumption.
Yes, I did it on my Raspberry Pi using the implementation of Weston that they discussed.
Making your ignorance plain is quite helpful to others in knowing to avoid you.
Yes, here we are, still with X. That doesn't make X good and it doesn't mean Wayland has made no progress. In fact the biggest driver of the Wayland transition is the wide availability of graphics accelerators that we didn't have back in 1997.
I won't really shed a tear when X is reduced to a library that sits on top of Wayland. I will enjoy improved performance and compositing that Wayland brings.
SurfaceFlinger. Of course, no one has actually adopted it. It's just prevalent because of Android.
Just as an interesting addendum, Quartz is a PDF-based display system descended from Display Postscript, and I'm pretty sure OS X/iOS between them have far more installations than X.
Media Coherence. Whats Media Coherence? In its simplest terms... Your browser window? That's a window. Your flash player window on youtube? The flash player itself, displaying the video, is a sub-window. What keeps them in sync? Absolutely nothing. The events are handled separately and right now you just pray that they don't get processed too far apart. Which is why when you scroll on Youtube ,or other video sites with a video playing, sometimes everything tears and chunks.
I've actually noticed that, and wondered why it did it. I figured it was a browser bug or something to do with my particular setup. Interesting that it's a much deeper problem according to TFA.
Since it is, is there some workaround? Because it's anoying as fuck.
I have never seen a good argument for this.
Read the article, then.
Well he gave an answer in the article: if you move to "fix X", you end up making X12. And when you do that, all the stakeholders in X come out of the woodwork and insist on preserving all the legacy parts of the system that, frankly, don't belong.
The way things have unfolded, X11 will become a library on top of Wayland. And that's perfectly fine.
Why, did the machines running X ever outnumber the Macs at any point in history? Also, Windows is not UNIX, and neither is Android, which isn't even a desktop OS, so why would their prosperity be a measure of the "death" of X as a windowing system for UNIX?
Which is what they amount to by inventing an entirely new system anyways.... So the difference is...?
File under 'M' for 'Manic ranting'
Each application does its own rendering? 31-bit pixel counter?
This sounds like it's all pixels, like X, rather than geometry, like NeWS or display postscript.
So if I have monitors with high resolution I still have to tell all the applications to change their size, individually, or use a microscope to read the text, right?
If I stretch a window (intending to scale it, rather than just see more of what it shows) it has to go back to the application for re-rendering, right?
And if I have adjacent monitors with different resolutions they won't match up. Heaven help me if I lay a window across the boundary between two, the T between 3, or the + between four. Right?
Or have I missed something?
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
Not supporting remoting is a misconception about Wayland? I certainly didn't see any discussion about that in the article. Would someone please point out a web page that discusses Wayland's remote capabilities?
> The way things have unfolded, X11 will become a library on top of Wayland. And that's perfectly fine.
Sounds like X running on Windows.
If you don't understand what's wrong with that, or you try to claim there is nothing wrong with that, then you really have no clue why people are resisting Wayland.
A Pirate and a Puritan look the same on a balance sheet.
> There are far more Windows boxes too.
Ironically, you Wayland fanboys are going to make sure that the remote access features that have been adopted by Windows are ripped out of Linux.
A Pirate and a Puritan look the same on a balance sheet.
Why not fix X?
The simplest and most obvious answer: it's easier and faster to just not bother and start from scratch.
In addition, X was originally written when networks and client systems were slow(er). Many of original design decisions are no longer appropriate with respect to the X server code complexity and maintenance requirements. A long (long) time ago, I wrote a program (called CXC - Concurrent X Control) to manage the low-level X protocol (think everything in the X11 Volume 0 book) and support transparent X traffic interception, blocking, redirection and insertion for a CBT application (called CAST) and, if I remember correctly, I remember wanting to off myself (or at least start drinking heavily) after trying to make sense of it all. Just my $.02.
It must have been something you assimilated. . . .
Fix the protocol (e.g. by using UDP and unidirectional traffic where possible, deprecating a bunch of obsolete crap) and you break it. It's no longer X any more. At that point why bother fixing X?
Why not fix X?
The article answers that question on the very first page. (Scroll down to the bottom.)
No, it's rootless X running on Wayland which in turn is running on Linux. X is not going to behave appreciably different than if you were running it directly.
That's 20 years since linux was created. 20 years and the only widely adoptd alternative to X is on Android, and i dont even know what its' called.
Hold on there, cowboy – you can't just hand-wave away Android, since Android deployments outnumber desktop X11 deployments by several orders of magnitude! Android is succeeding at end-user adoption where X11 has failed miserably for your "20 years", so you should be looking at Android for guidance, not dismissing it as a blip.
By the way, when Linux is used in an embedded system like a media player, they usually use DirectFB or something similar (if they're not using Android) – not X11. The truth is that X11 is utterly, completely unsuitable for anything a non-technical end user ever sees.
The only lesson to be learned here is that if you've got Google driving you, you're probably going to succeed. Suggesting that there is anything to be learned here about X11 vs. SurfaceFlinger is ridiculous.
Which is entirely untrue. By that logic my N9 is completely unsuitable for use by anyone "non-technical" because it uses Xorg, but most people would be completely unable to tell.
I've seen what happens when you run X11 apps on windows. All the fancy widget themes and whatnot break. If that's not it, then I invite you to enlighten me.
I love the blind implication that the exact same whatever will happen with Wayland and, therefore, we should oppose Wayland.
The only argument I've seen is the lack of network transparency, often poorly worded with no actual technical argument behind it.
its just utter vapor ware.
http://www.youtube.com/watch?v=mQ97cK4Jp8I
With the release of hardware drivers for the Raspberry Pi I decided to investigate Wayland a bit further.
One thing that has confused me about Wayland is "where are all the alternate GUIs?", X window managers number in the hundreds with every man and his dog writing one.. The extremely basic GUI seen in Weston has barely changed in years.
It seems that Wayland has thrown away X's 'mechanism, not policy' mantra, and the architecture combines device drivers, the display server and the window manager into one blob (the reference one being Weston). This means that every alternate GUI needs to know how to talk to hardware, instead of just how to lay out windows and control them, it's rather laughable. At least turn the hardware support and abstracted device driving into some sort of library,. Also there's practically no documentation on Weston to use as a basis for another GUI, and the code is barely commented.
Wayland may be good, but it needs many more years of work at the current rate and still has some big issues;
1) The terrible architecture that I mention above that makes it difficult for people to build GUIs.
2) Driver support needed for running, that doesn't seem to be forthcoming from some of the biggest names in graphics cards.
3) The fact that we'll need to run X clients in Wayland for years, if not indefinately. Negating most of the arguments of "but we can throw away the crusty bits of X, hurrah".
I'm not going to discuss the X remote support issue, I think that one has been done to death :)
I see we're whipping out the baseless attacks now!
And, maybe if you had either
A) RTFA or
B) watched http://www.youtube.com/watch?v=RIctzAQOe44&autoplay=1
You could have added something Intelligent to this conversation.
As they say in TFA: Calling it X12 or X20 or whatever will call in all the persons who care about X trying to meddle. Calling it Wayland will leave the others mainly uninterested, so the developer team can work on stuff.
I went digging after reading this article, here's the only thing I've found:
Mir in Kubuntu
Halfway down, he compares the two - it doesn't look like there's much concrete info about Mir though.
Summary: Philosophical differences in development style, server-allocated buffers vs. client-allocated buffers.
I've never delved too deeply into X, but none of the issues pointed out in the article really seemed all that compelling.
They seemed like the kind of quirks you end up in any large system. I assume wayland will trade them for a completely different set of quirks.
As the only other human I've seen mention Wayland on the Raspberry Pi, I'm forced to funnel my questions to you. I apologize. I tried to install it months ago using the huge pile of instructions at freedesktop.org. It didn't work. When they put the actual install package up, I ran that, and it sort-of worked. I have to run export somethingorother_path=/tmp/ && weston to run it every time. That's all fine.
I don't NEED it, but I'm excited to try it. And now here I am without a file manager, or really anything at all that runs under Weston. They all complain about needing an X display. Do I really have to install X11-under-Weston using their other huge page of instructions to do anything interesting? Because if I do, I'm guessing it won't work... Is there a repo, or are they any package around that I can install just to have some fun, and take it for a legitimate non-X11 spin?
I barely got Apache installed properly. I wish the Raspberry Pi Foundation would just release a Weston Testng Fun Times Image I could flash.
So if Wayland only works on a fast network, it will not win me. Heck, many X11 applications are far too slow over DSL (I guess those are the applications which do not use the X core, but all those "better" alternatives). I prefer a less pretty window I can interact with to a pretty one which I is too slow to use.
The Tao of math: The numbers you can count are not the real numbers.
Also, I feel the need to watch Burn Notice every time I start Weston up.
I think you fall under the "Go ahead and implement X12 by yourself" category.
Tomorrow is another day...
Given that the "huge pile of instructions" are build instructions, unless you're familiar with building from source it's probably best avoided.
Probably LD_LOAD_PATH, because their setup is installing to the user's home directory and not the system, to keep things clean. It's entirely testing centric at this point.
If everything "interesting" you're doing currently uses X11 libraries, yes.
No offense, but if this is true then I doubt you really need to worry about (or comment on the difficulty of setting up) Weston just yet.
Which is wholly off topic for them.
Wayland is being made because the guy who writes it want too, not because there is anything inherently wrong with X.
Most Wayland developers are X developers, they did it exactly because X is a pile of bull crap...
Tomorrow is another day...
There isn't anything about Mir. I think Phoronix made a booboo in their summary. It was only intended to explain some things about Wayland, Mir is out of scope.
Yes, because if it's not X12 then you can actually break it. If it's X12 then you'll be forced to keep some broken stuff. Maybe you'll be allowed to say that something is deprecated until X13 though, but that means it could be another 26 years until it's removed.
It was invented here. A large share of the Wayland developers are ex-X11-developers. They know X11 from the inside.
X was also designed when your workstations were very expensive, so having things like an X Server dumb terminal was a good idea. Keep all the jobs running on your departmental super mini computer, and hand out xterms to the staff. Save money and you get a larger display than you would otherwise (meanwhile PCs are still running DOS).
What's interesting is that in the intervening decades that all the power moved over to the client on the desktop, and now it's starting to be moved back to the backoffice again using thin clients.
The only argument I've seen is the lack of network transparency, often poorly worded with no actual technical argument behind it.
Sounds like you aren't interested in hearing the arguments, but I'll try. Practically all X11 apps can run remotely - the ones that can't are likely to be inherently limited, like video players or 3d first person shooters that have bandwidth and latency requirements that are transport constrained. Outside of those types and pathological configurations, remote X11 just works for all apps.
V) "Wayland can't do remoting." Wrong. Wayland should be BETTER than X at remoting, partially do its asynchronous-by-design nature. Wayland remoting will probably look a like a higher-performance version of VNC, a prototype already exists. And this is without us even giving it serious thought about how to make it better. We could probably do better if we tried.
"We haven't given it serious thought" is a particularly bad approach to convince people to quit bitching. Show us a well thought out plan to support per window/application remoting, not vnc-style desktop remoting and that will shut up practically everyone. Act like you really don't give a shit and nobody will have any confidence that it ever will "better than X."
When information is power, privacy is freedom.
My Mac has X on it. It came with OSX as an optional install until recent releases and it's still a free download.
Mac doesn't necessarily mean no X. In fact, some programs REQUIRE IT like some high end math stat programs.
MidnightBSD: The BSD for Everyone
congrats you missed the point
if you arent running without X, then you arent running without X.
you missed the whole point of my rant
which is why i said 'on my desktop PC'. which has a user base of, oh, several ten-million
not some niche little fad product with 512mb of RAM that has a month waiting list so hipsterss can pretend they are saving money
I've seen demos of Wayland that had per window remoting, including moving and cloning per window across different diplays. Wouldn't it be nice if xmove still actually worked for most applications? If you could just move your application across Xservers as you wished and didn't have to worry about temporary network outages killing you application? Well apparently Wayland can do that. So it seems to me that Wayland has potentially more to offer in terms of network transparency than X. It isn't done yet, so let's wait and see. Everything I've seen looks very promising.
Craft Beer Programming T-shirts
if a program cannot build easily on a standard linux machine, its not going to be adopted by hundred of millions of people and its not going to topple an installed standard with a huge userbase
the 'user is wong' attitude is what doomed every display system before and will doom wayland just the same.
get the thing to compile out of the box or dont ship it. a simple philosophy. we have cmake, autoconf, scons, choose your poison
...does Wayland run *on* an X server?
I could play with Wayland API and help it to take off but not if I have to wait 5+ years for Wayland to get X11 features and drivers.
i mean, we might as well discuss windows and directx
show me how to write OpenGL hello world programs for DirectFB on my desktop PC
It isn't done yet, so let's wait and see. Everything I've seen looks very promising.
I don't know what you saw, but what I just read at the cited article is that the people designing wayland have barely given it a second thought. That attitude does not deserve the benefit of the doubt.
When information is power, privacy is freedom.
I'm not worried about it, or complaining about the difficulty of installing it, as I'm aware that I'm currently not the target audience (although the Apache comment was hyperbole). Just wondering if I had missed anything, or if the current situation really was "build xwayland or gtfo." It sounds like the answer is, "build xwayland or gtfo."
Actually learning that Wayland is being developed by former X developers removed most of my ancieties about it. Now I just want to know when it's going to be production ready and if it is going to support my craphics card.
But... the future refused to change.
you will scare the nutjobs who like to draw castles in their cheerios and tell you to go live there.
No, I'm just tired of bad arguments.
That's nice. But it's a very limited subset of how computers are used, and there's nothing in Wayland that makes it impossible to do this.
Maybe because they know you won't even when they make an entirely point and put it in front of you? Read what he said:
When he said "without us giving it a serious thought about how to make it better" he said that, out of the gate, it was better than X11 remoting and better than VNC remoting without them even seriously trying and that if they had, it would be even better.
It's not "we don't care," it's that "we've got it handled better than X, easily."
Augh, bad engrish today.
should read
i have ever read.
I use the networking capability of X (process on IP address X using display on address Y, same or different IP, different user) every day, all the time.
For example, I always run a X server on Windows boxes, because I can then run some Linux process on the Windows display "root" window. Productivity is higher because I don't have to switch "containers", in order to switch applications, and copy/paste is trivial.
Similarly, I can have a process in a different, more locked-down, user running on the root window of "my" desktop, toggling between applications without having "switch user", open a different VM, ...
I'll keep using X11 as long as I can.
Maybe because they know you won't even when they make an entirely point and put it in front of you? Read what he said:
I read that everything he said was qualified with the word PROBABLY. What did you read?
When information is power, privacy is freedom.
The only "asshole" here is you. Just look at your mad ranting.
Ah, yes because he said "we could probably do better" it's instantly terrible and doomed.
I read it as someone who was confident of their solution but unsure of the final form, believed that their prototype implementation was already better than X11/VNC, and acknowledged that there was room for improvement but wasn't sure how much. You read it as "we don't care" and I'll wager that if anyone here is off base, it's you.
Here you go!
W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
Wayland doesn't even support remote rendering anyways, so you can't render on a different system than the one running the application.
File under 'M' for 'Manic ranting'
Ah, yes because he said "we could probably do better" it's instantly terrible and doomed.
Hyperbole considered bad.
I read it as someone who was confident of their solution but unsure of the final form
"Probably" was not the only qualifier in the paragraph, pretty much everything he wrote was explicitly qualified. However you are welcome to support your beliefs with a citation to some documentation for even alpha level protocols for remoting wayland apps.
What I've seen is stuff like this GSoC participant who discovered that its not as simple as he thought. No one's touched his work since. Seems like the only work to come since then has been RDP based DESKTOP forwarding, not application remoting.
When information is power, privacy is freedom.
Ah, yes because he said "we could probably do better" it's instantly terrible and doomed.
That is not what he wrote at all. It is right there for all of us to read. And this from the person who complained about being tired of bad arguments? Did you really mean being tired of resorting to bad arguments?
"Wayland remoting will probably look a like a higher-performance version of VNC,"
I'm mocking him. He sees a tiny bit of uncertainty in the guys comments and reads it as if the guy is completely blowing off remote access when it's obvious that he's not.
What, I can't be sarcastic?
Looks like he hasn't touched his other projects either.
And RDP supports rootless forwarding just like X11. But that's just one possible way of forwarding them. It's not like its impossibe.
Nothing is stopping you from continuing to stick to Xorg, of course. Wayland won't fully displace X11 for a while.
Looks like he hasn't touched his other projects either.
(A) He tried it and wasn't as simple as all the big talk
(B) no one else has picked it up.
And RDP supports rootless forwarding just like X11.
Bit-blasting just trades the latency problems with X11 forwarding for bandwidth problems.
But that's just one possible way of forwarding them. It's not like its impossibe.
"Not impossible" is a far cry from being designed, much less implemented.
That's a tacit admission on your part that work is not being done on the issue.
When information is power, privacy is freedom.
I don't understand why you are making a big deal out of building wayland. X11 is very difficult to build (took hours the last time I did it). Who cares? When it's ready, you will be able to install it with aptitude install wayland. Building from source is always more complicated than installing from a binary package. This has nothing to do with support. why the attitude?
They have barely given it second thought because they've established that it can be done in principle, and it isn't the stuff they're working on (which is getting the actual display working cleanly and efficiently). They can worry about it when they've gotten the fundamentals pinned down. Do you really want excellent networking for a display system that doesn't display well, or is horribly slow? First things first and all that. As long as nothing they do makes it infeasible, or overly complicated there's no point in worrying about it till the very core functionality is working as they wish.
Craft Beer Programming T-shirts
Yep. That's whatever they're talking about for them.
Anybody know if Wayland is doing something sane about input isolation? It's really bothersome that X allows every other X app to steal my keystrokes. Want my root-privileged sudo password? Just get me to run some malicious X app. Is there a malicious keystroke logger in Google Earth? Who knows.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
I haven't delved deeply either, but I've had cause and occasion to casually study the code. Compared to some things I've seen, it certainly screams Legacy Cruft in a few places, but by no means does it reek of unmaintainability.
My main concern about this is that the desktop seems to be accelerated all the time. This is fine and dandy when you do general work, web browing and such, but if you play or develop games, it makes a slight difference. For example a quick blinking effect might get obscured somehow by the compositor slowing things down. This is more of a concern when developing, sure, but it's something I can do *now*.
Either unaccelerated window managers or KDE which allows dynamic turning off the desktop acceleration are good solutions, but what happens when everything gets composited no matter what, as it seems to happen with Wayland? I don't think not compositing full-screen apps is a good solution either, as you might play or test in a window for convenience...
and then felt the need to lecture me about how i was wrong.
i want to run non-X hello world wayland on my PC.
that doesnt mean raspberry pi. it means my PC.
PC. the thing sitting on my desk.
i wrote a brilliant rant about how this shit doesnt work. you failed to appreciate it and chose to lecture me about some bizarre toy product that has nothing to do with my points.
this shit doesnt work, people keep saying it will replace everything.
they call anyone who challenges them purveyors of "fear uncertainty and doubt.
FEAR - im afraid it doesnt fucking work
uncertainty - im uncertain if i should spend 40 hours porting my shit to this 'next big thing, or ubuntu's MIR, or ubuntu phone's ShitFlinger or whatever teh fuck its called.
Doubt - I Doubt anyone will ever write a game for linux if this is the fucking situation with the graphics layer - 4 to 5 different subsyetems with incompatable versions and all of this hoopla and bullshit and douchebaggery.
its fucking irressponsible, its shit, its like taking a giant snowjob and blowing it all over the open source community.
Many of X's recent "everything as pixels" shortcomings and network bottlenecks came to be because the exact same developers who are pushing to abondon X11 tried to make it into iPhone graphics. That didn't work very well and so they decided to abandon it in favor of the Wayland rewrite. Which is ok, fine, they can work on whatever they like. But when the same exact developers justify thier work with the statement that X is broken, and they're the bloody ones that broke it and abandoned it what way in the first place, it just pisses me off.
Translation: X11 works fine if you're willing to party like it's 1985, with bitmap fonts and non-anti-aliased Bresenham lines.
That might work if you're administering a server, but for a desktop environment in the modern world, it's a sick joke.
No, they don't know any better or are any smarter than the decades of programmers that came before them culminating in the cumulative end product known as X. They want their pet desktop-as-a-iPhone use case to work perfectly at the expense of all that other stuff they don't personally use. Classic case of young developers only thinking of their own needs and lacking the imagination or experience to see past themselves.
First of all, the people working on Wayland are in many cases the same people working on X11. It's not that they are necessarily smarter now, but they are more experienced. X11 was written in a different time, for different systems, to solve a different set of problems than what we have now.
And regarding your accusations, I'd suggest looking in the mirror – your willingness to tolerate 1980s-level graphics is a lot more of a "pet" use case than what Wayland is attempting to provide.
Huh? Because I think that X is not dead yet? You're reading too much in my comment.
xmove was around for forever, while xpra is the latest gen implementation. Why would you claim that they don't exist?
I have found there are just two ways to go.
It all comes down to livin' fast or dyin' slow. -REK, Jr.
If it behaves anything like a "high-performance" VNC, I'm not interested.
VNC is not a network-transparent display. It is a glorified remote framebuffer.
I thought we gave up on dumb framebuffers a long, long time ago, with the first accelerated X server (or Windows 2 or 3 or whatever it was).
One can still configure an X server today to work as a dumb framebuffer, or Windows for that matter Nobody does that. It is lousy and slow. Nobody wants this shit if they have a choice in the matter.
If its networked display options were described as a "high-peformance RDP," I'd be interested in learning more. But it is not.
(For those still living in Mom's basement, both RDP and X are tremendously more useable over a LAN than VNC will ever be capable of.)
Kid-proof tablet..
A major problem is not whether Wayland supports old X applications but instead that new Wayland applications are not going to be network transparent like X ones. That limits them to one to one network connection via third party hacks like VNC instead of the many to one and one to many options that X gives you.
It's a backwards step to the non-networked, single user, single platform mindset. That's not even what people are looking for in gaming consoles any more.
The ramifications are that new wayland only apps are only going to be useful if you are sitting right in front of the computer you want to use - an insane restriction now that phones and tablets with wifi are at the point where they can be effective terminals to a desktop computer doing the heavy lifting (video, graphics, voice recognition whatever).
The single platform restriction also sucks - linux only due to a deliberate design choice.
Sorry kids, a dumb framebuffer is not a new idea and a trip back to the 1970s has got to be justified with new features and good benchmarks before it can be proclaimed as better. For now there's only stupid block diagrams that pretend any internal complexity and internal communication is faster than something with more blocks in a diagram even if they are a lot simpler - it's just smoke and mirrors without benchmarks.
Even calling it Metro for linux at this point would be giving it too much credit - save the hype for when it delivers on a performance promise and has more features than SVGAlib from 1995.
Details please. We get enough unfounded sound bites from bent politicians and I'm sure you are a better person that that.
No, there's just that one guy that started Wayland after doing a bit on an X module. Keith Packard saying "good luck" to him is not "working on Wayland". Raster adding Wayland support to a widget set in e17 isn't really working on Wayland either.
And I see it five days a week with about a dozen people doing it with no problem since they are not using XFree86 from the year 2000 on MS Windows but something a bit more recent that supports shaped windows.
In the article the "what's wrong with X" has a "Theoretical Example" so doesn't actually find something wrong.
Let's have some honesty, some real examples, some real benchmarks instead of advertising type "spin" and empty promises about what might happen later.
Let's have a real article about what Wayland is really doing now instead of another stupid and pointless "X sux" bit of shit.
There isn't even a screenshot.
The article may as well be about something that doesn't exist.
And this would be a possible roadmap for X12:
X12 Development
Reading that list also makes a big argument against X11, and it seems to me that Wayland will be the place where lots of things will be better.
Well, don't worry about that. We can get you back before you leave. (Dr. Who)
Give me a dumb framebuffer _with_ network transparency and I'll happily shut up. If they finalise the design and only tack on networking afterwards, it'll be probably less efficient than it could have been.
I for one want them to prioritise it during the earlies phases. They are telling me (indirectly) that they probably won't do it at all and leave it to someone else. That's fine, but also means Wayland is designed to not be used by me and people like me. And when distros start pushing it as default, there will be a big ruckus... I'd rather them to be sensible and support network transparency at least as well as X11 does, and that it "just works" the first time I have a Wayland server in front of me, for all applications that don't have Wayland releases (and obviously the new ones too).
That depends on what kind of slowness they mean - bandwidth, or latency? I don't think X dealt well at all with medium-to-high latencies, so that's perhaps what you're seeing.
run VNC. Some of us want a fast responsive GUI that doesn't rely on 30 year old protocols.
Run VNC? Do you even understand how people use X? I guess not. I ssh into another box & run some program and up it pops on my local screen. Quick, easy, simple, works. Now, setting up VNC works in some cases, but now we are talking about something completely different and completely different use cases. You have some server somewhere, you want to run a GUI config program or whatever real quick, you just type the command and it works. You do not want to spend 15 minutes installing all sorts of VNC crap, configuring it remotely and locally and so on when you're already done in 30 seconds with todays X. I think you simply don't manage or use remote boxes.. atleast you've made it clear that you simply don't get it.
9/11: Never forget it was a false-flag operation
If the protocol was fine we wouldn't see a number of products trying to do an end run around it - NX / FreeNX, RDP, VNC. Nomachine's site in particular has plenty of info explaining precisely why X is so crap and why NX shims the transport with its own protocol to eliminate roundtrips and redundancy.
Which is a definitive show stopper for me. I'll stick with X.org then. I want to run this remote "system-config-lvm" on my local desktop.
Mark-t hasn't been keeping up to date
xpra is nice, although it'd be even nice to see an existing window manager / compositor provide support for remoting windows using the xpra protocol - I'm not aware of a reason this couldn't work, since the xpra server just works by being a compositor anyhow... This would give me the ability to grab arbitrary windows from my desktop and display them on other machines, whilst having them run at full speed locally - that would be a big improvement on remote X11, for my uses.
Also, I'd like to see Wayland support the same. In some ways, although I'm not worried about remoting being available on Wayland, I do wish there was a central place for common Wayland remoting implementations to live. AFAIK that doesn't exactly exist at the moment, other than de-facto in their demo code - and given various desktops are going to be implementing their own compositors, I don't know that they'll inherit these implementations conveniently... Hopefully I'm just lacking reassuring information and it'll all be OK.
I have X too, but we're in a tiny minority of Mac users. Apple no longer even gives resources to develop their own X11.app and tells everyone to use the third party XQuartz instead.
I know everyone here loves ragging on Mir, but it wasn't even brought up in the article, so why was it even mentioned in the summary?
// file: mice.h
#include "frickin_lasers.h"
I'm only considering percentage of all desktop systems in use. the domination of finance, science and engineering desktop by unix workstations with X11 which peaked in the 90s has declined while home pc use has skyrocked.
Seems like a bit of FUD on both sides of the argument...
A while back, I spent a few minutes skimming the Wayland FAQ and Wayland Architecture Diagram. Interesting stuff, especially the architecture page, and they provide actual detail while the TFA mostly doesn't.
For comparison of the two architectures, when running X, you might have an ordinary window manager or you might have a compositing window manager. The Wayland model is that Wayland *is* a compositor that provides both window manager functions and some of the functionality of an X server.
From what I can see, here's the architectual differences between X and Wayland when it comes to supporting remote app display:
Intentionally misstating by being over simplistic, it sounds like the reason Wayland doesn't support remote displays is because it also doesn't support local displays! More accurately, Wayland supports local displays (of course), but unlike X11 provides no way to render to them. Wayland doesn't do rendering; it apparently "just" knows how to swap video buffers to a display device and coordinate buffers between multiple clients.
I'm thinking that, for example, if you want to write a graphical app, you might target OpenGL or cario and then expect your code to work in both Unix (with X) and on Windows (without X). With Unix/X, I'd expect an OpenGL library that handed X primitives to the X server. With Wayland, you'd apparently have an OpenGL library that rendered to a buffer and then handed the buffer off to the Wayland compositor.
So, Wayland isn't doing some of the things than an X server would do. Wayland is never working with drawing primitives. It seems obvious that you'd never be able to run apps that use the old X toolkit libraries against Wayland without an X server in the picture. And, both the TFA and the FAQ report this and note that you'll need X server(s) in addition to Wayland for the foreseeable future. The X server(s) talk to Wayland instead of to hardware.
There's going to be support for running Wayland apps remotely. However, as others have noted, an obvious question is how efficiently a "native" Wayland app could be displayed remotely. If the app and its libraries are rendering graphics primitives into display buffers, it seems obvious that low level primitive operations are lost by the time Wayland gets the buffers, so you have to be able to efficiently transmit bitmap deltas. Queue arguments re whether drawing primitives are more efficient or bitmaps are more efficient...
The discussion of doing remote Wayland apps seems to revolve around how to transmit the per-app buffers across the network instead of handing the buffer to the local Wayland compositor / display driver. Or perhaps about having the compositor know that certain app buffers should be transmitted instead of composited to the local display, but that's almost the same thing when viewed as a flow.
Transmitting bitmap deltas works pretty well, but for some apps, sending higher level information such as the original OpenGL might be better. With X, they defined an extension, GLX for essentially passing the OpenGL to a remote server. Similarly, I imagine it would be useful if an OpenGL app could talk to a remote Wayland server instead of sending bitmap deltas. So, it looks to me like it would be useful to define an extension mechanism for transport that would allow OpenGL commands to be sent to a remote computer where they could be rendered to a remote buffer and handed off to the remote Wayland compositor. Bonus points if the extension mechanism is generic. Seems like transport of audio might be another fit for a modern replacement of X.
Not an X server developer nor a Wayland developer. I may have garbled things somewhat, but perhaps someone could clarify the mistakes and help take a portion of the FUD out of the
There was a time when displays did everything by passing around rendering primitives -- lines, rectangles, black and white bitmap pattern tiles. At that time it made a lot of sense to integrate network at the low level because you had to figure out how to send and decode all those drawing primitives over the wire.
Display technology moved on. Displays became rich and complex and colourful, and different applications had very different needs and took on more and more of the rendering task themselves and simply pushed bitmap buffers to the display system. Now the task of the display system was to mediate and manage and request complex bitmap buffers from the various clients.
At this point remote display was a matter of having the client send (potentially compressed) bitmap buffers -- let the clients do their own rendering. This is how most remote display systems written in the last 15 years do it. Indeed, that is how X does it these days for most applications: the applications do their own rendering via GTK or QT and Cairo and X pushes the pixmaps down the wire.
If all you are doing is throwing around bitmap buffers, and the display software is simply mediating and displaying those, then remote display doesn't need a whole lot of thought at the display level -- all it has to do is mediate and display the bitmaps it gets from clients. Now, providing a remoting system to let remote clients get their bitmap buffers to the display when requested ... well that's still a thing that needs to be done, but it the base display software doesn't have to care too much about how that gets done.
Think of it as teasing out the layers in the software. The base layer is pushing pixels to the screen (no matter where the data for those pixels came from, remote or local). That's one job: pixels on screen. Focus on that and do it well. Another job is getting the data that the base layer is going to display to it, and you can worry about remote/local differences in that layer.
Craft Beer Programming T-shirts
SurfaceFlinger. Of course, no one has actually adopted it. It's just prevalent because of Android.
And they keep making backwards incompatible changes to SurfaceFlinger. If you're planning on using SurfaceFlinger, I suggest waiting until it's a more mature technology.
"First they came for the slanderers and i said nothing."
"We're aware networking is important for you and rather than focusing on this single issue, we have implemented a poc with no effort. We are confident to make the experience way better than want X11 or VNC can offer you at the moment."
Feel free to help if you feel they dont code fast enough.
Tomorrow is another day...
ts; dr...
I know this is Slashdot and reading TFA drops your street cred to zero, but if you're going to comment on the article then you should have some idea of what it says.
Summary: X11 is not network transparent anymore. It was in its original conception, but in practice that stopped being true a long time ago.
There is no need for a well thought-out plan. It's agile.
I'm a minority race. Save your vitriol for white people.
So running an app over the internet is a pathological configuration?
X11 is utterly garbage at remoting because it was never designed for it, it was designed for LAN use with near-zero latency. That's why the calls are syncronous.
Sure, it's possible to forward an X11 connection across 100+ ms of latency, but I wouldn't call the resulting clusterfuck 'usable'. There's a reason that the nX library is used to make it reasonable - and there's no reason that you can't do the same with a different library that's not inherently constrained by a 26 year old design with no concept of high-bandwidth/high-latency connections.
Per-window RDP is utterly trivial to implement and works better on modern connections than X11 ever has.
You're frankly too stupid to even cater to. Wayland (nor Xorg) get to dictate how the apps you want to use are written. Since basically everything now is doing the rendering themselves and pushing bitmaps, X11 is terrible at remoting. If you have control over your app then make it remote properly yourself.
Otherwise shut up and stop trying to tell the rest of us that running a text editor from 1992 is the be-all-end-all of remote graphical work.
Luckily GUI config programs are going away. Most things can be configured either on the command line or through HTTP.
Keeping remote X around just for the sake of Oracle seems a bit excessive. Someone else suggested system-config-lvm as a reason -- if Red Hat Linux has evolved to the point where we need GUI utilities just to do disk management, it is probably time to switch to something better.
Finally! A year of moderation! Ready for 2019?
It's my understanding that such projects are not part of the Wayland project itself.
File under 'M' for 'Manic ranting'
That's nice. But it's a very limited subset of how computers are used, and there's nothing in Wayland that makes it impossible to do this.
Those of us who use X that way are not inmterested in 'not impossible', there's lot of things that aren't actually impossible out there.
We are interested in the capability being a core design goal. If it is, then fine. If not, we will not be hopping on your bandwagon. It's really that simple.
'Not impossible' is far cry from having it handled. An end to war, poverty, and opollution is also 'not impossible'.
It's an example of where the article evades the issue and in nearly every case it still is network transparent anyway. If fact I can't think of an example where it isn't (even 3D games run remotely over X if you have decent graphics hardware at the display end).
Personally I see it as setting up an excuse for Wayland being tied deeply to the hardware, giving up on flexibility and pushing a lot of hard work back at the people writing the applications. IMHO it's a step backwards since the application writer has to consider implications of things like multi-monitor setups with different resolutions instead of Wayland taking care of it for them.
Then how about having decent hardware video acceleration on the end where you want to display it or VirtualGL if the good hardware is at the other end of a network pipe to where you want to see it?
Both work.
The first I was doing in around 1999 and the second a couple of years ago.
This ignorant "X sux" bullshit as part of hype for a project that should instead stand on it's own merits is annoying.
Backward compat would be nice, proven claims of performance would be nice, but nicer still would be that whatever it replaces that lots of bugs that have been opened on it and are closed. Only then will I be convinced that it MIGHT be worth it to switch from X11, and there had better have been backward compat all along so that all my legacy apps run in the meantime, Anything less is empire building, and judging on how well Ubuntu is maintained, that is a hard sell to me.
Web browser with javascript versus X, or VNC, or RDP, or just about anything? Are you still in school or are you attempting to play some sort of joke I just cannot see here? I was running interactive 3D applications over X with no apparent lag from a server in the next building using a desktop machine with a 4 megabyte video card in 1999 that was performing better than you'd expect with https+xhtml+javascript on a fast desktop machine now.
Which creates too much hard work for the application writer IMHO. See other posts for bits about dual monitor setups with different orientations or resolution, positioning of popup menus and other issues due to it being tied down hard to the hardware.
Unless you're using applications that don't use GTK, Qt, Cairo, etc. you're already doing remote a framebuffer over X.
I had a sig once. It was lost in the great storm of '09.
Seriously?
Well, then, allow me to retort that I don't like X much these days, either.
FFS.
Kid-proof tablet..