Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
GUI X Linux

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."
This discussion has been archived. No new comments can be posted.

Wayland 1.0 Released, Not Yet Ready To Replace X11

Comments Filter:
  • Perhaps this is going to be ready when the IPv6 flag day is?
    • Every major OS shipping today supports IPv6 natively, the same with all new networking equipment these days. IPv6 already works. Wayland isn't quite there.

      • M.any years ago they were talking about Enlightenment wanting to replace X11

        While E has gone to E17(still beta), it's not replacing X11 yet.

        I dunno much about the project that's the topic of TFA, so I won't know how successful it would be in replacing X11

        • by Virtex ( 2914 )
          E17 should be out in a few days [phoronix.com]. But even so, E17 runs on top of X11 rather than running as a replacement. Maybe if Wayland takes off, Enlightenment can be ported to run there instead of X11, but we'll have to wait to see where things go from here.
        • M.any years ago they were talking about Enlightenment wanting to replace X11

          You're not thinking of the Berlin Consortium or something are you? I think they changed their name to something catchier later, but it escapes me (<sarcasm>well that obviously worked</sarcasm>).

          Enlightenment was always intended to be something on top of X11 as far as I can remember (could be wrong of course).

  • Version numbering (Score:3, Insightful)

    by Rennt ( 582550 ) on Monday October 22, 2012 @10:18PM (#41736541)
    Oh, we'll call it 1.0, but I'm sure distros won't start shipping it by default because we said it's not ready. Why are you pulling that face? Worked for KDE didn't it?
  • what about xorg? (Score:4, Interesting)

    by sayfawa ( 1099071 ) on Monday October 22, 2012 @10:19PM (#41736545)
    I did, at least, skim the article, and I still don't know. Didn't X11 just (as in last few years) get replaced with x.org? This is another replacement already? Ok, before posting, I google and see this [wikipedia.org]:

    What's different now is that a lot of infrastructure has moved from the X server into the kernel (memory management, command scheduling, mode setting) or libraries (cairo, pixman, freetype, fontconfig, pango etc) and there is very little left that has to happen in a central server process. ... [An X server has] a tremendous amount of functionality that you must support to claim to speak the X protocol, yet nobody will ever use this. ... This includes code tables, glyph rasterization and caching, XLFDs (seriously, XLFDs!) Also, the entire core rendering API that lets you draw stippled lines, polygons, wide arcs and many more state-of-the-1980s style graphics primitives. For many things we've been able to keep the X.org server modern by adding extension such as XRandR, XRender and COMPOSITE ... With Wayland we can move the X server and all its legacy technology to an optional code path. Getting to a point where the X server is a compatibility option instead of the core rendering system will take a while, but we'll never get there if [we] don't plan for it.

    which bored me to tears, so I'm no longer interested, but for those who are....
    • Re:what about xorg? (Score:5, Informative)

      by damnbunni ( 1215350 ) on Monday October 22, 2012 @10:23PM (#41736565) Journal

      x.org is not a replacement for X11. x.org is X11.

      It's an implementation of an X11 server.

      x.org split off from XFree86 over licensing arguments, if I recall properly.

      • Re:what about xorg? (Score:5, Informative)

        by bmo ( 77928 ) on Monday October 22, 2012 @10:39PM (#41736687)

        The licensing thing was basically just the last straw in a long line of disagreements, especially the lack of innovation and communicating and coordinating with the rest of the community, like projects such as KDE and Gnome.

        If you think x.org's development is glacial, it's nothing like what XFree86's BS was.

        --
        BMO

      • by Kjella ( 173770 ) on Monday October 22, 2012 @11:06PM (#41736863) Homepage

        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.

    • As I understand it, x.org replaced xfree86. Both are X11 implementation.

    • Re: (Score:3, Interesting)

      by Anonymous Coward

      [An X server has] a tremendous amount of functionality

      X servers were working fine on resource-constrained Unix systems 20 years ago.

      The idea that they're somehow too bloated compared to a modern UI subsystem is complete and utter bullshit.

      It just makes me annoyed how everything becomes layer upon layer of yet more inefficient crap, yet we're supposed to worry about comparably simple "legacy protocols" possibly still having some features that could be gradually deprecated.

      • Re:what about xorg? (Score:5, Informative)

        by tibit ( 1762298 ) on Monday October 22, 2012 @11:28PM (#41737013)

        The deal is that the way of rendering that both X11 and windows GDI support is 20 years behind the times. Nobody renders like that. The only way to reuse such an API to render modern UIs (without using GPU functionality) is to generate bitmaps using various modern rendering libraries and toolkits (like Qt does!) and push those to the screen. Thus, for a modern application, X11 and GDI are bitblt and input with lots of other junk nobody cares about. Yeah, X servers were working fine on resource constrained Unix systems 20 years ago, but then the UIs back then consisted of relatively simple primitives that the X server could actually draw. These days the X server doesn't support the primitives the application designers need, because to do so would mean reimplementing, for example, a path based compositing renderer.

        The legacy APIs are useless, they don't scale anymore. Back in times of X, any application that drew anything complex had to maintain its own scene graph of some sort and maintain its own space partitioning to choose what to redraw. This led to obscene duplication of effort, and various applications had their own glitches, shortcomings and inefficiencies because everyone was reimplementing what wasn't all that easy to implement correctly in the first place.

        Given the graphics hardware available today, those legacy APIs of GDI and X vintage expose a model that is so far detached from how the hardware processes the geometry, that applications that merely use the API can't leverage the available graphics horsepower. IOW, if you code to X or GDI APIs, your application will perform poorly and there's no way for something on the implementation side of the API to fix it for you.

        When designing an application of any sort, the graphics API needs to present primitives and abstractions that translate well into efficient uses of graphics hardware. I'm sure people who deal with accelerating modern frameworks like Qt will tell you all there's to know about how broken the legacy API is when faced with modern hardware.

        • by evilviper ( 135110 ) on Tuesday October 23, 2012 @12:52AM (#41737603) Journal

          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:what about xorg? (Score:5, Informative)

          by serviscope_minor ( 664417 ) on Tuesday October 23, 2012 @04:32AM (#41738737) Journal

          The deal is that the way of rendering that both X11 and windows GDI support is 20 years behind the times.

          So?

          I hear this a lot. The thing is, the code might have been large and complex 25 years ago when X11 was new. The code hasn't grown. By modern standards it's small and simple. And if it's rarely used, then it will sit on disk un-paged and never getting in the way. Actually with the removal of many things which used to be but no longer are optimizations it's shrunk.

          Rarely used code does not affect performance.

          Nobody renders like that.

          I'm going to keep using xterm thanks. And I'd appreciate if you didn't make false claims about me.

          These days the X server doesn't support the primitives the application designers need, because to do so would mean reimplementing, for example, a path based compositing renderer.

          Firstly, X11 does support basic compositing now, and has for a while. Secondly, what's with the claim about "reimplementing"? One could easily make a cairo-x11 extension. In fact there used to be a x11-DPS extension so it's clearly possible.

          The legacy APIs are useless, they don't scale anymore.

          [citation needed]

          Anyway WHO CARES? Modern toolkits don't use the "legacy" APIs and old programs aren't big. So it's all happy and nice.

          IOW, if you code to X or GDI APIs, your application will perform poorly and there's no way for something on the implementation side of the API to fix it for you.

          Your claim is something like 20 years out of date. X11 has had a standardised interface to hardware accelerated OpenGL since before PCs even had 3D cards. Most people don't and didn't use it because even the "poorly performing" "legacy" APIs are entirely fine for almost all programs which sit there doing nothing until a key is pressed.

          When designing an application of any sort, the graphics API needs to present primitives and abstractions that translate well into efficient uses of graphics hardware. I'm sure people who deal with accelerating modern frameworks like Qt will tell you all there's to know about how broken the legacy API is when faced with modern hardware.

          Well, yes, but then again. they probably don't use "legacy" APIs, prefering to use things like XComposite, XFixes and so on and so forth.

          Basically, the X11 prorocol is really well designed, upgradeable and does a lot of things very well. One part of it (the original drawing protocol) was basically due for a major upgrade. That partly happened with XComposite and off-screen rendering. It could (and probably should) be continued with a higher level (e.g. SVG) drawing protocol.

          Other parts of the X11 protocol have aged very gracefully, and are still very good.

      • Re: (Score:3, Interesting)

        by smash ( 1351 )
        Requirements for a display server were different 20 years ago. They weren't pushing around true colour bitmaps over the wan, video, openGL, etc. They were (realstically) rendering a few xterms, simple static bitmaps and not a hell of a lot else.
  • by Smartcowboy ( 679871 ) on Monday October 22, 2012 @10:33PM (#41736637)

    Imagine recreating xlib so it doesn't communicate with an X server but directly draws things on the local screen, maybe in a multithreaded fashion. In such a scenario, the ability to share a display between many programs would be lost or alternatively a badly behaviored program could disrupt the other's windows. What kind of increased performance would be obtained (if any) by replacing IPC, as used in X11 (and in wayland too?) for drawing and use in process fonctions instead?

  • How long? (Score:5, Interesting)

    by whoever57 ( 658626 ) on Monday October 22, 2012 @10:37PM (#41736665) Journal

    but how much longer will it take to replace X11 on the Linux desktop? Quite a while seems likely."

    Try never. Yes, I know that it should be possible to write a Wayland client that provides X11 server capability, but in that case, it is the Wayland client that is replacing X11, not Wayland.

    Seriously, though, the Wayland effort appears to be throwing out every advantage the X11 display had over the Windows display for a replacement that will probably never be quite as good as a Windows. I just hope that developers of programs which currently support X11 continue to support X11, or my life will get much more difficult. In fact, for much of what I do, without X11 support (and only Wayland display supported), I would probably be better off with a Windows desktop instead of a Linux desktop.

    • Re:How long? (Score:5, Insightful)

      by MBCook ( 132727 ) <foobarsoft@foobarsoft.com> on Monday October 22, 2012 @11:14PM (#41736917) Homepage

      Seriously, though, the Wayland effort appears to be throwing out every advantage the X11 display had over the Windows display for a replacement that will probably never be quite as good as a Windows.

      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:How long? (Score:5, Insightful)

        by whoever57 ( 658626 ) on Monday October 22, 2012 @11:22PM (#41736975) Journal

        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.

        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.

        • by Dwedit ( 232252 )

          I think Windows fixed this in XP. I've seen programs that stop responding still be able to be minimized or force-closed with the X.

          • They didn't.
        • Re: (Score:3, Informative)

          by smash ( 1351 )
          I think you'll find there are far more people doing this via RDP, ICA or VNC, quite happily than there are via X11.
          • the last 4 places I've worked only used RDP or ICA for displaying windows apps on Linux. VNC has only ever been a last resort protocol. X11's network transparency is the only way to get stripped down Linux installs for things like Oracle and their crappy dependance on a working X11 display (local or remote)

          • I think you'll find there are far more people doing this via RDP, ICA or VNC, quite happily than there are via X11.

            RDP on a Linux server? I don't think so.

            As I pointed out, VNC is a solution to admin a single server, as soon as you have more than one, then you need multiple VNC sessions, which is ugly.

            What I typically use is a single VNC session on one machine in the LAN, from which I run lots of X11 programs on various different systems (sending their displays to the VNC session). Then I can access

            • by jabuzz ( 182671 )

              Really, perhaps you might try using a search engine. The xrdp and x11rdp combination provide an X11 server than spits out RDP and the necessary middleware. More than five years old...

          • For all the crowing about network transparency, it is not the killer feature to most. In terms of network management MS's RDP easily wins out. Reason is that it works well and supports low bandwidth situations very well since it isn't just a pixel-based protocol. However for ease of use and cross platform goodness, nothing beats VNC. That's what our Linux guru uses, in the situations where a command line isn't enough, not remote X.

            Frankly, given the difference between local interconnects and network speed,

        • Network transparency is very useful for administering servers

          Which is fine if you want Linux to be purely a server OS. If you want Linux to have any success in other markets, then having a smooth graphical user experience is almost always more important than remote GUI admin capabilities.

          What's wrong with retaining X11 for servers only, and switching to something more appropriate for other Linux installations?

        • Re:How long? (Score:4, Informative)

          by Tailhook ( 98486 ) on Tuesday October 23, 2012 @05:23AM (#41738977)

          Network transparency is very useful for administering servers

          You're in luck then because Wayland will provide exactly the sort of efficient remote display necessary for this and most other use cases. Here [youtube.com] is the man himself, Kristian Høgsberg, demonstrating a prototype of this. Watch and learn and try to make allowance for the fact that this stuff has probably never run beyond any anything other than Kristian's development machine.

          Wayland supporters have suggested using VNC for that

          The blind leading the blind. Wayland, by its nature, has precise information about what it composites. Kristian explains how this can will be used to make efficient, round-trip-free remote displays work.

          Eventually Wayland will provide a better remote desktop experience than X. Please know of what you speak before you condemn it.

      • Re: (Score:3, Funny)

        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.

        Every time the electric car comes up, people come out of the woodwork to declare it a failure because it won't go more than 100 miles without a long recharge, but that's the only real gripe I've seen. You say there are others, I'm curious to know what they are. Every time the web appliance comes up, people come out of the woodwork to declare it a failure because it won't do anything besides surf the web, but that's the only real gripe I've seen. You say there are others, I'm curious to know what they are.

      • Losing network transparency will effect some people, but there are some solutions to that.

        Why do I need to find a solution for something that already works today? That's just stupid and a waste of everybody's time.

    • by rnturn ( 11092 )

      "In fact, for much of what I do, without X11 support (and only Wayland display supported), I would probably be better off with a Windows desktop instead of a Linux desktop."

      I wonder if you haven't cracked the code. I see Wayland as just one more thing to make Linux more like Windows. (Like that's even a goal that the Linux community should be aspiring to.)

      Personally, I would rather have a root canal without anesthetic than administer UNIX/Linux systems using a Windows desktop. If it weren't for Cygwin ha

    • by sl3xd ( 111641 )

      but how much longer will it take to replace X11 on the Linux desktop? Quite a while seems likely."

      Try never. Yes, I know that it should be possible to write a Wayland client that provides X11 server capability, but in that case, it is the Wayland client that is replacing X11, not Wayland.

      Seriously, though, the Wayland effort appears to be throwing out every advantage the X11 display had over the Windows display for a replacement that will probably never be quite as good as a Windows. I just hope that developers of programs which currently support X11 continue to support X11, or my life will get much more difficult. In fact, for much of what I do, without X11 support (and only Wayland display supported), I would probably be better off with a Windows desktop instead of a Linux desktop.

      A couple of things:

      1.) Wayland isn't trying to be X.
      - Every 'native' Wayland program will have to be specifically compiled for Wayland.
      - Wayland has an in-development X11 server, where X.org uses Wayland as a frame buffer (instead of X.org providing its own). This is really more like Xquartz or any of the X11 implementations on Windows. Neither OS X nor Windows can run X11 apps natively, and neither will Wayland.

      2.) Wayland's policy towards network transparency is best described in their FAQ: "that is outs

  • When you consider how fast the switch to x.org from xfree86 took place in three Linux world, any clearly superior x-like implementation with fully compatible APIs and without unacceptable license encumbrances could be adopted in very short order. If the functionality requires every program and every library to be reworked, then it will probably never happen.

    Not having ANY real Wayland knowledge, I can only hope it is not another change in Linux for change's sake.

    • Re: (Score:2, Informative)

      by Anonymous Coward

      Wayland is not compatible with X11. You can recompile a GTK program so it runs on Wayland, but existing X11 apps do not run on Wayland (they are working a crappy-ass Mac OS X like shim).

      • Re: (Score:3, Insightful)

        by tibit ( 1762298 )

        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...

        • by serviscope_minor ( 664417 ) on Tuesday October 23, 2012 @04:54AM (#41738841) Journal

          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).

  • by Lawrence_Bird ( 67278 ) on Monday October 22, 2012 @11:31PM (#41737043) Homepage

    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.

  • by Trevelyan ( 535381 ) on Tuesday October 23, 2012 @05:48AM (#41739121)
    The two main complaints I see discussed here appear to derive from some fundamental misunderstandings about what Wayland is.

    Wayland is a Protocol and an optional helper library to implementing that protocol. This protocol says nothing about net work transparency, in both the sense of enabling or prohibiting it. It also says nothing about client decorations. The key points here is not to make a decision for or against any particular technology or methodology and then be stuck with that decision for the next 20 years, like we are with X.

    How or if, either of these work is all down to the compositor. The reference compositor 'Weston' does not do network transparency and leaves window decoration to the client or its toolkit. However none of the big desktops, i.e end users, will be using this compositor. For example KDE will continue to use Kwin as their wayland compositor, and KDE have already clearly said that Kwin will be decorating their windows and not the clients!

    As to network transparency, all windows are drawn to their own back buffers, and where these buffers will be eventually displayed is also the choice of the compositor, and it might well just decided to send them over a network connection. e.g. like what VNC does.

    I think if you base your opinion on what other people say, including me, then maybe you shouldn't comment? All of this is discussed first hand on the Wayland web site and/or mailing list.

    Unfortunately since I've posted a bit late, I doubt many will read this...

What is research but a blind date with knowledge? -- Will Harvey

Working...