Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Software Linux

Lead Mir Developer: 'Mir More Relevant Than Wayland In Two Years' 226

M-Saunders writes Canonical courted plenty of controversy with it announced Mir, its home-grown display server. But why did the company choose to go it alone, and not collaborate with the Wayland project? Linux Voice has an interview with Thomas Voss, Mir's lead developer. Voss explains how Mir came into being, what it offers, and why he believes it will outlast Wayland.
This discussion has been archived. No new comments can be posted.

Lead Mir Developer: 'Mir More Relevant Than Wayland In Two Years'

Comments Filter:
  • Not Invented Here (Score:5, Insightful)

    by headkase ( 533448 ) on Friday October 17, 2014 @02:34PM (#48170909)

    I think the main issue Canonical has with Wayland and X is that they are Not Invented Here [wikipedia.org]. Canonical has their own priorities and regardless of the technical merits vs. Wayland and others Canonical wants to be in control of the display server so they can lead it to their interests and not have to convince other parties to go their way.

    • by bluefoxlucid ( 723572 ) on Friday October 17, 2014 @03:00PM (#48171143) Homepage Journal
      Pretty much. "Mouthpiece for Canonical: Canonical-made System Better than Stupid Other System."
    • Quite (Score:5, Interesting)

      by Viol8 ( 599362 ) on Friday October 17, 2014 @03:02PM (#48171169) Homepage

      Wish I had mod points. Canonical arn't really interested in Linux or unix in general other than how it can ultimately make them money. Its a means to an end and if that means dropping 30 years of experience because it doesn't quite suit them then they will.

      X is far from perfect but its the unix display standard and it isn't going anywhere anytime soon. If canonical want to go their own way then they'll find their user base dropping away even further.

      • Wish I had mod points!
        Canonical --said it once and'll say it again-- is a PR Company. And, as with PR, it's braindead, and memory-deficient.
        Remember those "100 Paper Cuts", introduced by Mr. You Know Whom?

      • Re: (Score:2, Flamebait)

        Can you point to something specific that the old way is better?

        As with systemd it seems that some people are ready to adopt the new and toss the old in the trash. NIH served Canonical well there, as their customers are both direct users (who according to the Ubuntu philosophy have no need to know what systemd is or what it does) and people who maintain Debian based or similar distros.

        If Canonical makes something better, and people who do not have financial incentive to adopt it do so, what does it say abou

    • But Wayland or an implementation has always seemed to be two years away. It's just so slow moving - drivers, distros, toolkits, DEs need to be there. I'm figuring out we can finally use it in 2016 (Ubuntu 16.04 LTS variants and derivates), 2017 for debian-stable-after-jessie.
      I'm figuring Ubuntu wanted their Mir so they could control the development, QA, testing, whatever of it for the Ubuntu phones, which eventually failed to be introduced or were delayed.

      • From what Ive seen in the press [pcworld.com] recently it looks like the phones might come out of vapourware. I'm still quite a fan of Ubuntu, even with Unity, I think it would make a nice UI for a phone.
      • by spitzak ( 4019 )

        I agree that development on Wayland is at a glacial pace. I think Mir is serving a purpose: it actually got the Wayland developers to speed up considerably. But then they slowed down over the last year, so bringing up Mir again may be a good idea.

    • by Osgeld ( 1900440 )

      its more like wayland is Designed by committee which gives you a never ending cluster of everyone's best wishes, which is why after hearing about it since 2008 the most promising thing it can say about itself in the first sentence of their own website is

        GNOME and KDE are expected to be ported to it.

      Its DOA

  • Site broken (Score:5, Funny)

    by DoofusOfDeath ( 636671 ) on Friday October 17, 2014 @02:34PM (#48170913)

    It appears to be Slashdotted. Someone's got to show them how to use IIS!

  • Why? (Score:4, Insightful)

    by sexconker ( 1179573 ) on Friday October 17, 2014 @02:36PM (#48170933)

    What's wrong with Wayland that Mir fixes?
    What else does Mir bring to the table that would make people use it over Wayland?
    What is preventing Wayland from improving over the next 2 years?

    If you want people to click on, read, and discuss articles, Slashdot, you should have articles worth clicking on, reading, and discussing.

    I read TFA. Nothing in it answers the questions I have, not even the answer to the same fucking question that the interviewer had.

    So that’s looking at Mir in relation to X. The obvious question is comparing Mir to Wayland – so what is it that Mir does, that Wayland doesn’t?

    This might sound picky, but we have to distinguish what Wayland really is. Wayland is a protocol specification which is interesting because the value proposition is somewhat difficult. You’ve got a protocol and you’ve got a reference implementation. Specifically, when we started, Weston was still a test bed and everything being developed ended up in there.

    No one was buying into that; no one was saying, “Look, we’re moving this to production-level quality with a bona fide protocol layer that is frozen and stable for a specific version that caters to application authors”. If you look at the Ubuntu repository today, or in Debian, there’s Wayland-cursor-whatever, so they have extensions already. So that’s a bit different from our approach to Mir, from my perspective at least.

    There was this protocol that the Wayland developers finished and back then, before we did Mir and I looked into all of this, I wrote a Wayland compositor in Go, just to get to know things.

    • by gl4ss ( 559668 )

      what he means to say is that mir wont have a protocol spec nor wont it have extensions?

      oh and that he's a code hipster.

    • by armanox ( 826486 )

      A lack of competition is what Wayland doesn't fix.

    • by dbIII ( 701233 )

      What's wrong with Wayland that Mir fixes?

      Stuff the Mir developers want but the Wayland developers think is not important or should be dealt with at the application level.
      It's that simple - a different list of desired features.

    • by Error27 ( 100234 )

      My read of the article is that the problem with Wayland is that the devs were writing specs instead of software. There was lots of planning and no doing. Remember that originally Ubuntu was supposed to be running X-Mir by default in Oct 2013.

      Those days were more optimistic times for Ubuntu and they thought they could create a new display server in a year. These days Mir and Wayland seem to be at about the same stage of readiness.

  • by Lilith's Heart-shape ( 1224784 ) on Friday October 17, 2014 @02:48PM (#48171033) Homepage
    Seriously, what's so broken about X? Is it just a pain in the ass for developers to work with?
    • by Ignacio ( 1465 )

      X was great for its time. But its time was when graphics hardware was slow and software was relatively undemanding. Times have changed, "we" want better software and have faster hardware, and now the bottleneck is X itself.

      • Re: (Score:2, Interesting)

        by 0123456 ( 636235 )

        X was great for its time. But its time was when graphics hardware was slow and software was relatively undemanding.

        Ha-ha-ha... you clearly never used an X-Terminal back when we were all going to have dumb terminals on our desks talking to The Cloud... sorry... super-powerful 68020-based Unix servers The X overhead is miniscule today, unless you're trying to push X sessions over the Internet, or video over the LAN.

      • How is X a bottleneck? It seems responsive enough for me on a System76 Pangolin Performance laptop running MATE 1.8.1 on Ubuntu 14.04 that I bought in 2012.
    • by N7DR ( 536428 ) on Friday October 17, 2014 @03:32PM (#48171499) Homepage

      Seriously, what's so broken about X? Is it just a pain in the ass for developers to work with?

      I taught myself X from scratch last year. I didn't find it hard at all. In fact, I found it a whole lot easier than either of the fancy modern GUI toolkits that I looked at first and tried to use to implement the project I was working on.

      Out of desperation born of lack of progress over an extended period, I thought I'd take a look at X. And suddenly it became easy to get the interface to behave *exactly* the way I wanted instead in somebody else's idea of what I should want.

      And the documentation was complete, correct, and easy to follow. I didn't have to keep asking people for help (often, with no resolution). In a word, both the documentation and the code for X are mature. Which I submit beats bleeding edge every time if you're trying to build something robust.

      • both the documentation and the code for X are mature. Which I submit beats bleeding edge every time if you're trying to build something robust.

        So true.

      • Seriously, what's so broken about X? Is it just a pain in the ass for developers to work with?

        I thought I'd take a look at X. And suddenly it became easy to get the interface to behave *exactly* the way I wanted instead in somebody else's idea of what I should want.

        And the documentation was complete, correct, and easy to follow.

        Here's a transcript of a video call I recently had with a Lead Mir Developer(*): Ahhh! Geez, over here -- it's another luzer. Look, using this is just so obvious it's painful. We write wonderful, self-documenting code and haven't had a bug in months! And it's completely compatible with X -- here, let me show you.

        See? It starts up and looks and responds completely like X, but it's got our better code and much better responsiveness. All you have to do it is read the simple documentation that Joe i

    • by Anonymous Coward on Friday October 17, 2014 @03:49PM (#48171669)

      Seriously, what's so broken about X? Is it just a pain in the ass for developers to work with?

      If X, or more specifically the X.org implementation, had been written by Leonard Poettering every article would be followed by a gazillion comments whining about how it is a monolithic single point of failure (which had to run as root until very recently on many systems), it has terminal NIH syndrome (everything from ELF library loading to low-level graphics drivers to stippled line rendering), it "violates the UNIX philosophy" by doing multiple things (it's a remote display protocol, it's a input event multiplexer, it's a bitmap typeface renderer), it is not easily extensible (extending the core protocol is often not portable so GNOME and KDE etc overload scores of "window properties" to serve as a quasi-protocol), it's full of useless crud (for example, with modern toolkits the much-vaunted 'network transparency' usually boils down to sending pre-rendered bitmaps, as the aforementioned stippled line support is not considered sufficient) etc.

      Of course, X11 was a gift stolen by Prometheus from the Unix gods. All right-thinking people know that it is obviously sacrosanct and even the suggestion that someone might someday be able to do better is a vile heresy. If you need to do something it doesn't support, why not glue another carbuncle of an extension onto the creaking superstructure and perform the required ritual goat sacrifice? Thus it ever was, thus it ever shall be.

      • I'm one of those crazy people who use Linux and X on the desktop, so all of the issues you mentioned are no more relevant to me than Miley Cyrus' sexual habits. Likewise with the arguments against systemd: as long as my laptop works, I don't care what happens under the hood. :)
    • Re: (Score:2, Informative)

      by steveha ( 103154 )

      Seriously, what's so broken about X? Is it just a pain in the ass for developers to work with?

      You might seek out some of the tech talks given by Wayland developers. They lay it out pretty clearly.

      Here's a good one: https://www.youtube.com/watch?v=RIctzAQOe44 [youtube.com]

      From memory, X11 is full of cruft that no longer makes sense. Everyone wants beautifully rendered, anti-aliased fonts, but X11 not only doesn't give you that, if you comply with X11 you can't do that.

      Wayland took a look at how X11 is actually used, tod

      • by morgauxo ( 974071 ) on Friday October 17, 2014 @04:23PM (#48172009)

        "Wayland is exactly as network-transparent as X11 is in actual use these days: not very but you can make it work. Everyone is pretty much asking X11 for a drawing canvas, drawing on it, then giving it to a compositor to display. See above comments about beautifully anti-aliased fonts."

        From the perspective of a low-level programmer working on Xorg and/or Wayland this is probably true. They certainly say it enough. As a user I'm not even entirely sure what a compositor is. However, I can create an X terminal in a few minutes by just doing a bare-bones Debian install with X but no desktop manager. Then a quick rc script edit makes it automatically start X and connect to my XDMCP server. From that point on all I have to do is hit the power button and I have the illusion of being at my main desktop PC. I don't really care how X is or isn't making this happening so long as it works!

        Knowing nothing about compositors, 3d or 2d APIs or the source code of Weston how the hell will I do this when Wayland has replaced X? Do I have to learn write my own compositor? I already do aplicaiton programming for a living but when these Wayland guys talk I have no idea what the hell they are going on about. What will I have to learn to make Wayland work remotely? Where would I even begin?

        Or.. until the applications I want to run no longer support it I can just keep using X. But what then?

        • by jbolden ( 176878 )

          Wayland includes a remote protocol. For an application programmer you'll use a graphical widget set and that will display remotely fine.

        • The compositor is the program that stitches the framebuffers for each element on the screen together into the final image. It is usually a part of, or closely related to, the window manager.

          Modern drawing APIs typically work by allowing the application to ask the windowing system for a buffer (may be hardware accelerated) to which the application will perform all of its draw calls. The compositor then gathers all of the frame buffers and uses attributes to draw the final image into its own frame buffer that

      • by PPH ( 736903 )

        Wayland is exactly as network-transparent as X11 is in actual use these days:

        Love that quailfier: "in actual use these days". One of the Wayland devs evidently looked around his office and didn't see any remote clients running. So toss that requirement out.

        I don't care if Wayland provides X Server emulation. That's not the point. Once the Xlib support underlying higher level toolkits is thrown out, the resulting clients built will not be network-capable. And most of the application developers will never notice (except that the DISPLAY arg doesn't seem to do anything anymore). And

        • Mod points from me. Have name, will deliver -- if not now, then on any other topic soon.

        • by raxx7 ( 205260 )

          That's not what he meant I think.

          Modern X applications (well, the toolkits) are resorting so much to simply pushing bitmaps to the X server that X is becoming unusable over the network.
          Eg, the Qt developers found sometime ago that their client side rendering backend was much faster for local usage than the Xrender backend. So they made it the default for Qt4.4 And for Qt5 they didn't even bother with a Xrender based backend.

          The client side rendering backend pushes so much data Kate is actually painful to u

        • Let's hope the toolkits and applications will keep supporting X forever, or at least 10 years. No news of GTK3, Qt etc. dropping X11 support and there still is the older or simpler stuff around (GTK2, Motif, FLTK 1.3..)
          Then the distro and app maintainers have to not throw X11 out as you say, like apps or libraries compiled with flags so they do not support X11.. Realistically for a good while they won't do that, with the moutains of applications and older hardware to support.

          Then it shouldn't matter if you'

      • Surely you could at least have a link to the finished presentation instead of the error filled unfinished draft at linuxconf.au 2013 where he doesn't even have a screenshot and forgot his video cable?
        The "X is slow because gedit takes a long time to start" (because it's loading half of fucking gnome3!) is one of the low points, another, which is not his fault just one of people misunderstanding, is where his joke about only three people understanding X input fell flat and had been cited by the clueless as a
    • by jbolden ( 176878 ) on Friday October 17, 2014 @05:21PM (#48172473) Homepage

      Seriously, what's so broken about X?

      There are 3 situations involving applications, networking and graphics
      a) Running an application on a machine sharing ram with the video card.
      b) Running applications on a machine close enough to the video card that the latency between them is lowish and the bandwidth is plentiful and performance is irrelevant.
      c) Running applications on a machine where either the latency is high or the bandwidth is limited
      X11 does terrific for (b) in exchange for damaging (a) and (c). X11 was designed in a world where (b) is common. In today's world (b) is uncommon.

      Other issues:

      1. The mixing of signed and unsigned coordinates causes problems both in the protocol, where 3/4 of the coordinate space is often unrepresentable, and in the C language bindings.
      2. The X protocol is asynchronous for efficiency: in general, neither the server nor clients wait for replies. But the protocol’s synchronization mechanisms are insufficient, and leave many unavoidable race conditions.
      3. The X protocol attempts to be policy-free and tries not to dictate any particular style of window management. However, some desirable window manager features cannot be implemented correctly, because there are window attributes which the window manager can neither fetch nor monitor.
      4. The X protocol provides visibility notification events so that clients can avoid computation of obscured window contents. However, this notification doesn’t work well for nested windows or for windows with backing store.
      5. None of the several ways that an application can implement interactive mouse tracking of crosshairs, bounding boxes, etc., allow both efficiency and correctness.
      6. Popping up menus and dialog boxes is slow because it requires too many round trips and generates too many events. Repainting when portions of a window become visible is often slow.
      7. Exceptional conditions are poorly handled. Faulty programs can freeze the server, and clients cannot kill queued requests if the user doesn’t want to wait for the server to finish servicing them.

      • Yes. But. X. Real. Mir. Wishful. Thinking.

      • by Uecker ( 1842596 )

        Seriously, what's so broken about X?

        There are 3 situations involving applications, networking and graphics
        a) Running an application on a machine sharing ram with the video card.
        b) Running applications on a machine close enough to the video card that the latency between them is lowish and the bandwidth is plentiful and performance is irrelevant.
        c) Running applications on a machine where either the latency is high or the bandwidth is limited
        X11 does terrific for (b) in exchange for damaging (a) and (c). X11 was designed in a world where (b) is common. In today's world (b) is uncommon.

        Nonsense. For (a) X can do fundamentally exactly the same thing as Wayland: Direct Rendering and and messages over a UNIX domain socket. (b) is still very common and I use X over such a network every day. In fact (b) is much more common now than when X11 was designed because we have much better networks now and a good wireless network falls into this category. (c) is a problem for X, but this is not a fundamental problem with X but with Xlib which could be fixed. But even there Wayland does not offer any ad

        • by jbolden ( 176878 )

          Direct Rendering

          X can't do direct rendering. An application buffer is distinct from a graphical buffer.

          (b) is still very common and I use X over such a network every day. In fact (b) is much more common now than when X11 was designed because we have much better networks now and a good wireless network falls into this category.

          It is not more common. How many people share applications across a wireless? Servers are generally over a WAN not a LAN. Even when it is a WAN there are few reasons to not ju

        • if those complaints are "old" but still relevant they might as well be commented on and mentioned
    • X is optimized for programs that use a small number of colors to draw an effectively vector-based user interface on a raster display. It is very, very good at that, and provides a powerful range of tools for the job.

      Most programs use color-rich bitmap-based user interfaces. Doing this with core X functionality is painfully slow and difficult (think tens of seconds to draw a 800x600 JPEG), so everyone uses protocol extensions for this. Wayland is designed around bitmap-based drawing at the core.

    • by Bengie ( 1121981 )
      X is inherently flawed and cannot be fixed without breaking other things. This issue is similar to the IPv4 exhaustion problem. We're hitting limits and there's no way to fix it. People who claim it can be fixed can make the fixes. The X devs are saying X is inherently broken. One of the louder X "haters" has been working on X for over 25 years and has been a senior X programmer for a long time. X is a lost cause when the only people who know how it work are the ones saying it's horrible.
  • "MIR" is just a simple caesar cyphering away from "NIH'.

  • Comment removed based on user account deletion
  • ...why would it still be relevant now?

The use of money is all the advantage there is to having money. -- B. Franklin

Working...