Nicolas Mailhot wrote:
Le vendredi 28 janvier 2005 à 14:55 -0600, Rex Dieter a écrit :
On Fri, 28 Jan 2005, Ivan Gyurdiev wrote:
I heard X will be modularized for FC5 so all libraries will be split up like that. Is that not the case?
Where did you hear that? So it's going to get even more complicated?
Xorg people want to unbundle the big pile of code they inherited from XFree86, so they don't have to ship anymore copies of other people stuff (fontconfig, mesa, xterm...), it builds using mainstream autoconf* scripts, drivers can be released as a different pace than the core package (so no full rebuild each time you need to add a new card), etc
This is perhaps a bit lengthy, but several people have asked me to give a history of X lately from my own eyes, and so now is as good a time as any. If you do not like reading long email postings, please stop reading now, and skip to the next message. You have been warned now, and have no excuse to complain about my verbiage if you don't like it. ;o)
Way back when.... The MIT X Consortium was the official standards body that governed the X Window System, and developed the X11 sample implementation (SI). Many different proprietary UNIX vendors used this sample implementation as the basis for their own mostly proprietary X11 implementations. The X11 sample implementation's source code was under an MIT license, which is an open source license.
XFree86 sprung to life back somewhere around 1989 or so, I don't remember the specific year, but google probably can find out the details if someone's terribly interested in the history of XFree86 and the X Window System. XFree86, was (and still is) a fork of the X Window System sample implementation. Over the years, XFree86 included many enhancements and features, some of which ended up being fed back into the "official" sample implementation.
Also, over the years, The MIT X Consortium became just "X Consortium". At the same time, XFree86 grew in popularity due much to the popularity of Linux itself, and the fact most people running Linux were using PC hardware, and XFree86 being specifically developed for x86 hardware had the best hardware support of any X Window System implementation for x86 PC hardware. So XFree86 sprung into popularity due to better hardware support.
However, the XFree86 project was not, is not, and never wanted to be a standards body. The XFree86 project just wanted to provide the best X Window System implementation, and being the defacto X implementation most widely in use, I believe that goal was achieved. Nonetheless, the X Consortium was still the official standards body tasked with stewardship of the X Window System. Over time, and a bit of reorganization, the X Consortium became "X.Org", and continued to be the official X standards body. Unfortunately, over time X.Org contributions to the X Window System slowed down quite significantly, and releases of the sample implementation were becoming further and further apart also. There was a lot of time between the release of X11R6.3, X11R6.4, X11R6.5, and X11R6.6.
After X11R6.6, X.Org seemed to almost vanish completely except for the website. There wasn't much activity going on, and X.Org and it's predecessor organizations were not very community oriented, so it seemed that the standards body governing X had perhaps fallen into irrelevance.
XFree86.org, continued to incorporate new features and changes from all of the official X Window System sample implementation releases into each new XFree86 release, up to and including X11R6.6.
X.Org was relatively motionless for a few years, and (to me anyway) it started to seem like it might stay that way.
About a year and a half ago however, there was a desire in the open source community for the development process behind the X Window System to become much more open and public like that of most other open source projects, with open mailing lists, more freely available read/write CVS, and to try to kick-start the X Window System back on track. Many felt that technological advancement of X was moving at a snail's pace, and that in order for improvements to happen at a fast enough pace to meet and continue to meet the needs of the open source community, that new life needed to be breathed not just into X itself, but also into the organizations behind the X Window System, and the processes and policies of how things were done, in hopes that X could benefit from some of the open source lessons learned from the GNOME project, KDE project, and other highly successful projects out there, many of which are considered the leading edge of OSS.
There was a lot of discussion about how to do this, but in the end, the decision ended up being to try to gather interest in the X.Org members to revitalize X.Org, and get the X Window System back on track, making it a more open project, with more open and accessible processes, etc.
The result of this community effort, was last year, in January 2004 roughly, "The X.Org Foundation" was formed as a non-profit organization, with a goal of turning the "official" X Window System into a completely open community project.
The last release of the X.Org sample implementation (X11R6.6) however was a few years old, and hadn't kept up with many of the improvements added to XFree86 over the years. Since the XFree86 codebase, originally forked many many years ago from the official X11 had much better video hardware support, and various other improvements, it would be a shame to throw all that away.
It was decided that it would be more work to backport all of the various XFree86 improvements on top of X11R6.6 and some work done since then, than it would be to just start with the last version of XFree86 codebase prior to the XFree86 license change last year, and then incorporate various X.Org sample implementation features back into the new tree, and begin development of X11R6.7 from there.
So XFree86 is a fork of the official X Window System, but the new official X Window System is also in a way a fork of XFree86. ;o) Really though, they both stem from the exact same source code, and have developed separately over time, with some of the code trickling back and forth as time has went on. The current X.Org could be instead however, viewed as a major "merge" of the XFree86 code back into the official X Window System, rather than a fork of XFree86, as that would be a bit more accurate IMHO.
Now that I've said that... A large portion of the code "inherited" from XFree86, is actually the X.Org original code in the first place. ;o) The current X.Org wants to just improve the code in general, rather than to remove XFree86 contributed things. XFree86 did afterall contribute a lot of great things to the X Window System. The new X.Org Foundation wants to take X now to the next level, and perhaps even to beat Microsoft to the punch with snazzy desktop features before Longhorn ships. ;o)
It means packaging will probably get easier because you won't have an enormous srpm that generates scores of packages (with a large part of the big archive content disable to use system libraries instead) but lots of different source archives.
Yep, that is one of the major advantages of having X11 modularized. There are a tonne of advantages, both for developers, distribution packagers, system administrators, and end users. It is a natural evolution taking place which will simplify our lives, and bring world peace.
I doubt they manage to pull it out for FC5 though - it's an enormous task and all the OS are not created equal (some do not have their own fontconfig module...), so some port maintainers push for keeping an unified blob.
Fedora Core is on a roughly 6 month devel cycle, so FC5 should be released at roughly the same time in 2005 as FC3 was released in 2004. There is quite a bit of work that needs to b done before the X modularization work is completed, but the process has now officially been accepted by X.Org, and planning has been started. Some X.Org people believe a summer release would be a good goal to aim for, but personally I think (with no disrespect intended) that they are greatly underestimating the work involved and the time it will take to get everything in place, deal with bugs, etc. and finalize the release. My personal voodoo prediction currently, is that the next major release of X.Org (not counting minor 6.8.2 or 6.8.3, etc releases) will be sometime around August or September 2005.
Now quick, someone go set up a hockey pool to bet money on who's release date prediction is closest to the official date later this year. ;o)
Ok, rest your eyes now before reading any more email.
;)