Slashdot Mirror


The State of X.Org

An anonymous reader writes "Phoronix has up an article looking at the release of X Server 1.4.1. This maintenance release for X.Org, which the open-source operating systems depend upon for living in a graphically rich world, comes more than 200 days late and it doesn't even clear the BugZilla release blocker bug. A further indication of problems is that the next major release of X.Org was scheduled to be released in February... then May... and now it's missing with no sign of when a release will occur. There are still more than three dozen outstanding bugs. Also, the forthcoming release (X.Org 7.4) will ship with a slimmer set of features than what was initially planned."

11 of 618 comments (clear)

  1. Anything else out there? by CastrTroy · · Score: 5, Interesting

    Is there anything else out there? Why is there such a lack of interest in X.org, when so many other projects depend on it. Most of the big projects have been moving quite quickly, making a lot of headway in the past couple of years. What's holding x.org back?

    --

    Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    1. Re:Anything else out there? by CastrTroy · · Score: 5, Interesting

      First, I believe your parent post was a joke. Second of all, the reason most open source projects go stagnant seems to be for a couple reasons. First, the code is an ugly mess, and nobody wants to work on it. Second, internal conflict about where the project is going, so nothing gets done, or every new feature or bug fix becomes a big argument, about how it should be done. Thirdly, very boring project subject matter. The last one seems to be the big killer. There could be a nice open source Outlook/Exchange replacement. It wouldn't be inherently hard to build, but it seems that nobody is interested in doing it. Most of the stuff that gets a lot of attention is the stuff that developers are interested in building.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    2. Re:Anything else out there? by fireboy1919 · · Score: 5, Interesting

      I have a theory.

      We're using X as our windowing system because it's what we have, and we need it. But I don't think anybody (or not many people) really *believe* in it.

      That is to say, I doubt anybody takes a look at it and says "this is it! This is the way we should do Windowing!" And so the followup, "...and if it this thing worked, then it'd be more awesome."

      What people actually say when they start looking at it looks more like this.
      "Okay! X.org is a good project! I think maybe I'll contribute my time to it! Hold on...what is this? Why does it have all these features that nobody cares about? Why the nonstandard build system? What's with all the crazy legacy code? This thing is way too complex for me to spend my time on, and what I learn won't transfer to any other work. I'll pick something else."

      --
      Mod me down and I will become more powerful than you can possibly imagine!
    3. Re:Anything else out there? by Enleth · · Score: 5, Interesting

      It's a HUGE, and I mean, REALLY HUGE codebase that deals with hell lots of different concepts (graphics, input, networking, ...) that requires a good deal of understanding to modify it properly. Yet, there are less than 30 (!) active developers. That's probably one of the most under-manned Open Source project out there, proportionally to its size. And it's, again, because it's complicated as hell and nothing can be done about this - it's just the way a windowing server has to be.

      I've tried to help the project two years ago, I did dome work on input hotplugging and while not much of the code I wrote finally made it to the upstream (Daniel Stone, the man behind the input subsystem, finally decided for a different solution than what I was thinking about - maybe that was a good decision, I'm not the one to judge), I could experience myself how difficult developing X is. Besides skills and experience, you need to be able to keep track of such a big structure mentally, all the time. Not every programmer can do that, even skilled and experienced.

      And, no, you can't always abstract everything out and make a nice, clean structure for the code to adhere to. Maybe the X code could be a bit easier to modify, but just a bit. Trying to force that, you would end up with an Xserver counterpart of GNU Hurd, if you know what I mean...

      --
      This is Slashdot. Common sense is futile. You will be modded down.
    4. Re:Anything else out there? by Kjella · · Score: 5, Interesting

      Wow, you have just answered your question in the same sentence. The Linux kernel for example, is completely without competing forks that I know of, yet seems to be making good strides. xfree86 was going slow, and even after the x.org revival things again appear to be going slow. With a lot of people focusing on the desktop performance of Linux, why isn't this project interesting? A lot of other projects seem to be progressing nicely even without the competition breathing down their necks. I wonder if part of the reason is that the code is X11 licensed, which is fairly close to BSD so you don't have even LGPL protection of your code. If Stallman is looking for a non-(L)GPL project to replace, maybe he should drop the Hurd and start working on a GPL'd X instead...
      --
      Live today, because you never know what tomorrow brings
    5. Re:Anything else out there? by kripkenstein · · Score: 5, Interesting

      In addition to those factors, I'd say the problem is also a lack of interest.

      On the one hand we have things like GNOME and KDE, Firefox, Blender, etc. etc. - software that the user knows by name and interacts with directly. People happily join such projects and contribute code to them.

      On the other hand you have software that the typical user might not not even know exists, like the Linux kernel. However, for geeks the kernel is perhaps the pinnacle of programming, and furthermore by lucky coincidence (or unhappy, if you are GNU) the name of the kernel has become synonymous with the entire OS, making it high-profile just like the more obvious software projects mentioned in the previous paragraph.

      Whereas the X server is somewhere in the middle. It isn't well known, even geeks might not know exactly what it does (i.e., where the separation is between X, the window manager, and so forth), and for some reason it lacks the 'coolness' factor of the Linux kernel.

      All of this is unjustified, and a shame. Perhaps more stories on Slashdot like this one will raise awareness? Maybe we should also motivate people, by e.g. telling them that hacking X is even harder than hacking the kernel ;)

    6. Re:Anything else out there? by jeiler · · Score: 5, Interesting

      Agreed. X needs to fork--have half the team maintain the current implementation, the other half do a start-from-scratch coding marathon.

      --

      If you haven't been down-modded lately, you aren't trying.

      Sacred cows make the best hamburger.

    7. Re:Anything else out there? by Anonymous Coward · · Score: 5, Interesting

      My personal bet is that X is overly complicated. Overly complicated? Or just inherently complicated? A graphics driver (which is essentially what X is) has to interact with the kernel via an interface defined by the kernel, with hardware, and with the window manager. The only one of those that it can define is the relationship with the window manager.

      By contrast, the linux kernel can define both its driver interface (how it interacts with hardware) and its API (how software interacts with it). The kernel pushes complexity into the driver space. X is stuck managing that complexity.

      X also suffers from having a complicated function. Managing graphical relations is computationally intensive and difficult. That's why the GPU is separate from the CPU -- to allow for specialization of these complex functions.

      A third problem is that X is more general purpose than many drivers. It would be easier if it only had to work with one monitor and graphics card, but the reality is that it is expected to work with all of them. This is also true of the kernel, but the kernel has greater ability to push the heavy lifting into the hardware's driver than X does.

      Finally, I think that one of the biggest advantages that the kernel has over X is that it is adjacent to more things. X lies between the kernel, the graphics hardware, and the window manager. Generally, X uses the kernel rather than the other way around. Therefore, it's only people that are working on graphics hardware and the window manager who are interacting with X and therefore likely to find something that they want to change. By contrast, any program might make a kernel call.

      Similarly, KDE/Qt and Gnome are accessed directly by many programs. Programs should be accessing X through the window manager.

      All that said, you are probably correct about X needing to split itself into smaller, more elegantly abstracted pieces. However, even if X does that, it is still likely that it will be under documented with relatively less participation than other projects. While fundamental, it's simply not adjacent to enough other software to recruit easily. Without recruits, who is going to write the documentation and tutorials needed to gather more recruits?

      Of course, we may simply be confusing words here. You may be using complicated to refer to what I would call inelegant or non-modular.
  2. Paid developers? by siride · · Score: 5, Interesting

    Aside from Keith Packard and Dave Airlie, and maybe one or two others, how many paid full-time X developers are there? Watching the mailing list, it seems like there's a couple of volunteers, some people who submit the occasional patch but otherwise work on Qt, or GNOME or whatever, and then the core listed above. I think there just isn't enough manpower right now and the distros, instead of fixing that problem, just maintain their own patchsets and do a "good enough" job to make X work smoothly for their releases, and leave it at that. Clearly, nobody wants to make X a priority and it shows. The Wiki is almost never up to date, it's nigh on impossible to build a working X system from git, even with the couple of half-arsed build scripts available from the mailing list (for my part, I have never been able to get it to build completely, and not for lack of trying or ability). The mailing list is full of academic arguments over color specs and other pointless things, or people asking for help. There used to be a lot of discussion on how to improve X and also, how to get things done. That no longer happens. What the distros and Linux companies need to do is get more people working directly on X and get serious about making X a serious project. It's not just some option piece of software that nobody has to care about. It's only one of the most important aspects of desktop Linux. And it just makes no sense to me that no distros are really spearheading X development. If they don't take the time to make this an issue, X will continue to atrophy, further limiting Linux's potential in the market.

  3. Maybe it's time to dump X by archeopterix · · Score: 5, Interesting
    Here[pdf warning] is an interesting article from James Gosling and it pretty much explains why making the GUI system a server was necessary in the past but is not such a good idea anymore.

    Perhaps X should be replaced, not improved.

  4. Re:You Are by jjohnson · · Score: 4, Interesting

    How many people on here have the capacity to actually make a useful contribution to X.org? Leave aside the organizational complaints about delays in getting patches accepted or commit bits set.

    Your "provocative" posts are probably counterproductive if your intent is to get X.org some more community contribution. Legitimate complaints met with 'fix it yourself' are what push people to OSX.

    --
    Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.