From AuroraUX

Jump to: navigation, search

Introduction to Xorg-7.5

What everyone simply refers to as X, is the X windowing system. It is the piece of software that is used to provide a graphical output to the screen, it also takes the inputs from the keyboard and the mouse. X does not determine what the windows of the graphical interface look like, it provides the framework for the window manager to do this. Understanding X

If you are familiar with X

X has been divided into modules, there are over two hundred of them. They are not all needed, some are for older drivers and some are for old legacy software that was part of X. Equally there are newer parts in the source tree for future versions of X.

X by Source Tree

X can be divided by source tree into apps, data, docs, drivers, font, lib, proto, util, Xserver

  • Xorg Utilities
  • Xorg Protocol Headers
  • Xorg Libraries
  • Xbitmaps

X by Necessity

It can also be logically divided into other groupings.* Module Descriptions

  • Core X11 runtime - Things every basic desktop system should have to run. You could run specialized/embedded environments with less, but a general purpose desktop should probably have them all.
  • Core X11 build/development/install - Things you don't need for running X, but need to build the Xorg modular tree, or to build/install additional X software or fonts.
  • Extended X11 platform - Additional useful utilities that many general purpose desktops will want to have installed, but not everyone will.
  • Legacy X11 platform - Utilities used in classic X desktops, but which desktops like GNOME and KDE generally provide their own versions of, so you may not need if you plan to exclusively use/support one of those desktops, but would want for users with existing desktop environments. Also, software you may need to build and/or run legacy third-party apps, like apps using Xt-based toolkits like Motif/Xaw or software built with Imakefiles.
  • Experimental- Stuff which will likely become part of the X Core in the future but isn't quite there yet.
  • Obsolete/deprecated - Things we shipped in this release to complete the monolith -> modular transition, but don't recommend most people use and which will probably not be included in the future. Suggested replacements are shown for each of these.
  • Sample/demo/test apps - Primarily useful to developers or people needing to test that various extensions are working properly.

External Dependencies

The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility.

  • libXau
  • xcb-proto
  • libxcb
  • Building XCB on Solaris Notes

References