Release Notes for X11R7.1

The X.Org Foundation

22 May 2006

These release notes contains information about features and their status in the X.Org Foundation X11R7.1 release.


Table of Contents
1. Introduction to the X11R7.1 Release
2. Summary of new features in X11R7.1
2.1. Updated keyboard mappings
2.2. Video driver enhancements
3. Drivers
3.1. Video Drivers
3.2. Input Drivers
4. Overview of X11R7.1
4.1. Loader and Modules
4.2. Configuration File
4.3. Command Line Options
4.4. XAA
4.5. Multi-head
4.6. Xinerama
4.7. DGA version 2
4.8. DDC
4.8.1. Changed behavior caused by DDC.
4.9. GLX and the Direct Rendering Infrastructure (DRI)
4.10. XVideo Extension (Xv)
4.11. X Rendering Extension (Render)
4.11.1. The Xft Library
4.11.2. Application Support For Anti-Aliased Text
4.12. Other extensions
4.13. Font support
4.14. TrueType support
4.15. CID font support
4.16. Internationalisation of the scalable font backends
4.17. Large font optimization
4.18. Unicode/ISO 10646 support
4.19. Xlib Compose file support and extensions
4.20. Bitstream Vera fonts
4.21. Luxi fonts from Bigelow and Holmes
5. Miscellaneous
5.1. Legacy keyboard driver phase-out
5.2. Socket directory ownership and permissions
5.3. Composite exposes extra visuals
6. Deprecated components and removal plans
7. Attributions/Acknowledgements/Credits

1. Introduction to the X11R7.1 Release

This release is the second modular release of the X Window System. It marks the transition to an accelerated development process based on lightweight releases of individual modules, with integrated roll-up releases every six months. This model has worked well for other major open source projects like Gnome and the Linux kernel, and empowers the user community by delivering new features and bug fixes as they happen. The next official release will be X11R7.2 and is expected in late 2006.

For historical background on the modularization effort see the Modularization Proposal. For help with how to build and develop in the new modular tree see Modular Developer's Guide.

We encourage you to submit bug fixes and enhancements to freedesktop.org's bug tracking system using the xorg product, and to discuss them on .

The release numbering is based on the original MIT X numbering system. X11 refers to the version of the network protocol that the X Window system is based on: Version 11 was first released in 1988 and has been stable for 18 years, with only upward compatible additions to the core X protocol, a record of stability envied in computing. Formal releases of X started with X version 9 from MIT; the first commercial X products were based on X version 10. The MIT X Consortium and its successors, the X Consortium, the Open Group X Project Team, and the X.Org Group released versions X11R3 through X11R6.6. Since the founding of the X.Org Foundation in early 2004, five further major releases have been issued, from 6.7 to the current 7.1.

The next section describes what is new in the latest version (7.1) compared with the previous full release (7.0).


2. Summary of new features in X11R7.1

This is a sampling of the new features in X11R7.1. A more complete list of changes can be found in the ChangeLog files that are part of the X source tree.


2.1. Updated keyboard mappings

The requirement for XKB data can, in the modular tree, be satisfied either by the traditional data set (the 'xkbdata' module), or by the dataset from the xkeyboard-config project (the 'xkbdesc' module). xkbdesc has numerous improvements relative to xkbdata: layouts have been cleaned up for consistency and universal multi-layout support, some new layouts have added, and some layouts have changed names to be more straightforward and ISO compliant. Some setups will need adjustments in order to use xkbdesc. It is now strongly encouraged for all distributions to migrate to xkbdesc.


2.2. Video driver enhancements

Please see the ChangeLog files for individual drivers; there are far too many updates to list here.


3. Drivers

3.1. Video Drivers

X11R7.1 includes the following video drivers:

Driver NameDescriptionFurther Information
apmAlliance Pro MotionREADME.apm
arkArk Logic 
atiATIREADME.ati, README.r128, r128(4), radeon(4)
chipsChips & TechnologiesREADME.chips, chips(4)
cirrusCirrus Logic 
cyrix (*)Cyrix MediaGXREADME.cyrix
fbdevLinux framebuffer devicefbdev(4)
glideGlide2x (3Dfx)glide(4)
glint3Dlabs, TIglint(4)
i128Number NineREADME.I128, i128(4)
i740Intel i740README.i740
i810Intel i8xxREADME.i810, i810(4)
imsttIntegrated Micro Solns 
mgaMatroxmga(4)
neomagicNeoMagicneomagic(4)
newport (-)SGI NewportREADME.newport, newport(4)
nscNational Semiconductornsc(4)
nvNVIDIAnv(4)
renditionRenditionREADME.rendition, rendition(4)
s3S3 (not ViRGE or Savage) 
s3virgeS3 ViRGEREADME.s3virge, s3virge(4)
savageS3 Savagesavage(4)
siliconmotionSilicon Motionsiliconmotion(4)
sisSiSREADME.SiS, sis(4)
sisusbSiS USBsisusb(4)
sunbw2 (+)Sun bw2 
suncg14 (+)Sun cg14 
suncg3 (+)Sun cg3 
suncg6 (+)Sun GX and Turbo GX 
sunffb (+)Sun Creator/3D, Elite 3D 
sunleo (+)Sun Leo (ZX) 
suntcx (+)Sun TCX 
tdfx3Dfxtdfx(4)
tgaDEC TGAREADME.DECtga
tridentTridenttrident(4)
tsengTseng Labs 
vesaVESAvesa(4)
vgaGeneric VGAvga(4)
viaVIAvia(4)
vmwareVMware guest OSvmware(4)

Drivers marked with (*) are present in a preliminary form in this release, but are not complete and/or stable yet.

Drivers marked with (+) are for Linux/Sparc only.

Drivers marked with (-) are for Linux/mips only.

Darwin/Mac OS X uses IOKit drivers and does not use the module loader drivers listed above. Further information can be found in README.Darwin.


3.2. Input Drivers

X11R7.1 includes the following input drivers:

Driver NameDescriptionFurther Information
aiptek(*)Aiptek USB tabletaiptek(4)
calcompCalcomp 
citronCitroncitron(4)
digitaledgeDigitalEdge 
dmcDMCdmc(4)
dynaproDynapro 
elographicsEloGraphics 
evdev(*)EvDev 
fpitFujitsu Stylistic Tablet PCsfpit(4)
hyperpenAiptek HyperPen 6000 
js_xJamStudio pentabletjs_x(4)
kbdgeneric keyboards (alternate)kbd(4)
keyboardgeneric keyboardskeyboard(4)
microtouchMicroTouch 
mousemost mouse devicesmouse(4)
mutouchMicroTouch 
palmaxPalmax PD1000/PD1100palmax(4)
penmountPenMount 
spaceorbSpaceOrb 
summaSummaGraphics 
tek4957Tektronix 4957 tablettek4957(4)
ur98(*)Union Reality UR-F98 headtrackerur98(4)
voiddummy devicevoid(4)

Drivers marked with (*) are available for Linux only.


4. Overview of X11R7.1

On most platforms, X11R7.1 has a single X server binary called Xorg. This binary can either have one or more video and input drivers linked in statically, or more usually, dynamically, and in that manner load the video drivers, input drivers, and other modules that are needed.

X11R7.1 has currently has support for Linux, Solaris, and some BSD OSs on Alpha, PowerPC, IA-64, AMD64, Intel x86, Sparc, and MIPS platforms and is expected to have additional platform support in X11R7.2.


4.1. Loader and Modules

The X server has a built-in run-time loader. As of X11R7.0, it relies on the operating system's native module loader support, which enables better integration with the host operating system (for example: debugger support, memory protection of the stack and heap, smaller code footprint, etc.). The X server makes use of modules for video drivers, X server extensions, font rasterisers, input device drivers, framebuffer layers, and internal components used by some drivers (like XAA),

The module interfaces (both API and ABI) used in this release are subject to change without notice. While we will attempt to provide backward compatibility for the module interfaces, we cannot guarantee this. Compatibility in the other direction is explicitly not guaranteed because new modules may rely on interfaces added in new releases.

Note about module security "The X server runs with root privileges, i.e., the X server loadable modules also run with these privileges. For this reason we recommend that all users be careful to only use loadable modules from reliable sources, otherwise the introduction of viruses and contaminated code can occur and wreak havoc on your system. We hope to have a mechanism for signing/verifying the modules that we provide available in a future release."


4.2. Configuration File

The X server uses a configuration file as the primary mechanism for providing configuration and run-time parameters. The configuration file format is described in detail in the xorg.conf(5) manual page.

This release comes with a graphical configuration tool called "xorgcfg", which also has a text mode interface and can be used to create an initial configuration file. It can also be used to customize existing configurations.

Next in the order of configuration preferences is to use the Xorg server's ability to create a starting configuration file. Run as root:

        Xorg -configure
        
and follow the instructions.

Finally, if all else fails, the trusty old standby text-based tool "xorgconfig" can also be used for generating X server config files.

At least one, and hopefully, all of these configuration options will give you a reasonable starting point for a suitable configuration file. With the automatic mechanism you might even find that you don't need one!

If you do need to customize the configuration file, see the xorg.conf manual page. You can also check the driver-specific manual pages and the related documentation (found at driver tables also.


4.3. Command Line Options

Command line options can be used to override some default parameters and parameters provided in the configuration file. These command line options are described in the Xorg(1) manual page.


4.4. XAA

The XFree86 Acceleration Architecture (XAA) was completely rewritten from scratch for XFree86 4.x and is used in X11R7.1. Most drivers implement acceleration by making use of the XAA module.


4.5. Multi-head

Some multi-head configurations are supported in X11R7.1, primarily with multiple PCI/AGP cards.

One of the main problems is with drivers not sufficiently initializing cards that were not initialized at boot time. This has been improved somewhat with the INT10 support that is used by most drivers (which allows secondary card to be "soft-booted", but in some cases there are other issues that still need to be resolved. Some combinations can be made to work better by changing which card is the primary card (either by using a different PCI slot, or by changing the system BIOS's preference for the primary card).


4.6. Xinerama

Xinerama is an X server extension that allows multiple physical screens to behave as a single screen. With traditional multi-head in X11, windows cannot span or cross physical screens. Xinerama removes this limitation. Xinerama does, however, require that the physical screens all have the same root depth, so it isn't possible, for example, to use an 8-bit screen together with a 16-bit screen in Xinerama mode.

Xinerama is not enabled by default, and can be enabled with the +xinerama command line option for the X server.

Xinerama was included with X11R6.4. The version included in X11R7.1 was completely rewritten for improved performance and correctness.

Known problems:

  • Most window managers are not Xinerama-aware, and so some operations like window placement and resizing might not behave in an ideal way. This is an issue that needs to be dealt with in the individual window managers, and isn't specifically an X server problem.


4.7. DGA version 2

DGA 2.0 is included in 7.1. Documentation for the client libraries can be found in the XDGA(3) man page. A good degree of backward compatibility with version 1.0 is provided. DGA should be considered deprecated; if you are relying on it, please let us know what you need it for so we can find better solutions.


4.8. DDC

The VESA® Display Data Channel (DDC™) standard allows the monitor to tell the video card (or on some cases the computer directly) about itself; particularly the supported screen resolutions and refresh rates.

Partial or complete DDC support is available in most of the video drivers. DDC is enabled by default, but can be disabled with a "Device" section entry: Option "NoDDC". We have support for DDC versions 1 and 2; these can be disabled independently with Option "NoDDC1" and Option "NoDDC2".

At startup the server prints out DDC information from the display, and can use this information to set the default monitor parameters, or to warn about monitor sync limits if those provided in the configuration file don't match those that are detected.


4.8.1. Changed behavior caused by DDC.

Several drivers uses DDC information to set the screen size and pitch. This can be overridden by explicitly resetting it to the and non-DDC default value 75 with the -dpi 75 command line option for the X server, or by specifying appropriate screen dimensions with the "DisplaySize" keyword in the "Monitor" section of the config file.


4.9. GLX and the Direct Rendering Infrastructure (DRI)

Direct rendered OpenGL® support is provided for several hardware platforms by the Direct Rendering Infrastructure (DRI). Further information about DRI can be found at the DRI Project's web site. The 3D core rendering component is provided by Mesa.


4.10. XVideo Extension (Xv)

The XVideo extension is supported in X11R7.1. An XvQueryPortAttributes function has been added as well as support for XvImages. XvImages are XImages in alternate color spaces such as YUV and can be passed to the server through shared memory segments. This allows clients to display YUV data with high quality hardware scaling and filtering.


4.11. X Rendering Extension (Render)

The X Rendering extension provides a 2D rendering model that more closely matches application demands and hardware capabilities. It provides a rendering model derived from Plan 9 based on Porter/Duff image composition rather than binary raster operations.

Using simple compositing operators provided by most hardware, Render can draw anti-aliased text and geometric objects as well as perform translucent image overlays and other image operations not possible with the core X rendering system.

Unlike the core protocol, Render provides no font support for applications, rather it allows applications to upload glyphs for display on the screen. This allows the client greater control over text rendering and complete access to the available font information while still providing hardware acceleration. The Xft library provides font access for Render applications.


4.11.1. The Xft Library

On the client side, the Xft library provides access to fonts for applications using the FreeType library, version 2. One important thing to note is that Xft uses the vertical size of the monitor to compute accurate pixel sizes for provided point sizes; if your monitor doesn't provide accurate information via DDC, you may want to add that information to xorg.conf.

To allow a graceful transition for applications moving from core text rendering to the Render extension, Xft can use either the core rendering requests or the Render extension for text. See the section on FreeType support in Xft for instructions on configuring X11R7.1 to use an existing FreeType installation.

The Xft library uses configuration files, /etc/fonts/fonts.conf and /etc/fonts/local.conf, which contains information about which directories contain font files and also provides a sophisticated font aliasing mechanism. Documentation for that file is included in the Xft(3) man page.


4.11.2. Application Support For Anti-Aliased Text

Only four applications have been modified in X11R7.1 to work with the Render extension and the Xft and FreeType libraries to provide anti-aliased text: xterm, xditview, x11perf and xclock. Migration of other applications may occur in future releases.

By default, xterm uses core fonts through the standard core API. It has a command line option and associated resource to direct it to use Xft instead:

  • -fa family / .VT100.faceName: family. Selects the font family to use.

Xditview will use Xft instead of the core API by default. X11perf includes tests to measure the performance of text rendered in three ways, anti-aliased, anti-aliased with sub-pixel sampling and regular chunky text, but through the Render extension, a path which is currently somewhat slower than core text.

Xclock uses the Render extension to draw the analog face and shares the -fa option and faceName resources with xterm to select a font for the digital mode.


4.12. Other extensions

The XFree86-Misc extension has not been fully ported to the new server architecture yet. This should be completed in a future release.

The XFree86-VidModeExtension extension has been updated, and mostly ported to the new server architecture. The area of mode validation needs further work, and the extension should be used with care. This extension has support for changing the gamma setting at run-time, for modes where this is possible. The xgamma utility makes use of this feature. Compatibility with the 3.3.x version of the extension is provided. The missing parts of this extension and some new features should be completed in a future release.


4.13. Font support

Details about the font support in X11R7.1.x can be found in the README.fonts document.


4.14. TrueType support

X11R6.7 came with two TrueType backends. The functionality from the `X-TrueType' backend has been integrated into the `FreeType' backend which is designed to transparently support all of the functionality from the `X-TrueType' backend with the exception of the font encoding libraries; the `FreeType' backend uses only the fontenc-based encoding system.


4.15. CID font support

Support for CID-keyed fonts is included in X11R7.1 The CID-keyed font format was designed by Adobe Systems for fonts with large character sets. The CID-keyed font support in X11R7.1 was donated by SGI. See the LICENSE document for a copy of the CID Font Code Public License.


4.16. Internationalisation of the scalable font backends

X11R7.1 has a ``fontenc'' layer to allow the scalable font backends to use a common method of font re-encoding. This re-encoding makes it possible to uses fonts in encodings other than their their native encoding. This layer is used by the Type1 and FreeType backends.


4.17. Large font optimization

The glyph metrics array, which all the X clients using a particular font have access to, is placed in shared memory, so as to reduce redundant memory consumption. For non-local clients, the glyph metrics array is transmitted in a compressed format.


4.18. Unicode/ISO 10646 support

What is included in X11R7.1

  • All ``-misc-fixed-*'' BDF fonts are now available in the ISO10646-1 encoding and cover at least the 614 characters found in ISO 8859-{1-5,7-10,14,15}, CP1252, and MES-1. The non-bold fonts also cover all Windows Glyph List 4 (WGL4) characters, including those found in all 8-bit MS-DOS/Windows code pages. The 8-bit variants of the ``-misc-fixed-*'' BDF fonts (ISO8859-1, ISO8859-2, KOI8-R, etc.) have all been automatically generated from the new ISO10646-1 master fonts.

  • Some ``-misc-fixed-*'' BDF ISO10646-1 fonts now cover a comprehensive Unicode repertoire of over 3000 characters including all Latin, Greek, Cyrillic, Armenian, Gregorian, Hebrew, IPA, and APL characters, plus numerous scientific, typographic, technical, and backward-compatibility symbols. Some of these fonts also cover Arabic, Ethiopian, Thai, Han/Kanji, Hangul, full ISO 8859, and more. For the 6x13 font there is now a 12x13ja Kanji extension and for the 9x18 font there is a 18x18ja Kanji/Han/Hangul extension, which covers all ISO-2022-JP-2 (RFC 1554) characters. The 9x18 font can also be used to implement simple combining characters by accent overstriking. For more information, read Markus Kuhn's UTF-8 and Unicode FAQ.

  • Mark Leisher's ClearlyU proportional font (similar to Computer Modern).

  • ISO 10646/Unicode UTF-8 Level 1 support added to xterm (enabled with the -u8 option).

  • The Freetype backend (the "freetype" module) supports Unicode-encoded fonts.


4.19. Xlib Compose file support and extensions

A more flexible Compose file processing system was added to Xlib in X11R7.1. The compose file is searched for in the following order:

  1. If the environment variable $XCOMPOSEFILE is set, its value is used as the name of the Compose file.

  2. If the user's home directory has a file named ".XCompose", it is used as the Compose file.

  3. The old method is used, and the compose file is "<xlocaledir>/<localename>/Compose".

Compose files can now use an "include" instruction. This allows local modifications to be made to existing compose files without including all of the content directly. For example, the system's iso8859-1 compose file can be included with a line like this:

        include "/usr/X11R6/lib/X11/locale/iso8859-1/Compose"
        
There are two substitutions that can be made in the file name of the include instruction. %H expands to the user's home directory (the $HOME environment variable), and %L expands to the name of the locale specific Compose file (i.e., "<xlocaledir>/<localename>/Compose").

For example, you can include in your compose file the default Compose file by using:

        include "%L"
        
and then rewrite only the few rules that you need to change. New compose rules can be added, and previous ones replaced.

Finally, it is no longer necessary to specify in the right part of a rule a locale encoded string in addition to the keysym name. If the string is omitted, Xlib figures it out from the keysym according to the current locale. I.e., if a rule looks like:

        <dead_grave> <A> : "\300" Agrave
        
the result of the composition is always the letter with the "\300" code. But if the rule is:
        <dead_grave> <A> : Agrave
        
the result depends on how Agrave is mapped in the current locale.


4.20. Bitstream Vera fonts

X11R7.1 includes the Bitstream Vera family of typefaces in TrueType format. This family includes the ``Bitstream Vera Sans'', ``Bitstream Vera Sans Mono'' and ``Bitstream Vera Serif'' in Roman and Bold variants as well as the ``Bitstream Vera Sans'' and ``Bitstream Vera Sans Mono'' in Oblique and Bold Oblique. These fonts include all of the glyphs needed for ISO  8859 parts 1 9 and 15.

The license terms for the Vera fonts are included in the file COPYRIGHT.Vera.


4.21. Luxi fonts from Bigelow and Holmes

The X distribution includes the ``Luxi'' family of Type 1 fonts and TrueType fonts. This family consists of the fonts ``Luxi Serif'', ``Luxi Sans'' and ``Luxi Mono'' in Roman, oblique, bold and bold oblique variants. The TrueType version have glyphs covering the basic ASCII Unicode range, the Latin 1 range, as well as the Extended Latin range and some additional punctuation characters. In particular, these fonts include all the glyphs needed for ISO 8859 parts 1, 2, 3, 4, 9, 13 and 15, as well as all the glyphs in the Adobe Standard encoding and the Windows 3.1 character set.

The glyph coverage of the Type 1 versions is somewhat reduced, and only covers ISO 8859 parts 1, 2 and 15 as well as the Adobe Standard encoding.

The Luxi fonts are original designs by Kris Holmes and Charles Bigelow from Bigelow and Holmes Inc., who developed the Luxi typeface designs in Ikarus digital format. URW++ Design and Development GmbH converted the Ikarus format fonts to TrueType and Type 1 font programs and implemented the grid-fitting "hints" and kerning tables in the Luxi fonts.

The license terms for the Luxi fonts are included in the file `COPYRIGHT.BH', as well as in the License document. For further information, please contact or , or consult the URW++ web site.


5. Miscellaneous

This section describes other items of note for the X11R7.1 release.


5.1. Legacy keyboard driver phase-out

The legacy keyboard driver is no longer compiled into the X server by default on certain platforms (including Linux). The newer kbd driver replaces the older built-in driver. It is suggested that, if the X server says that it cannot load the keyboard driver, then the xorg.conf file should be updated to use the new kbd driver, which can be done by changing the Driver line in the InputDevice section. For example,

        Section "InputDevice"
                Identifier  "Keyboard0"
                Driver      "kbd"
        EndSection
        
Note that the driver name is case-sensitive.


5.2. Socket directory ownership and permissions

The socket directories created in /tmp are now required to be owned by root and have their sticky-bit set. If the permissions are not set correctly, the component using this directory will print an error message and fail to start. Common socket directories that are known to be affected include:

        /tmp/.font-unix
        /tmp/.ICE-unix
        /tmp/.X11-unix
        
These directories are used by the font server, xfs, applications using the Inter-Client Exchange protocol (ICE) and the X server, respectively.

There are several solutions to the problem of when to create these directories. They could be created at install time by the system's installer if the /tmp dir is persistent. They could be created at boot time by the system's boot scripts (e.g., the init.d scripts). Or, they could be created by PAM modules at service startup or user login time.

The solution chosen is platform dependent, and the system administrator should be able to handle creating those directories on any systems that do not have the correct ownership or permissions.


5.3. Composite exposes extra visuals

When the Composite extension is enabled via xorg.conf or the command line, a new visual is created. This visual is different from the other visuals used by X applications in that it includes an alpha component. It is used by the compositing manager and other Composite aware applications.

Most X applications ignore this visual since it is not useful to them; however some applications mistakenly try to use it, which will cause them to fail. An environment variable, XLIB_SKIP_ARGB_VISUALS, was added to the X11 library to hide this visual from applications that mistakenly try to use it. If an application fails only when the Composite is enabled, try setting this environment variable before starting the application.

Since Composite is not enabled by default, it is not expected that this issue will be visible to most users.


6. Deprecated components and removal plans

This section lists current plans for removal of obsolete or deprecated components in the X.Org releases. As our releases are open source, users who continue to require these can find the source in previous releases and continue to use these, but the X.Org Foundation and its volunteers have decided the burden of continued maintenance and distribution in the core X11 releases outweighs the benefits of doing so. In some cases, this is simply because no one has volunteered to do continued maintenance, so if software is listed here that you need, you can contact to volunteer to take over maintainership, either inside or outside of the Xorg release process.

Display Postscript (DPS)

The DPS code has been completely dropped as of X11R7.0.

Low-Bandwidth X (LBX)

The LBX extension is disabled by default now, although the code still ships in the 7.1 server. Compared to other solutions like NX and SSH, LBX has generally worse performance and worse security. It will be removed completely in 7.2; users are encouraged to migrate to better solutions.


7. Attributions/Acknowledgements/Credits

This section lists the credits for the X11R7.1 release. For a more detailed breakdown, refer to the ChangeLog file in the X.Org source tree, the ChangeLog's in the xorg product in freedesktop.org's CVS or the 'cvs log' information for individual source files.

These people contributed in some way to X11R7.1

Jonathan Adamczewski, Dave Airlie, Paul Anderson, Eric Anholt, Andrei Barbu, Jesse Barnes, Donnie Berkholz, Alan Coopersmith, Michel Dänzer, Alex Deucher, Radek Doulik, Egbert Eich, Eduard Fuchs, George Fufutos, Alexander Gottwald, Matthieu Herrb, Ben Herrenschmidt, Thomas Hellström, Fredrik Höglund, Kristian Høgsberg, Matthias Hopf, Zephaniah E. Hull, Alan Hourihane, Valery Inozemtsev, Adam Jackson, Deron Johnson, Nicholas Joly, Jaymz Julian, Lars Knoll, Egmont Koblinger, Felix Kühling, Philip Langdale, Kevin E. Martin, Keith Packard, Drew Parsons, Hong Bo Peng, Aaron Plattner, Jeremy C. Reed, David Reveman, Ian Romanick, Zack Rusin, Søren Sandmann, Tilman Sauerbeck, Roland Scheidegger, Dag-Erling Smørgrav, Daniel Stone, Carl Switzky, Luc Verhaegen, Julio M. Merino Vidal, Zhenyu Wang, Alex Williamson, Thomas Winischhofer, David Woodhouse,

The X Window System has been a collaborative effort from its inception. Our apologies for anyone or organization inadvertently overlooked. Many individuals (including major contributors) who worked on X are represented by their employers in this list. If you feel we have left anyone out, please let us know.

This product includes software developed by:

Paul Anderson, Michael Bax, Jehan Bing, Peter Breitenlohner, Alan Coopersmith, Egbert Eich, John Dennis, Fabrizio Gennari, Jim Gettys, Alexander Gottwald, Ralf Habacker Mike Harris, Matthieu Herrb, Alan Hourihane, Harold L Hunt II, Elliot Lee, Jeremy Katz, Kaleb Keithley, Stuart Kreitman, Andreas Luik, Torrey Lyons, Roland Mainz, Kevin E. Martin, Takuma Murakami, Kensuke Matsuzaki, Keith Packard, Ivan Pascal, Earle F. Philhower III, Benjamin Rienfenstahl, Leon Shiman, Toshimitsu Tanaka, Nicholas Wourms.

2d3d Inc., 3Dlabs Inc. Ltd., Aaron Plattner, Adam de Boor, Adam Jackson, Adobe Systems Inc., After X-TT Project, AGE Logic Inc., Alan Coopersmith, Alan Cox, Alan Hourihane, Alexander Gottwald, Alex Deucher, Anders Carlsson, Andreas Luik, Andreas Monitzer, Andreas Robinson, Andrew C Aitchison, Andy Ritger, Angus Lees, Ani Joshi, Anton Zioviev, Apollo Computer Inc., Apple Computer Inc., Ares Software Corp., AT&T Inc., ATI Technologies Inc., BEAM Ltd., Ben Skeggs, Benjamin Herrenschmidt, Benjamin Rienfenstahl, Bigelow and Holmes, Bill Reynolds, Bitstream Inc., Bogdan Diaconescu, Branden Robinson, Brian Fundakowski Feldman, Brian Goines, Brian Paul, Bruno Haible, Bryan Stine, Catharon Productions Inc., Charles Murcko, Chen Xiangyang, Chisato Yamauchi, Chris Constello, Christian Zietz, Cognition Corp., Compaq Computer Corporation, Concurrent Computer Corporation, Conectiva S.A., Corin Anderson, Craig Struble, Daewoo Electronics Co. Ltd., Dale Schumacher, Damien Miller, Daniel Berrange, Daniel Borca, Daniel Stone, Daniver Limited, Daryll Strauss, Data General Corporation, Dave Airlie, David Bateman, David Dawes, David E. Wexelblat, David Holland, David J. McKay, David McCullough, David Mosberger-Tang, David S. Miller, Davor Matic, Deron Johnson, Digeo Inc., Digital Equipment Corporation, Dirk Hohndel, Doug Anson, Dmitry Golubev, Earle F. Philhower III, Edouard TISSERANT, Eduardo Horvath, Egbert Eich, Elliot Lee, Eric Anholt, Eric Fortune, Eric Sunshine, Erik Fortune, Erik Nygren, Evans & Sutherland Computer Corporation, Fabio Massimo Di Nitto, Fabrizio Gennari, Felix Kuehling, Finn Thoegersen, Francesco Zappa Nardelli, Frank C. Earl, Frederic Lepied, Free Software Foundation Inc., Fujitsu Limited, Fujitsu Open Systems Solutions Inc., Fuji Xerox Co. Ltd., Geert Uytterhoeven, Gerrit Jan Akkerman, Gerry Toll, Glenn G. Lai, GNOME Foundation, Go Watanabe, Greg Kroah-Hartman, Greg Parker, Gregory Mokhin, GROUPE BULL, Guy Martin, Hans Oey, Harald Koenig, Harm Hanemaayer, Harold L Hunt II, Harry Langenbacher, Henry A. Worth, Hewlett-Packard Company, Hitachi Ltd, Holger Veit, Howard Greenwell, Hummingbird Communications Ltd., IBM Corporation, Intel Corporation, INTERACTIVE Systems Corporation, International Business Machines Corp., Itai Nahshon, Ivan Kokshaysky, Ivan Pascal, Jakub Jelinek, James Tsillas, Jason Bacon, Jean-loup Gailly, Jeff Hartmann, Jeff Kirk, Jeffrey Hsu, Jehan Bing, Jeremy Katz, Jerome Glisse, Jim Gettys, Jim Tsillas, John Dennis, John Harper, John Heasley, Jon Block, Jon Smirl, Jon Tombs, Jorge Delgado, José Fonseca, Joseph Friedman, Joseph V. Moss, Juliusz Chroboczek, Jyunji Takagi, Kaleb Keithley, Kazushi (Jam) Marukawa, Kazuyuki (ikko-) Okamoto, Kean Johnston, Keith Packard, Keith Whitwell, Kensuke Matsuzaki, Kristian Høgsberg, Larry Wall, Lawrence Berkeley Laboratory, Leif Delgass, Lennart Augustsson, Leon Shiman, Lexmark International Inc., Linus Torvalds, Luc Verhaegen, Machine Vision Holdings Inc., Manfred Brands, Marc Aurele La France Mark Adler, Mark J. Kilgard, Mark Leisher, Mark Smulders, Mark Vojkovich, Marvin Solomon, Massachusetts Institute Of Technology, Matrox Graphics, Matthew Grossman, Matthieu Herrb, Metro Link Inc., Michael Bax, Michael H. Schimek, Michael P. Marking, Michael Schimek, Michael Smith, Michel Daenzer, Mike A. Harris, Ming Yu, MIPS Computer Systems Inc., National Semiconductor, NCR Corporation Inc., Netscape Communications Corporation, Network Computing Devices Inc., Nicholas Miell, Nicholas Wourms, Nicolai Haehnle, Noah Levitt, Nolan Leake, Novell Inc., Nozomi YTOW, NTT Software Corporation, Number Nine Computer Corp., Number Nine Visual Technologies, NVIDIA Corp., Oivier Danet, Oki Technosystems Laboratory Inc., OMRON Corporation, Open Software Foundation, Orest Zborowski, Owen Taylor, Pablo Saratxaga, Panacea Inc., Panagiotis Tsirigotis, Paolo Severini, Pascal Haible, Patrick Lecoanet, Patrick Lerda, Paul Anderson, Paul Elliott, Paul Mackerras, Peter Breitenlohner, Peter Kunzmann, Peter Trattler, Philip Homburg, Precision Insight Inc., Prentice Hall, Quarterdeck Office Systems, Ralf Habacker Randy Hendry, Ranier Keller, Red Hat Inc., Regents of the University of California, Regis Cridlig, Rene Cougnenc, Richard A. Hecker, Richard Burdick, Rich Murphey, Rickard E. Faith, Rik Faith, Robert Chesler, Robert Millan, Robert V. Baron, Robin Cutshaw, Roland Mainz, Ronny Vindenes, Russ Blaine, Ryan Breen, Ryan Lortie, Ryan Underwood, S3 Graphics Inc., Sam Leffler, SciTech Software, Scott Laird, Sebastien Marineau, Shigehiro Nomura, ShoGraphics Inc., Shunsuke Akiyama, Silicon Graphics Computer Systems Inc., Silicon Integrated Systems Corp Inc., Silicon Motion Inc., Simon P. Cooper, Snitily Graphics Consulting Services, Sony Corporation, Søren Sandmann, SRI, Stanislav Brabec, Stefan Dirsch, Stephan Lang, Stephane Marchesin, Steven Lang, Stuart Kreitman, Sun Microsystems Inc., SunSoft Inc., SuSE Inc, Sven Luther, T. A. Phelps, Takis Psarogiannakopoulos, Takuma Murakami, Takuya SHIOZAKI, Tektronix Inc., The DOS-EMU-Development-Team, The Institute of Software Academia Sinica, The NetBSD Foundation, Theo de Raadt, Theodore Ts'o, The Open Group, The Open Software Foundation, The Regents of the University of California, The Santa Cruz Operation Inc., The Weather Channel Inc., The X Consortium, The XFree86 Project Inc., Thomas E. Dickey, Thomas G. Lane, Thomas Hellström, Thomas Mueller, Thomas Roell, Thomas Thanner, Thomas Winischhofer, Thomas Wolfram, Thorsten.Ohl, Tiago Gons, Todd C. Miller, Tomohiro KUBOTA, Torrey Lyons, Torrey T. Lyons, TOSHIBA Corp., Toshimitsu Tanaka, Travis Tilley, Trolltech AS, Tungsten Graphics Inc., Tuomas J. Lukka, Ty Sarna, UCHIYAMA Yasushi, Unicode Inc., UniSoft Group Limited, University of Utah, University of Wisconsin, UNIX System Laboratories Inc., URW++ GmbH, VA Linux Systems, VIA Technologies Inc., Video Electronics Standard, VMware Inc., Vrije Universiteit, Wittawat Yamwong, Wyse Technology Inc., X Consortium, Xi Graphics Inc., X-Oz Technologies, X-TrueType Server Project and their contributors, Yu Shao.

This product includes software developed by The XFree86 Project, Inc (http://www.xfree86.org/) and its contributors.

This produce includes software that is based in part of the work of the FreeType Team (http://www.freetype.org).

This product includes software developed by the University of California, Berkeley and its contributors.

This product includes software developed by Christopher G. Demetriou.

This product includes software developed by the NetBSD Foundation, Inc. and its contributors.

This product includes software developed by the X-Oz Technologies and its contributors.