X.org
In previous times, most Linux distributions and other free software
projects relied on the XFree86 system. Over the years, the structures
within the XFree86 project became were rigid and the project failed to
innovate and keep up with the pace of the wider free software community.
When XFree86 changed its license in February 2004, the active community and
the majority of vendors quickly moved to X.org. X.org is a very active
community and they decided to break up the monolithic code base and to
adopt a more modern build system. As of X.org 7.0, the project moved to
the modular system in which components are developed and released
separately. Effectively, the project introduced a development mechanism
which features two release mechanisms: individual components can be
released as needed and there is an overall release of X.org in which all
stable components are put together. These roll-up releases take place
every six months.
Version | Date | Months |
7.0 | 2005-12-21 | |
7.1 | 2006-05-22 | 5 |
7.2 | 2007-02-15 | 9 |
Past problems
- XFree86 made only infrequent releases every few years, had no plan, and
the project's structures were very rigid.
- The code base was huge and monolithic. It had an archaic build system
that few new developers were comfortable with. This made it hard for new
contributors to get involved and was bad for testing.
Solutions
- X.org moved from a monolithic to a modular system. This made it easier
to perform testing and it made it possible to give contributors write
access to specific components.
- The move to the modular system allowed them the introduction of two
release mechanisms: individual components can make releases on an ongoing
basis and roll-up releases take place every six months.
- The roll-up releases have a fall back mechanism in case a specific
component is not ready for release: the former release of this component
can be incorporated.
Outstanding problems
- The project needs to work the interface between the server and drivers,
so updates to hardware drivers can be released more often than other
components.