Wayland 1.0 Released, Not Yet Ready To Replace X11 455
An anonymous reader writes "After being talked about for four years, Wayland 1.0 was released today. The Wayland 1.0 release doesn't mark it yet as being ready for Linux desktop usage but just being API/protocol stable for future expansion. Wayland will now maintain backwards compatibility going forward, but how much longer will it take to replace X11 on the Linux desktop? Quite a while seems likely."
Hopefully another 25 years or more (Score:0, Insightful)
X11 doesn't need replacing, and few need a replacement for X11 for any reason that doesn't boil down to not understanding X11.
Re:Hopefully another 25 years or more (Score:4, Insightful)
I guess all of the X11 developers that are the ones developing Wayland don't understand X11 that well. You should send them a link to the classes you're teaching.
Version numbering (Score:3, Insightful)
Re:Hopefully another 25 years or more (Score:3, Insightful)
Actually it sort of does. Theres so much legacy garbage in the current X protocol that just wastes resources and makes it nearly impossible to maintain.
As I don't actively maintain X I have no stake in this, but if it helps to motivate new generations of developers to dive into thats great.
I can also note that I think the model Wayland is employing seems more sane, given what we've learned over the years of model and X driver development (DRI anyone?).
Re:Hopefully another 25 years or more (Score:2, Insightful)
Not you again. Wayland is being built by X developers, and several other prominent X developers have said it is a good thing.
Would you say that you understand X11 A) better, or B) worse, than the people who actually write code for Xorg?
Re:Why are graphics awesome on Android? (Score:1, Insightful)
How does someone run Linux AND comment on slashdot and understands so little about the stack they use and frankly technology as a whole. You make me laugh.
Re:Hopefully another 25 years or more (Score:5, Insightful)
Unfortunately, developers are the second worst group for understanding what users need. The only part of X11 that people need is network transparent remote display, but that's the one part that the developers are absolutely hell bent on removing.
Re:Why are graphics awesome on Android? (Score:2, Insightful)
I'm confused. When Vista came out with their Aero effects, it was a massive CPU and memory hog in addition to requiring GPU power. Compiz on the other hand ran on very basic hardware and did far more.
In Linux I have more control over font rendering and sub-pixel hinting.
In what way has Linux desktop graphics lagged at all? Mac OS X and Linux have led the way while Windows has followed poorly. And in case you haven't been paying attention, Windows 8 is coming out. It is 2012, and they still haven't figured out how to scale down to small displays, and scale up to very high resolution displays.
http://techreport.com/review/23631/how-windows-8-scaling-fails-on-high-ppi-displays [techreport.com]
Re:Hopefully another 25 years or more (Score:2, Insightful)
I can also note that I think the model Wayland is employing seems more sane, given what we've learned over the years of model and X driver development
Well I can note that I think client-side decorations is so much bollocks.
Wayland seems to abdicate responsibility on a lot of stuff that really needs to work across the desktop consistently, and that X was solving commendably.
Re:Application and Screen on Different Machines (Score:4, Insightful)
Nobody ever uses network transparency. Well, okay, perhaps a few thousand people do, but rounded to the nearest 1% of the total number of Windows or Mac users, _zero_ people use it. Network transparency should be a layer on top of the window system for those who need it, not something that's present and causing breakage by default.
Re:what about xorg? (Score:5, Insightful)
x.org split off from XFree86 over licensing arguments, if I recall properly.
That was the breaking point but there was very much tension between XFree86's Core Team and the other developers over the development model. Both the developers and distros rapidly abandoned XFree86 so their first release under the new license was essentially already dead and buried. It was something of an eye opener to see how quickly you could go from being president for XFree86, used in pretty much every form of *nix systems to having an empty title while all the people and all the work continued over at x.org. It really goes to show that open source projects are at the mercy of the grassroots, if you act like a dick or an idiot your project will be forked and dead like if someone pulled the rug out from under you.
Re:How long? (Score:5, Insightful)
Emphasis is mine. Other than network transparency, what advantages did X11 have that Wayland doesn't? What other advantages did X11 have period?
Losing network transparency will effect some people, but there are some solutions to that. I'd wager the majority of linux GUIs deployed in the world don't use that feature (between embedded stuff like TiVos, normal desktops, TVs running Linux, etc). But I can tell you from more than 10 years of following Linux development that no one seems to actually like X11. From what I've read the various GUI developers seem to love Wayland compared X and can't wait for it to take over. X seems to be a giant ball of mud that's always getting in peoples way, hampering performance, and a pain in the ass to configure. The fact that it handles hardware setup, drawing, input, network transparency, fonts, 3D, and so much more it's clearly not following the unix philosophy of small tools doing one job.
Every time Wayland comes up, people come out of the woodwork to declare it a failure because it won't run over a network, but that's the only real gripe I've seen. You say there are others, I'm curious to know what they are.
Re:Application and Screen on Different Machines (Score:3, Insightful)
And yet, Network Transparency is one of X's biggest weaknesses as well. The truth is, X's chief purpose in providing Network Transparency was in providing thin client/mainframe/whatever support over a LAN/WAN. This is incredibly transparent in a few ways: (1) there isn't a lot of heavy effort put into minimizing the data stream, (2) nearly any sort of network hiccup will kill a connection and hence the client--something almost assured on the internet for programs running long enough--, and (3) you can't move a client from one server to another. To speak of your VM example, in a more idealized version of Network Transparency, the VM(s) hosting MS Office could be moved from one machine to another and users would at most notice a pause during the checkpoint/transfer/client address update. That's something entirely out of the reach of X. Meanwhile, I think people are more interested in things like (a) starting a program at home on their desktop, (b) continuing to use it on their smartphone, and (c) finally moving to a desktop at their destination. Conceivably, the desktop itself would not be running most the programs but simply be a nexus of links to clients on the phone, on the desktop, and online; ie, the point of the desktop would be more to coordinate what is being run as it has more capacity to checkpoint/maintain/log.
In short, I don't think X really lived much up to the network transparency ideal. Sure, it can fool you for a while, but the times it fails it fails pretty catastrophically. X was really conceived of in another time which ironically presumed higher reliability. I certainly agree that Wayland stepping further away from network transparency is the wrong path. It just seems clear that pointing at X isn't really that useful considering how many things it gets wrong for today's environment.
Re:How long? (Score:5, Insightful)
Network transparency is very useful for administering servers. It is very useful to run the various GUI programs that I run on various servers on our office network. Wayland supporters have suggested using VNC for that, but it misses the point, since that implies one VNC session per remote machine, which means multiple VNC sessions, each with its own window manager, issues with copying and pasting, etc..
The other key advantage that X11 has: if the application is mis-behaving the application's window can still be controlled by the window manager. Ever seen windows on a Windows desktop that cannot be minimized? Wayland is bringing that to Linux.
Re:Hopefully another 25 years or more (Score:5, Insightful)
I guess all of the X11 developers that are the ones developing Wayland don't understand X11 that well.
"Don't understand X11 that well", I don't know (though I'd doubt they don't understand X). As for whether X11 needs replacing; not here, no.
I do worry that they're ignoring the ideals of X, and focusing too much on cellphone/*pad interfaces, as opposed to the original X ideal (any device *should* be able to handle it, regardless of what your particular prejudices might be).
Does Fluxbox run on Wayland? If so, I'll try it.
Re:Application and Screen on Different Machines (Score:4, Insightful)
Solution searching for a problem? (Score:3, Insightful)
So.. X11 needs to be replaced with something shiny because of...? Seems the response most often stated is the code base is a mess. Why not just clean that up instead? And has others have noted here, remote usage is still important and no, VNC is not the same thing.
Re:Might be faster than you think (Score:3, Insightful)
Existing X11 apps? Pray tell, what would those be? Does anyone care about xeyes anymore? I mean, I'd have thought that everything of note uses a framework/library of some sort that abstracts X11 away? Sure you need to port the framework, but the applications won't even know anything changed...
Sometime around 2000-2002 Windows and OSX added (Score:5, Insightful)
...network abstraction layers to their GUIs, specifically to enable people to mirror and share their desktops efficiently.
The mundane, non-vertically integrated *nix world still doesn't have this ability after all these years. X11 can't mirror/share, its also laggy over broadband connections, VNC is primitive and slow, etc. The NoMachine people have claimed they can support screen sharing in NX, but I haven't seen a working example yet (and those features are in the proprietary version anyway); otherwise they did a good job of making X11 usably network transparent for use cases not contained within a single LAN (i.e. most situations).
Personally, I'm tired of seeing all the hand-waving about X11's network transparency. It doesn't help in the vast majority of instances where people want to share an app or screen during a teleconference. X11 is not advanced in this respect -- just sadly out of touch. It mainly addresses the rather outdated use case where you have a handful of engineer types who open a CLI and type an ssh command, possibly fiddle with the display variable, then type in the desired app as a command so they can run one expensive, customized app on a server in a specially cooled room 3 floors down.
Re:Hopefully another 25 years or more (Score:4, Insightful)
Re:what about xorg? (Score:4, Insightful)
Remove the legacy libs and interface... Fix X11's network transparency, making it perform more like NX... Improve the insane xauth system... make sure GTK and QT still work on it... call it X12 and release it to the public.
Just because maintaining 90% of the legacy code is unnecessary, doesn't mean you need to throw it all away, including the other 10% that works well and 99% of the compatible applications use.
Re:Why are graphics awesome on Android? (Score:5, Insightful)
I looked through the other replies to see if I could mod someone up, but unfortunately no one answered your question and most posts missed the point.
The difference has nothing to do with the kernel. The difference in in the graphics architecture and how the subsystem works with the hardware.
First, Android's graphic subsystem is probably closer to Wayland than X11. The reason X11 is slow (or rather seems slow) is because X11 is an asynchronous API. That means things like window resizing and widget redrawing are all done without any synchronization, at roughly the same time, but not in any particular order. This means that you often get stuttering and tearing. So oddly enough if you use a compositing manager on Linux (any modern desktop), moving windows around is very snappy. Resizing windows is much better than it used to be because the widget toolkits have gotten much better at things like event compression, and even using synchronization extensions to X11 to time redraws to coincide with refresh rates. Also the API involves a lot of round-trips to the server, so over the network it's extremely chatty and subject to latency.
As allude to, X11 is a client/server architecture, which is a very powerful concept, but also causes some problems in making things appear smooth and fast (the asynchronous issue I just mentioned). X11's most powerful feature, is network transparency. I can remote log into any number of machines, and run individual apps and interact with them all on my desktop. Sure vnc or rdp can do this sort of thing, but not at an app (really per window) basis. I run remote apps as if they were local. I use this feature every day. It's not perfect; doesn't connect my local drive to the remote app, and it doesn't do sound. And if you're not on a LAN, it's better to use FreeNX.
Android is pretty much just OpenGL compositing onto a frame buffer screen. This can be very fast and smooth, and Wayland will likely be as fast and smooth. But it lacks the remote network transparency of X11.
Re:Hopefully another 25 years or more (Score:5, Insightful)
I hear you, honestly, but do keep in mind that sometimes change can be a good thing too. If they do it right, and it works everywhere, and gives you everything you had before but more.. why hold back? Sure, stay with what works for you for now but don't write off your options forever-more just because they're not there yet. I remember a time when I wouldn't own any phone but a Nokia, and wouldn't use a laptop because they were too underpowered and the screens were terrible. I wouldn't use anything that wasn't x86 and 32bit due to compatibility and stability. I wouldn't use wifi when ethernet was available because it was way slower and unreliable. I wouldn't consider using the internet on a phone due to cost and performance. All that's changed now and I couldn't be happier that it has
All losing the point via narrow focus (Score:4, Insightful)
VNC is one to one, but with X you can have a pile of windows open from a pile of hosts. It may not be important to many here but it's the entire reason why my workplace has linux on the desktop machines and why the MS windows machines all have X as well.
The funny thing is despite all the "cloud" hype people are forgetting one of the major advantages of being able to use the resources of more than one computer via networking. VNC is the dumb terminal approach, which is fine for many tasks, but it has limitations.
Re:Might be faster than you think (Score:5, Insightful)
Existing X11 apps?
Yes.
Pray tell, what would those be?
Well, all the good window managers for a start. One of the HUGE advantages of X11 is that any user can freely replace the window manager. The move to Wayland would involve client side decorations (nothing inhernet in wayland, but the collective insanity of the Wayland developers seems to be pushing this policy), which massively limit what the compositor could realistically do.
X11 allows GUIs as diverse as Unity and ratpoison. I sit in a happy medium with FVWM, and I like it very much. That I would lose with Wayland.
And I still use xterm (I prefer it to any of the more modern terminals), xfig (still has some must have features) and xv (seriously? this program wasn't new in 1994! why do all subsequent views suck compared to it). I also have the odd hacked up thing using raw X11 because I find it very simple to use.
(Oh yeah and network transparency.)
<rant>
At this point a whole bunch of people ususally come out of the woodwork and tell me how only 1% of users or whatever use that feature and most users don't care and blah blah blah.
Well guess what Linux is never going to "win" the desktop. It is forever going to be used by people like me who take the effort to seek out something different. It used to be hacker friendly, letting you do stuff because you could, not blocking it because only 1% would use it or some other bullshit reason.
Hobbling Linux in a misguided attempt to capture some "market" that it will never capture will only wreck it for the rest of us who actually like it for what it is aren't using it because we're too cheap to buy a Mac or Windows or whatever. I love it because I find I do weird 1% stuff all the time. If I want OSX I know where to get it, and I really, really don't want it.
This is also the reason behind why firefox and gnome seriously break if you try to use (for instance) NFS mounted home directories. Because only 1% of users want it and so it is no longer well supported (and gives really idiotic error messages).
Re:Hopefully another 25 years or more (Score:4, Insightful)
It doesn't stop X11 from running as a client over Wayland for those who need a remote app and working in practically the same way as it does now. But it does mean the vast majority of people do not need to run it and do not incur the performance penalties from doing so.
Re:Application and Screen on Different Machines (Score:4, Insightful)
VNC and RDP are horrible kludges and perform like crap.
I get the feeling youve never used RDP.
And if X11 is so great for network transparency, why does Citrix base all of its terminal stuff on ICA (which RDP is based off IIRC) rather than just using X11's native abilities?
Re:Application and Screen on Different Machines (Score:5, Insightful)
Bandwidth is very much a concern as well. All the toolkits render locally to X pixbufs and transmit them across the line. In particularly graphics heavy systems, such as GIMP, these pixbufs won't compress as well, so line compression won't help as much to cut down on bandwidth concerns.