dwww Home | Manual pages | Find package

xorg.conf(5)                  File Formats Manual                  xorg.conf(5)

NAME
       xorg.conf, xorg.conf.d - configuration files for Xorg X server

INTRODUCTION
       Xorg  supports  several mechanisms for supplying/obtaining configuration
       and run-time parameters: command line  options,  environment  variables,
       the  xorg.conf  and xorg.conf.d configuration files, auto-detection, and
       fallback defaults. When the same information is supplied  in  more  than
       one  way,  the  highest precedence mechanism is used. The list of mecha-
       nisms is ordered from highest precedence to lowest. Note  that  not  all
       parameters  can  be supplied via all methods. The available command line
       options and environment variables (and some defaults) are  described  in
       the Xserver(1) and Xorg(1) manual pages. Most configuration file parame-
       ters,  with  their defaults, are described below. Driver and module spe-
       cific configuration parameters are described in the relevant  driver  or
       module manual page.

DESCRIPTION
       Xorg  uses a configuration file called xorg.conf and files ending in the
       suffix .conf from the directory xorg.conf.d for its initial setup.   The
       xorg.conf  configuration  file  is  searched for in the following places
       when the server is started as a normal user:

           /etc/X11/<cmdline>
           /usr/etc/X11/<cmdline>
           /etc/X11/$XORGCONFIG
           /usr/etc/X11/$XORGCONFIG
           /etc/X11/xorg.conf
           /etc/xorg.conf
           /usr/etc/X11/xorg.conf.<hostname>
           /usr/etc/X11/xorg.conf
           /usr/lib/X11/xorg.conf.<hostname>
           /usr/lib/X11/xorg.conf

       where <cmdline> is a relative path (with no “..”  components)  specified
       with  the  -config command line option, $XORGCONFIG is the relative path
       (with no “..” components) specified by that  environment  variable,  and
       <hostname> is the machine's hostname as reported by gethostname(3).

       When  the  Xorg  server  is  started by the “root” user, the config file
       search locations are as follows:

           <cmdline>
           /etc/X11/<cmdline>
           /usr/etc/X11/<cmdline>
           $XORGCONFIG
           /etc/X11/$XORGCONFIG
           /usr/etc/X11/$XORGCONFIG
           /etc/X11/xorg.conf
           /etc/xorg.conf
           /usr/etc/X11/xorg.conf.<hostname>
           /usr/etc/X11/xorg.conf
           /usr/lib/X11/xorg.conf.<hostname>
           /usr/lib/X11/xorg.conf

       where <cmdline> is the path specified with the -config command line  op-
       tion (which may be absolute or relative), $XORGCONFIG is the path speci-
       fied  by  that environment variable (absolute or relative), $HOME is the
       path specified by that environment variable  (usually  the  home  direc-
       tory),  and <hostname> is the machine's hostname as reported by gethost-
       name(3).

       Additional configuration files are searched for in the following  direc-
       tories when the server is started as a normal user:

           /etc/X11/<cmdline>
           /etc/X11/<cmdline>
           /etc/X11/xorg.conf.d
           /etc/X11/xorg.conf.d

       where  <cmdline>  is a relative path (with no “..” components) specified
       with the -configdir command line option.

       When the Xorg server is started by the “root” user, the config directory
       search locations are as follows:

           <cmdline>
           /etc/X11/<cmdline>
           /etc/X11/<cmdline>
           /etc/X11/xorg.conf.d
           /etc/X11/xorg.conf.d

       where <cmdline> is the path specified with the -configdir  command  line
       option (which may be absolute or relative).

       Finally,  configuration  files  will also be searched for in a directory
       reserved for system use.  This is to separate configuration  files  from
       the  vendor  or  3rd  party packages from those of local administration.
       These files are found in the following directory:

           /usr/share/X11/xorg.conf.d

       The xorg.conf and xorg.conf.d files are composed of a number of sections
       which may be present in any order, or omitted to use default  configura-
       tion values.  Each section has the form:

           Section  "SectionName"
               SectionEntry
               ...
           EndSection

       The section names are:

           Files          File pathnames
           ServerFlags    Server flags
           Module         Dynamic module loading
           Extensions     Extension enabling
           InputDevice    Input device description
           InputClass     Input class description
           OutputClass    Output class description
           Device         Graphics device description
           VideoAdaptor   Xv video adaptor description
           Monitor        Monitor description
           Modes          Video modes descriptions
           Screen         Screen configuration
           ServerLayout   Overall layout
           DRI            DRI-specific configuration
           Vendor         Vendor-specific configuration

       The  following  obsolete section names are still recognised for compati-
       bility purposes.  In new config files, the InputDevice section should be
       used instead.

           Keyboard       Keyboard configuration
           Pointer        Pointer/mouse configuration

       The old XInput section is no longer recognised.

       The ServerLayout sections are at the highest level.  They bind  together
       the  input and output devices that will be used in a session.  The input
       devices are described in the InputDevice sections.  Output devices  usu-
       ally  consist of multiple independent components (e.g., a graphics board
       and a monitor).  These multiple components are  bound  together  in  the
       Screen sections, and it is these that are referenced by the ServerLayout
       section.  Each Screen section binds together a graphics board and a mon-
       itor.  The graphics boards are described in the Device sections, and the
       monitors are described in the Monitor sections.

       Config  file  keywords  are case-insensitive, and “_” characters are ig-
       nored.  Most strings (including Option names) are also case-insensitive,
       and insensitive to white space and “_” characters.

       Each config file entry usually takes up a single line in the file.  They
       consist of a keyword, which is possibly followed by one  or  more  argu-
       ments,  with the number and types of the arguments depending on the key-
       word.  The argument types are:

           Integer     an integer number in decimal, hex or octal
           Real        a floating point number
           String      a string enclosed in double quote marks (")

       Note: hex integer values must be prefixed with “0x”,  and  octal  values
       with “0”.

       A special keyword called Option may be used to provide free-form data to
       various  components  of the server.  The Option keyword takes either one
       or two string arguments.  The first is the option name, and the optional
       second argument is the option value.  Some commonly  used  option  value
       types include:

           Integer     an integer number in decimal, hex or octal
           Real        a floating point number
           String      a sequence of characters
           Boolean     a boolean value (see below)
           Frequency   a frequency value (see below)

       Note  that  all  Option  values,  not  just strings, must be enclosed in
       quotes.

       Boolean options may optionally have a value specified.  When no value is
       specified, the option's value is TRUE.   The  following  boolean  option
       values are recognised as TRUE:

           1, on, true, yes

       and the following boolean option values are recognised as FALSE:

           0, off, false, no

       If  an  option  name  is  prefixed  with  "No", then the option value is
       negated.

       Example: the following option entries are equivalent:

           Option "Accel"   "Off"
           Option "NoAccel"
           Option "NoAccel" "On"
           Option "Accel"   "false"
           Option "Accel"   "no"

       Frequency option values consist of a real number that is optionally fol-
       lowed by one of the following frequency units:

           Hz, k, kHz, M, MHz

       When the unit name is omitted, the correct units will be determined from
       the value and the expectations of the appropriate range  of  the  value.
       It  is  recommended  that  the units always be specified when using fre-
       quency option values to avoid any errors in determining the value.

FILES SECTION
       The Files section is used to specify some path  names  required  by  the
       server.   Some of these paths can also be set from the command line (see
       Xserver(1) and Xorg(1)).  The command line settings override the  values
       specified in the config file.  The Files section is optional, as are all
       of the entries that may appear in it.

       The entries that can appear in this section are:

       FontPath "path"
              sets  the  search path for fonts.  This path is a comma separated
              list of font path elements which the  Xorg  server  searches  for
              font  databases.  Multiple FontPath entries may be specified, and
              they will be concatenated to build up the fontpath  used  by  the
              server.  Font path elements can be absolute directory paths, cat-
              alogue  directories  or  a font server identifier. The formats of
              the later two are explained below:

              Catalogue directories:

                  Catalogue directories can be specified using the prefix cata-
                  logue: before the directory name. The directory can  then  be
                  populated  with  symlinks  pointing to the real font directo-
                  ries, using the following syntax in the symlink name:

                      <identifier>:[attribute]:pri=<priority>

                  where <identifier> is an alphanumeric identifier, [attribute]
                  is an attribute which will be passed to  the  underlying  FPE
                  and  <priority>  is a number used to order the fontfile FPEs.
                  Examples:

                      75dpi:unscaled:pri=20 -> /usr/share/X11/fonts/75dpi
                      gscript:pri=60 -> /usr/share/fonts/default/ghostscript
                      misc:unscaled:pri=10 -> /usr/share/X11/fonts/misc

              Font server identifiers:

                  Font server identifiers have the form:

                      <trans>/<hostname>:<port-number>

                  where <trans> is the transport type to use to connect to  the
                  font  server (e.g., unix for UNIX-domain sockets or tcp for a
                  TCP/IP connection), <hostname> is the hostname of the machine
                  running the font server, and <port-number> is the port number
                  that the font server is listening on (usually 7100).

              When this entry is not specified in the config file,  the  server
              falls  back  to the compiled-in default font path, which contains
              the following font path elements (which can be set inside a cata-
              logue directory):

                  /usr/share/fonts/X11/misc/
                  /usr/share/fonts/X11/TTF/
                  /usr/share/fonts/X11/OTF/
                  /usr/share/fonts/X11/Type1/
                  /usr/share/fonts/X11/100dpi/
                  /usr/share/fonts/X11/75dpi/

              Font path elements that are found to be invalid are removed  from
              the font path when the server starts up.

       ModulePath "path"
              sets the search path for loadable Xorg server modules.  This path
              is  a  comma  separated list of directories which the Xorg server
              searches for loadable modules loading  in  the  order  specified.
              Multiple  ModulePath  entries  may be specified, and they will be
              concatenated to build the module search path used by the  server.
              The default module path is

                  /usr/lib/xorg/modules

       XkbDir "path"
              sets  the  base directory for keyboard layout files.  The -xkbdir
              command line option can be used to override  this.   The  default
              directory is

                  /usr/share/X11/xkb

SERVERFLAGS SECTION
       In  addition  to options specific to this section (described below), the
       ServerFlags section is used to specify some global Xorg server  options.
       All of the entries in this section are Options, although for compatibil-
       ity  purposes some of the old style entries are still recognised.  Those
       old style entries are not documented here, and using  them  is  discour-
       aged.   The ServerFlags section is optional, as are the entries that may
       be specified in it.

       Options specified in this section (with the exception of  the  "Default-
       ServerLayout"  Option) may be overridden by Options specified in the ac-
       tive ServerLayout section.  Options with command  line  equivalents  are
       overridden  when  their  command  line  equivalent is used.  The options
       recognised by this section are:

       Option "Debug"  "string"
              This comma-separated list provides a way to control  various  de-
              bugging  switches  from  the config file.  At the moment the only
              defined value is dmabuf_capable which instructs glamor to  enable
              some unstable buffer management code.

       Option "DefaultServerLayout"  "layout-id"
              This specifies the default ServerLayout section to use in the ab-
              sence of the -layout command line option.

       Option "DontVTSwitch"  "boolean"
              This  disallows  the  use  of  the Ctrl+Alt+Fn sequence (where Fn
              refers to one of the numbered function keys).  That  sequence  is
              normally  used to switch to another "virtual terminal" on operat-
              ing systems that have this feature.  When this option is enabled,
              that key sequence  has  no  special  meaning  and  is  passed  to
              clients.  Default: off.

       Option "DontZap"  "boolean"
              This  disallows  the use of the Terminate_Server XKB action (usu-
              ally on Ctrl+Alt+Backspace, depending on XKB options).  This  ac-
              tion  is  normally  used to terminate the Xorg server.  When this
              option is enabled, the action has no effect.  Default: off.

       Option "DontZoom"  "boolean"
              This  disallows  the  use   of   the   Ctrl+Alt+Keypad-Plus   and
              Ctrl+Alt+Keypad-Minus  sequences.   These sequences allows you to
              switch between video modes.  When this option is  enabled,  those
              key  sequences have no special meaning and are passed to clients.
              Default: off.

       Option "DisableVidModeExtension"  "boolean"
              This disables the parts of the  VidMode  extension  used  by  the
              xvidtune  client that can be used to change the video modes.  De-
              fault: the VidMode extension is enabled.

       Option "AllowNonLocalXvidtune"  "boolean"
              This allows the xvidtune client (and other clients that  use  the
              VidMode extension) to connect from another host.  Default: off.

       Option "AllowMouseOpenFail"  "boolean"
              This  tells  the mousedrv(4) and vmmouse(4) drivers to not report
              failure if the mouse device can't be opened/initialised.  It  has
              no effect on the evdev(4) or other drivers.  Default: false.

       Option "BlankTime"  "time"
              sets  the  inactivity  timeout for the blank phase of the screen-
              saver.  time is in minutes.   This  is  equivalent  to  the  Xorg
              server's  -s  flag, and the value can be changed at run-time with
              xset(1).  Default: 10 minutes.

       Option "StandbyTime"  "time"
              sets the inactivity timeout for the standby phase of  DPMS  mode.
              time is in minutes, and the value can be changed at run-time with
              xset(1).   Default:  10  minutes.  This is only suitable for VESA
              DPMS compatible monitors, and may not be supported by  all  video
              drivers.  It is only enabled for screens that have the "DPMS" op-
              tion set (see the MONITOR section below).

       Option "SuspendTime"  "time"
              sets  the  inactivity timeout for the suspend phase of DPMS mode.
              time is in minutes, and the value can be changed at run-time with
              xset(1).  Default: 10 minutes.  This is only  suitable  for  VESA
              DPMS  compatible  monitors, and may not be supported by all video
              drivers.  It is only enabled for screens that have the "DPMS" op-
              tion set (see the MONITOR section below).

       Option "OffTime"  "time"
              sets the inactivity timeout for the off phase of DPMS mode.  time
              is in minutes, and the value can  be  changed  at  run-time  with
              xset(1).   Default:  10  minutes.  This is only suitable for VESA
              DPMS compatible monitors, and may not be supported by  all  video
              drivers.  It is only enabled for screens that have the "DPMS" op-
              tion set (see the MONITOR section below).

       Option "MaxClients"  "integer"
              Set  the  maximum  number  of clients allowed to connect to the X
              server.  Acceptable values are 64, 128, 256 or 512.

       Option "NoPM"  "boolean"
              Disables something to do with power management events.   Default:
              PM enabled on platforms that support it.

       Option "Xinerama"  "boolean"
              enable or disable XINERAMA extension.  Default is disabled.

       Option "IndirectGLX" "boolean"
              enable  or  disable  indirect GLX contexts. Indirect GLX contexts
              are disabled by default.

       Option "DRI2" "boolean"
              enable or disable DRI2. DRI2 is disabled by default.

       Option "GlxVisuals" "string"
              This option controls how many GLX visuals the  GLX  modules  sets
              up.   The default value is typical, which will setup up a typical
              subset of the GLXFBConfigs provided by the driver as GLX visuals.
              Other options are minimal, which will set up the minimal set  al-
              lowed by the GLX specification and all which will setup GLX visu-
              als for all GLXFBConfigs.

       Option "UseDefaultFontPath" "boolean"
              Include  the  default font path even if other paths are specified
              in xorg.conf. If enabled, other font paths are included as  well.
              Enabled by default.

       Option "IgnoreABI" "boolean"
              Allow  modules  built  for  a different, potentially incompatible
              version of the X server to load. Disabled by default.

       Option "AutoAddDevices" "boolean"
              If this option is disabled, then no devices will  be  added  from
              the HAL or udev backends. Enabled by default.

       Option "AutoEnableDevices" "boolean"
              If  this  option is disabled, then the devices will be added (and
              the DevicePresenceNotify event sent), but not enabled, thus leav-
              ing policy up to the client.  Enabled by default.

       Option "AutoAddGPU" "boolean"
              If this option is disabled, then no GPU  devices  will  be  added
              from  the  udev backend. Enabled by default. (May need to be dis-
              abled to setup Xinerama).

       Option "AutoBindGPU"  "boolean"
              If enabled then secondary GPUs will be automatically  set  up  as
              output-sinks and offload-sources. Making e.g. laptop outputs con-
              nected only to the secondary GPU directly available for use with-
              out needing to run "xrandr --setprovideroutputsource". Enabled by
              default.

       Option "Log" "string"
              This  option controls whether the log is flushed and/or synced to
              disk after each message.  Possible values are flush or sync.  Un-
              set by default.

       Option "AllowByteSwappedClients"  "boolean"
              Allow clients with a different byte-order than  the  server.  En-
              abled by default.

MODULE SECTION
       The  Module  section is used to specify which Xorg server modules should
       be loaded.  This section is ignored when the Xorg  server  is  built  in
       static  form.   The  type of modules normally loaded in this section are
       Xorg server extension modules.  Most other module types are loaded auto-
       matically when they are needed via other mechanisms.  The Module section
       is optional, as are all of the entries that may be specified in it.

       Entries in this section may be in two forms.  The first  and  most  com-
       monly  used  form  is  an entry that uses the Load keyword, as described
       here:

       Load  "modulename"
              This instructs the server to load the module  called  modulename.
              The  module  name given should be the module's standard name, not
              the module file name.  The standard name is  case-sensitive,  and
              does  not  include  the  “lib” or “cyg” prefixes, or the “.so” or
              “.dll” suffixes.

              Example: the DRI extension module can be loaded with the  follow-
              ing entry:

                  Load "dri"

       Disable  "modulename"
              This  instructs  the server to not load the module called module-
              name.  Some modules are loaded by default in the server, and this
              overrides that default. If a Load instruction is  given  for  the
              same  module, it overrides the Disable instruction and the module
              is loaded. The module name given should be the module's  standard
              name, not the module file name. As with the Load instruction, the
              standard  name  is case-sensitive, and does not include the "lib"
              prefix, or the ".a", ".o", or ".so" suffixes.

       The second form of entry is a SubSection, with the subsection name being
       the module name, and the contents of the SubSection being  Options  that
       are passed to the module when it is loaded.

       Example:  the  extmod  module  (which  contains a miscellaneous group of
       server extensions) can be loaded, with the  XFree86-DGA  extension  dis-
       abled by using the following entry:

           SubSection "extmod"
              Option  "omit XFree86-DGA"
           EndSubSection

       Modules  are  searched for in each directory specified in the ModulePath
       search path, and in the drivers, extensions, input, internal, and multi-
       media subdirectories of each of those directories.  In addition to this,
       operating system specific subdirectories of all the above  are  searched
       first if they exist.

       To see what extension modules are available, check the extensions subdi-
       rectory under:

           /usr/lib/xorg/modules

       The  “extmod”,  “dbe”, “dri”, “dri2”, “glx”, and “record” extension mod-
       ules are loaded automatically, if they are present, unless disabled with
       "Disable" entries.  It is recommended that at very  least  the  “extmod”
       extension  module be loaded.  If it isn't, some commonly used server ex-
       tensions (like the SHAPE extension) will not be available.

EXTENSIONS SECTION
       The Extensions section is used to specify which X11 protocol  extensions
       should  be  enabled or disabled.  The Extensions section is optional, as
       are all of the entries that may be specified in it.

       Entries in this section are listed as Option statements with the name of
       the extension as the first argument, and a boolean value as the  second.
       The  extension name is case-sensitive, and matches the form shown in the
       output of "Xorg -extension ?".

              Example: the MIT-SHM extension can be disabled with the following
              entry:

                  Section "Extensions"
                      Option "MIT-SHM" "Disable"
                  EndSection

INPUTDEVICE SECTION
       The config file  may  have  multiple  InputDevice  sections.   Recent  X
       servers employ HAL or udev backends for input device enumeration and in-
       put hotplugging. It is usually not necessary to provide InputDevice sec-
       tions  in the xorg.conf if hotplugging is in use (i.e. AutoAddDevices is
       enabled). If hotplugging is  enabled,  InputDevice  sections  using  the
       mouse, kbd and vmmouse driver will be ignored.

       If hotplugging is disabled, there will normally be at least two: one for
       the  core (primary) keyboard and one for the core pointer.  If either of
       these two is missing, a default configuration for the missing ones  will
       be  used.  In  the absence of an explicitly specified core input device,
       the first InputDevice marked as CorePointer (or CoreKeyboard)  is  used.
       If  there is no match there, the first InputDevice that uses the “mouse”
       (or “kbd”) driver is used.  The final fallback is to  use  built-in  de-
       fault  configurations.  Currently the default configuration may not work
       as expected on all platforms.

       InputDevice sections have the following format:

           Section "InputDevice"
               Identifier "name"
               Driver     "inputdriver"
               options
               ...
           EndSection

       The Identifier and Driver entries are required in all  InputDevice  sec-
       tions.  All other entries are optional.

       The  Identifier  entry  specifies the unique name for this input device.
       The Driver entry specifies the name of the driver to use for this  input
       device.  When using the loadable server, the input driver module "input-
       driver" will be loaded for each active InputDevice section.  An InputDe-
       vice  section  is  considered  active  if  it is referenced by an active
       ServerLayout section, if it is referenced by the -keyboard  or  -pointer
       command  line  options,  or  if  it  is  selected implicitly as the core
       pointer or keyboard device in the absence of such  explicit  references.
       The  most commonly used input drivers are evdev(4) on Linux systems, and
       kbd(4) and mousedrv(4) on other platforms.

       InputDevice sections recognise some  driver-independent  Options,  which
       are  described here.  See the individual input driver manual pages for a
       description of the device-specific options.

       Option "AutoServerLayout"  "boolean"
              Always add the device to the ServerLayout section  used  by  this
              instance  of  the server. This affects implied layouts as well as
              explicit layouts specified in the  configuration  and/or  on  the
              command line.

       Option "CorePointer"
              Deprecated, see Floating

       Option "CoreKeyboard"
              Deprecated, see Floating

       Option "AlwaysCore"  "boolean"
              Deprecated, see Floating

       Option "SendCoreEvents"  "boolean"
              Deprecated, see Floating

       Option "Floating"  "boolean"
              When  enabled,  the  input device is set up floating and does not
              report events through any master device or control a cursor.  The
              device  is  only available to clients using the X Input Extension
              API. This option is  disabled  by  default.   The  options  Core-
              Pointer,  CoreKeyboard,  AlwaysCore,  and SendCoreEvents, are the
              inverse of option Floating (i.e.  SendCoreEvents "on" is  equiva-
              lent to Floating "off" ).

              This  option  controls the startup behavior only, a device may be
              reattached or set floating at runtime.

       Option "TransformationMatrix" "a b c d e f g h i"
              Specifies the 3x3 transformation matrix for  absolute  input  de-
              vices.  The  input  device will be bound to the area given in the
              matrix.  In most configurations, "a" and "e"  specify  the  width
              and  height  of  the area the device is bound to, and "c" and "f"
              specify the x and y offset of the area.  The value range is 0  to
              1, where 1 represents the width or height of all root windows to-
              gether, 0.5 represents half the area, etc. The values represent a
              3x3  matrix, with the first, second and third group of three val-
              ues representing the first, second and third row of  the  matrix,
              respectively.  The identity matrix is "1 0 0 0 1 0 0 0 1".

   POINTER ACCELERATION
       For  pointing  devices, the following options control how the pointer is
       accelerated or decelerated with respect to physical device motion.  Most
       of  these can be adjusted at runtime, see the xinput(1) man page for de-
       tails. Only the most important acceleration options are discussed here.

       Option "AccelerationProfile"  "integer"
              Select the profile. In layman's terms,  the  profile  constitutes
              the  "feeling" of the acceleration. More formally, it defines how
              the transfer function (actual acceleration as a function of  cur-
              rent  device  velocity and acceleration controls) is constructed.
              This is mainly a matter of personal preference.

              0      classic (mostly compatible)
             -1      none (only constant deceleration is applied)
              1      device-dependent
              2      polynomial (polynomial function)
              3      smooth linear (soft knee, then linear)
              4      simple (normal when slow, otherwise accelerated)
              5      power (power function)
              6      linear (more speed, more acceleration)
              7      limited (like linear, but maxes out at threshold)

       Option "ConstantDeceleration"  "real"
              Makes the pointer go deceleration times slower than normal.  Most
              useful  for high-resolution devices. A value between 0 and 1 will
              speed up the pointer.

       Option "AdaptiveDeceleration"  "real"
              Allows to actually decelerate the pointer  when  going  slow.  At
              most, it will be adaptive deceleration times slower. Enables pre-
              cise pointer placement without sacrificing speed.

       Option "AccelerationScheme"  "string"
              Selects the scheme, which is the underlying algorithm.

              predictable   default algorithm (behaving more predictable)
              lightweight   old acceleration code (as specified in the X protocol spec)
              none          no acceleration or deceleration

       Option "AccelerationNumerator"  "integer"

       Option "AccelerationDenominator"  "integer"
              Set numerator and denominator of the acceleration factor. The ac-
              celeration  factor  is a rational which, together with threshold,
              can be used to tweak profiles to suit the users needs. The simple
              and limited profiles use it directly (i.e. they accelerate by the
              factor), for other profiles it should hold that a higher acceler-
              ation factor leads to a faster pointer. Typically, 1 is  unaccel-
              erated and values up to 5 are sensible.

       Option "AccelerationThreshold"  "integer"
              Set  the threshold, which is roughly the velocity (usually device
              units per 10 ms) required for acceleration to  become  effective.
              The precise effect varies with the profile however.

INPUTCLASS SECTION
       The  config  file may have multiple InputClass sections.  These sections
       are optional and are used to provide configuration for a class of  input
       devices  as they are automatically added. An input device can match more
       than one InputClass section. Each class can  override  settings  from  a
       previous  class,  so  it  is  best to arrange the sections with the most
       generic matches first.

       InputClass sections have the following format:

           Section "InputClass"
               Identifier  "name"
               entries
               ...
               options
               ...
           EndSection

       The Identifier entry is required in all InputClass sections.  All  other
       entries are optional.

       The  Identifier  entry  specifies  the unique name for this input class.
       The Driver entry specifies the name of the driver to use for this  input
       device.   After all classes have been examined, the "inputdriver" module
       from the first Driver entry will be  enabled  when  using  the  loadable
       server.

       When  an  input  device  is automatically added, its characteristics are
       checked against all InputClass sections. Each section  can  contain  op-
       tional entries to narrow the match of the class. If none of the optional
       entries appear, the InputClass section is generic and will match any in-
       put  device.  If  more  than  one of these entries appear, they all must
       match for the configuration to apply.

       There are two types of match entries used in  InputClass  sections.  The
       first  allows various tokens to be matched against attributes of the de-
       vice. An entry can be constructed to match attributes from different de-
       vices by separating arguments with a '|' character. Multiple entries  of
       the same type may be supplied to add multiple matching conditions on the
       same attribute. For example:

           Section "InputClass"
               Identifier   "My Class"
               # product string must contain example and
               # either gizmo or gadget
               MatchProduct "example"
               MatchProduct "gizmo|gadget"
               NoMatchDriver "drivername"
               ...
           EndSection

       MatchProduct  "matchproduct"
              This  entry  can be used to check if the substring "matchproduct"
              occurs in the device's product name.

       MatchVendor  "matchvendor"
              This entry can be used to check if  the  substring  "matchvendor"
              occurs in the device's vendor name.

       MatchDevicePath "matchdevice"
              This  entry  can  be used to check if the device file matches the
              "matchdevice" pathname pattern.

       MatchOS "matchos"
              This entry can be used to check if the operating  system  matches
              the  case-insensitive  "matchos"  string. This entry is only sup-
              ported on platforms providing the uname(2) system call.

       MatchPnPID "matchpnp"
              The device's Plug and Play (PnP) ID can be  checked  against  the
              "matchpnp" shell wildcard pattern.

       MatchUSBID "matchusb"
              The  device's  USB ID can be checked against the "matchusb" shell
              wildcard pattern. The ID is constructed as lowercase  hexadecimal
              numbers  separated  by  a  ':'.  This  is  the same format as the
              lsusb(8) program.

       MatchDriver "matchdriver"
              Check the case-sensitive string "matchdriver"  against  the  cur-
              rently  configured driver of the device. Ordering of sections us-
              ing this entry is important since it will not  match  unless  the
              driver  has  been  set by the config backend or a previous Input-
              Class section.

       MatchTag "matchtag"
              This entry can be used to check if tags assigned  by  the  config
              backend  matches  the  "matchtag" pattern. A match is found if at
              least one of the tags given in "matchtag" matches at least one of
              the tags assigned by the backend.

       MatchLayout "matchlayout"
              Check the case-sensitive string "matchlayout"  against  the  cur-
              rently  active  ServerLayout section. The empty string "" matches
              an implicit layout which appears if no  named  ServerLayout  sec-
              tions have been found.

       The above directives have equivalents for negative matching with the No-
       MatchProduct, NoMatchVendor, NoMatchDevicePath, NoMatchOS, NoMatchPnPID,
       NoMatchUSBID,  NoMatchDriver,  NoMatchTag, and NoMatchLayout directives.
       These NoMatch directives match if the subsequent match is not met by the
       device.

       The second type of entry is used to match device  types.  These  entries
       take a boolean argument similar to Option entries.

       MatchIsKeyboard     "bool"

       MatchIsPointer      "bool"

       MatchIsJoystick     "bool"

       MatchIsTablet       "bool"

       MatchIsTabletPad    "bool"

       MatchIsTouchpad     "bool"

       MatchIsTouchscreen  "bool"

       When an input device has been matched to the InputClass section, any Op-
       tion  entries  are applied to the device. One InputClass specific Option
       is recognized. See the InputDevice section above for  a  description  of
       the remaining Option entries.

       Option "Ignore" "boolean"
              This  optional  entry specifies that the device should be ignored
              entirely, and not added to the server. This can  be  useful  when
              the  device  is handled by another program and no X events should
              be generated.

OUTPUTCLASS SECTION
       The config file may have multiple OutputClass sections.  These  sections
       are optional and are used to provide configuration for a class of output
       devices  as  they  are  automatically added.  An output device can match
       more than one OutputClass section.  Each  class  can  override  settings
       from  a  previous  class, so it is best to arrange the sections with the
       most generic matches first.

       OutputClass sections have the following format:

           Section "OutputClass"
               Identifier  "name"
               entries
               ...
           EndSection

       The Identifier entry is required in all OutputClass sections.  All other
       entries are optional.

       The Identifier entry specifies the unique name for  this  output  class.
       The Driver entry specifies the name of the driver to use for this output
       device.  After all classes have been examined, the "outputdriver" module
       from  the  first  Driver  entry  will be enabled when using the loadable
       server.

       When an output device is automatically added,  its  characteristics  are
       checked  against all OutputClass sections.  Each section can contain op-
       tional entries to narrow the match of the class.  If  none  of  the  op-
       tional entries appear, the OutputClass section is generic and will match
       any  output  device.  If more than one of these entries appear, they all
       must match for the configuration to apply.

       The following list of tokens can be matched against  attributes  of  the
       device.   An entry can be constructed to match attributes from different
       devices by separating arguments with a '|' character.

       For example:

           Section "OutputClass"
               Identifier   "My Class"
               # kernel driver must be either foo or bar
               MatchDriver "foo|bar"
               ...
           EndSection

       MatchDriver "matchdriver"
              Check the case-sensitive string "matchdriver" against the  kernel
              driver of the device.

       When  an  output device has been matched to the OutputClass section, any
       Option entries are applied to the device. One OutputClass  specific  Op-
       tion  is  recognized.  See the Device section below for a description of
       the remaining Option entries.

       Option "PrimaryGPU" "boolean"
              This option specifies that the matched device should  be  treated
              as  the  primary  GPU, replacing the selection of the GPU used as
              output by the firmware. If multiple output devices match an  Out-
              putClass  section  with  the PrimaryGPU option set, the first one
              enumerated becomes the primary GPU.

       A OutputClass Section may contain ModulePath entries. When an output de-
       vice matches an OutputClass section, any ModulePath entries in that Out-
       putClass are pre-pended to the search path for loadable Xorg server mod-
       ules. See ModulePath in the Files section for more info.

DEVICE SECTION
       The config file may have multiple Device sections.   There  must  be  at
       least one, for the video card being used.

       Device sections have the following format:

           Section "Device"
               Identifier "name"
               Driver     "driver"
               entries
               ...
           EndSection

       The  Identifier  and Driver entries are required in all Device sections.
       All other entries are optional.

       The Identifier entry specifies the unique name for this graphics device.
       The Driver entry specifies the name of the driver to use for this graph-
       ics device.  When using the loadable server, the driver module  "driver"
       will be loaded for each active Device section.  A Device section is con-
       sidered active if it is referenced by an active Screen section.

       Device  sections  recognise some driver-independent entries and Options,
       which are described here.  Not all drivers make use of these  driver-in-
       dependent  entries,  and  many of those that do don't require them to be
       specified because the information is auto-detected.  See the  individual
       graphics driver manual pages for further information about this, and for
       a description of the device-specific options.  Note that most of the Op-
       tions  listed  here  (but not the other entries) may be specified in the
       Screen section instead of here in the Device section.

       BusID  "bus-id"
              This specifies the  bus  location  of  the  graphics  card.   For
              PCI/AGP  cards, the bus-id string has the form PCI:bus@domain:de-
              vice:function (e.g., “PCI:1@0:0:0” might be  appropriate  for  an
              AGP  card).  The "@domain" part can be left out for PCI domain 0.
              This field is usually optional in single-head configurations when
              using the primary graphics card.  In  multi-head  configurations,
              or when using a secondary graphics card in a single-head configu-
              ration,  this entry is mandatory.  Its main purpose is to make an
              unambiguous connection between the device section and  the  hard-
              ware  it  is representing.  This information can usually be found
              by running the pciaccess tool scanpci.

       Screen  number
              This option is mandatory for cards where a single PCI entity  can
              drive  more than one display (i.e., multiple CRTCs sharing a sin-
              gle graphics accelerator and video memory).  One  Device  section
              is  required  for  each head, and this parameter determines which
              head each of the Device sections applies to.  The legal values of
              number range from 0 to one less than the total  number  of  heads
              per  entity.  Most drivers require that the primary screen (0) be
              present.

       Chipset  "chipset"
              This usually optional entry specifies the  chipset  used  on  the
              graphics board.  In most cases this entry is not required because
              the  drivers  will  probe  the  hardware to determine the chipset
              type.  Don't specify it unless the driver-specific  documentation
              recommends that you do.

       Ramdac  "ramdac-type"
              This  optional  entry  specifies  the  type of RAMDAC used on the
              graphics board.  This is only used by a few of the  drivers,  and
              in  most  cases it is not required because the drivers will probe
              the hardware to determine the RAMDAC type where possible.   Don't
              specify  it  unless  the driver-specific documentation recommends
              that you do.

       DacSpeed  speed

       DacSpeed  speed-8 speed-16 speed-24 speed-32
              This optional entry specifies the RAMDAC speed rating  (which  is
              usually  printed on the RAMDAC chip).  The speed is in MHz.  When
              one value is given, it applies to all  framebuffer  pixel  sizes.
              When  multiple  values  are  given, they apply to the framebuffer
              pixel sizes 8, 16, 24 and 32 respectively.  This is not  used  by
              many  drivers, and only needs to be specified when the speed rat-
              ing of the RAMDAC is different from the defaults built in to dri-
              ver, or when the driver can't auto-detect the  correct  defaults.
              Don't  specify it unless the driver-specific documentation recom-
              mends that you do.

       Clocks  clock ...
              specifies the pixel that are on your graphics board.  The  clocks
              are in MHz, and may be specified as a floating point number.  The
              value  is  stored internally to the nearest kHz.  The ordering of
              the clocks is important.  It must match the order in  which  they
              are selected on the graphics board.  Multiple Clocks lines may be
              specified,  and each is concatenated to form the list.  Most dri-
              vers do not use this entry, and it  is  only  required  for  some
              older  boards  with  non-programmable clocks.  Don't specify this
              entry unless the driver-specific documentation explicitly  recom-
              mends that you do.

       ClockChip  "clockchip-type"
              This  optional  entry  is  used to specify the clock chip type on
              graphics boards which have a programmable clock generator.   Only
              a  few  Xorg  drivers  support programmable clock chips.  For de-
              tails, see the appropriate driver manual page.

       VideoRam  mem
              This optional entry specifies the amount of video ram that is in-
              stalled on the graphics board.  This is measured in  kBytes.   In
              most  cases  this  is not required because the Xorg server probes
              the graphics board to determine this quantity.   The  driver-spe-
              cific documentation should indicate when it might be needed.

       MemBase  baseaddress
              This optional entry specifies the memory base address of a graph-
              ics  board's linear frame buffer.  This entry is not used by many
              drivers, and it should only be specified if  the  driver-specific
              documentation recommends it.

       IOBase  baseaddress
              This optional entry specifies the IO base address.  This entry is
              not  used by many drivers, and it should only be specified if the
              driver-specific documentation recommends it.

       ChipID  id
              This optional entry specifies a  numerical  ID  representing  the
              chip type.  For PCI cards, it is usually the device ID.  This can
              be  used  to override the auto-detection, but that should only be
              done when the driver-specific documentation recommends it.

       ChipRev  rev
              This optional entry specifies the chip revision number.  This can
              be used to override the auto-detection, but that should  only  be
              done when the driver-specific documentation recommends it.

       MatchSeat  seat-id
              Only apply this Device section if X server was started with -seat
              seat-id option.

       Option "ModeDebug" "boolean"
              Enable  printing  of additional debugging information about mode-
              setting to the server log.

       Option "NoOutputInitialSize" "width height"
              Normally, the X server infers the initial screen  size  based  on
              any connected outputs.  However, if no outputs are connected, the
              X  server picks a default screen size of 1024 x 768.  This option
              overrides the default screen size to use when no outputs are con-
              nected.  In contrast to the "Virtual" Display  SubSection  entry,
              which applies unconditionally, "NoOutputInitialSize" is only used
              if no outputs are detected when the X server starts.

       Option "PreferCloneMode" "boolean"
              If  enabled,  bring up monitors of a screen in clone mode instead
              of horizontal extended layout by default. (Defaults to  off;  the
              video  driver  can  change the default value, but this option can
              always override it)

       Options
              Option flags may be specified in the Device sections.  These  in-
              clude  driver-specific  options  and  driver-independent options.
              The former are described in  the  driver-specific  documentation.
              Some  of  the latter are described below in the section about the
              Screen section, and they may also be included here.

VIDEOADAPTOR SECTION
       Nobody wants to say how this works.  Maybe nobody knows ...

MONITOR SECTION
       The config file may have multiple Monitor sections.  There  should  nor-
       mally be at least one, for the monitor being used, but a default config-
       uration will be created when one isn't specified.

       Monitor sections have the following format:

           Section "Monitor"
               Identifier "name"
               entries
               ...
           EndSection

       The only mandatory entry in a Monitor section is the Identifier entry.

       The  Identifier  entry  specifies the unique name for this monitor.  The
       Monitor section may be used to provide information about the  specifica-
       tions  of  the  monitor, monitor-specific Options, and information about
       the video modes to use with the monitor.

       With RandR 1.2-enabled drivers, monitor sections may be tied to specific
       outputs of the video card.  Using the name of the output defined by  the
       video  driver plus the identifier of a monitor section, one associates a
       monitor section with an output by adding an option to the Device section
       in the following format:

       Option "Monitor-outputname" "monitorsection"

       (for example, Option "Monitor-VGA" "VGA monitor" for a VGA output)

       In the absence of specific association of monitor sections  to  outputs,
       if  a  monitor  section  is present the server will associate it with an
       output to preserve compatibility  for  previous  single-head  configura-
       tions.

       Specifying  video  modes is optional because the server will use the DDC
       or other information provided by the monitor to automatically  configure
       the list of modes available.  When modes are specified explicitly in the
       Monitor  section (with the Mode, ModeLine, or UseModes keywords), built-
       in modes with the same names are not included.  Built-in modes with dif-
       ferent names are, however, still implicitly included, when they meet the
       requirements of the monitor.

       The entries that may be used in Monitor sections are described below.

       VendorName  "vendor"
              This optional entry specifies the monitor's manufacturer.

       ModelName  "model"
              This optional entry specifies the monitor's model.

       HorizSync  horizsync-range
              gives the range(s) of horizontal sync  frequencies  supported  by
              the  monitor.   horizsync-range  may be a comma separated list of
              either discrete values or ranges of values.  A range of values is
              two values separated by a dash.  By default  the  values  are  in
              units of kHz.  They may be specified in MHz or Hz if MHz or Hz is
              added to the end of the line.  The data given here is used by the
              Xorg server to determine if video modes are within the specifica-
              tions  of  the  monitor.  This information should be available in
              the monitor's handbook.  If this  entry  is  omitted,  a  default
              range of 28-33kHz is used.

       VertRefresh  vertrefresh-range
              gives  the  range(s) of vertical refresh frequencies supported by
              the monitor.  vertrefresh-range may be a comma separated list  of
              either discrete values or ranges of values.  A range of values is
              two  values  separated  by  a dash.  By default the values are in
              units of Hz.  They may be specified in MHz or kHz if MHz  or  kHz
              is  added to the end of the line.  The data given here is used by
              the Xorg server to determine if video modes are within the speci-
              fications of the monitor.  This information should  be  available
              in  the  monitor's handbook.  If this entry is omitted, a default
              range of 43-72Hz is used.

       DisplaySize  width height
              This optional entry gives the width and height,  in  millimetres,
              of  the  picture  area  of the monitor.  If given this is used to
              calculate the horizontal and vertical pitch (DPI) of the screen.

       Gamma  gamma-value

       Gamma  red-gamma green-gamma blue-gamma
              This is an optional entry that can be used to specify  the  gamma
              correction for the monitor.  It may be specified as either a sin-
              gle  value or as three separate RGB values.  The values should be
              in the range 0.1 to 10.0, and the default is 1.0.  Not  all  dri-
              vers are capable of using this information.

       UseModes  "modesection-id"
              Include the set of modes listed in the Modes section called mode-
              section-id.   This makes all of the modes defined in that section
              available for use by this monitor.

       Mode  "name"
              This is an optional multi-line entry that can be used to  provide
              definitions  for video modes for the monitor.  In most cases this
              isn't necessary because the built-in set of VESA  standard  modes
              will  be  sufficient.   The Mode keyword indicates the start of a
              multi-line video mode description.  The mode description is  ter-
              minated  with the EndMode keyword.  The mode description consists
              of the following entries:

              DotClock  clock
                  is the dot (pixel) clock rate to be used for the mode.

              HTimings  hdisp hsyncstart hsyncend htotal
                  specifies the horizontal timings for the mode.

              VTimings  vdisp vsyncstart vsyncend vtotal
                  specifies the vertical timings for the mode.

              Flags  "flag" ...
                  specifies an optional set of mode flags, each of which  is  a
                  separate string in double quotes.  "Interlace" indicates that
                  the  mode is interlaced.  "DoubleScan" indicates a mode where
                  each scanline is doubled.  "+HSync" and "-HSync" can be  used
                  to  select  the  polarity  of the HSync signal.  "+VSync" and
                  "-VSync" can be used to select the polarity of the VSync sig-
                  nal.  "Composite" can be used to specify  composite  sync  on
                  hardware  where  this  is  supported.   Additionally, on some
                  hardware, "+CSync" and "-CSync" may be  used  to  select  the
                  composite sync polarity.

              HSkew  hskew
                  specifies the number of pixels (towards the right edge of the
                  screen)  by  which the display enable signal is to be skewed.
                  Not all drivers use this information.  This option might  be-
                  come  necessary to override the default value supplied by the
                  server (if any).  “Roving”  horizontal  lines  indicate  this
                  value  needs  to  be  increased.  If the last few pixels on a
                  scan line appear on the left of the screen, this value should
                  be decreased.

              VScan  vscan
                  specifies the number of times each scanline is painted on the
                  screen.  Not all drivers use this information.   Values  less
                  than  1  are  treated as 1, which is the default.  Generally,
                  the "DoubleScan" Flag mentioned above doubles this value.

       ModeLine  "name" mode-description
              This entry is a more compact version of the Mode  entry,  and  it
              also can be used to specify video modes for the monitor.  This is
              a  single  line format for specifying video modes.  In most cases
              this isn't necessary because the built-in set  of  VESA  standard
              modes will be sufficient.

              The  mode-description  is  in  four  sections, the first three of
              which are mandatory.  The first is the dot (pixel)  clock.   This
              is  a  single number specifying the pixel clock rate for the mode
              in MHz.  The second section is a list of four numbers  specifying
              the horizontal timings.  These numbers are the hdisp, hsyncstart,
              hsyncend, and htotal values.  The third section is a list of four
              numbers  specifying  the vertical timings.  These numbers are the
              vdisp, vsyncstart, vsyncend, and vtotal values.  The  final  sec-
              tion  is  a list of flags specifying other characteristics of the
              mode.  Interlace indicates that the mode is interlaced.  DoubleS-
              can indicates a mode where each scanline is doubled.  +HSync  and
              -HSync  can  be  used to select the polarity of the HSync signal.
              +VSync and -VSync can be used to select the polarity of the VSync
              signal.  Composite can be used to specify composite sync on hard-
              ware where this is supported.  Additionally,  on  some  hardware,
              +CSync and -CSync may be used to select the composite sync polar-
              ity.  The HSkew and VScan options mentioned above in the Mode en-
              try description can also be used here.

       Option "DPMS" "bool"
              This  option  controls  whether the server should enable the DPMS
              extension for power management for this screen.  The  default  is
              to enable the extension.

       Option "SyncOnGreen" "bool"
              This option controls whether the video card should drive the sync
              signal  on  the  green color pin.  Not all cards support this op-
              tion, and most monitors do not require it.  The default is off.

       Option "Primary" "bool"
              This optional entry specifies that the monitor should be  treated
              as the primary monitor. (RandR 1.2-supporting drivers only)

       Option "PreferredMode" "name"
              This  optional  entry  specifies  a mode to be marked as the pre-
              ferred initial mode of the monitor.  (RandR  1.2-supporting  dri-
              vers only)

       Option "ZoomModes" "name name ..."
              This  optional  entry specifies modes to be marked as zoom modes.
              It is possible to switch  to  the  next  and  previous  mode  via
              Ctrl+Alt+Keypad-Plus and Ctrl+Alt+Keypad-Minus.  All these keypad
              available  modes  are  selected  from the screen mode list.  This
              list is a copy of the compatibility  output  monitor  mode  list.
              Since  this output is the output connected to the lowest dot-area
              monitor, as determined from its largest size mode,  that  monitor
              defines  the available zoom modes.  (RandR 1.2-supporting drivers
              only)

       Option "Position" "x y"
              This optional entry specifies the position of the monitor  within
              the X screen.  (RandR 1.2-supporting drivers only)

       Option "LeftOf" "output"
              This  optional  entry  specifies that the monitor should be posi-
              tioned to the left of the output (not monitor) of the given name.
              (RandR 1.2-supporting drivers only)

       Option "RightOf" "output"
              This optional entry specifies that the monitor  should  be  posi-
              tioned  to  the  right  of  the output (not monitor) of the given
              name.  (RandR 1.2-supporting drivers only)

       Option "Above" "output"
              This optional entry specifies that the monitor  should  be  posi-
              tioned  above the output (not monitor) of the given name.  (RandR
              1.2-supporting drivers only)

       Option "Below" "output"
              This optional entry specifies that the monitor  should  be  posi-
              tioned  below the output (not monitor) of the given name.  (RandR
              1.2-supporting drivers only)

       Option "Enable" "bool"
              This optional entry  specifies  whether  the  monitor  should  be
              turned on at startup.  By default, the server will attempt to en-
              able all connected monitors.  (RandR 1.2-supporting drivers only)

       Option "DefaultModes" "bool"
              This  optional entry specifies whether the server should add sup-
              ported default modes to the list of modes offered on  this  moni-
              tor.  By  default,  the server will add default modes; you should
              only disable this if you can guarantee that EDID will  be  avail-
              able  at  all  times, or if you have added custom modelines which
              the server can use.  (RandR 1.2-supporting drivers only)

       Option "MinClock" "frequency"
              This optional entry specifies the minimum dot clock, in kHz, that
              is supported by the monitor.

       Option "MaxClock" "frequency"
              This optional entry specifies the maximum dot clock, in kHz, that
              is supported by the monitor.

       Option "Ignore" "bool"
              This optional entry specifies that the monitor should be  ignored
              entirely,  and not reported through RandR.  This is useful if the
              hardware reports  the  presence  of  outputs  that  don't  exist.
              (RandR 1.2-supporting drivers only)

       Option "Rotate" "rotation"
              This  optional  entry specifies the initial rotation of the given
              monitor.   Valid  values  for  rotation  are  "normal",   "left",
              "right", and "inverted".  (RandR 1.2-supporting drivers only)

MODES SECTION
       The  config  file may have multiple Modes sections, or none.  These sec-
       tions provide a way of defining sets of video modes independently of the
       Monitor sections.  Monitor sections may include the definitions provided
       in these sections by using the UseModes  keyword.   In  most  cases  the
       Modes  sections are not necessary because the built-in set of VESA stan-
       dard modes will be sufficient.

       Modes sections have the following format:

           Section "Modes"
               Identifier "name"
               entries
               ...
           EndSection

       The Identifier entry specifies the unique name for this set of mode  de-
       scriptions.   The other entries permitted in Modes sections are the Mode
       and ModeLine entries that are described above in the Monitor section.

SCREEN SECTION
       The config file may have multiple Screen sections.   There  must  be  at
       least one, for the “screen” being used.  A “screen” represents the bind-
       ing  of  a  graphics device (Device section) and a monitor (Monitor sec-
       tion).  A Screen section is considered “active” if it is  referenced  by
       an  active  ServerLayout  section or by the -screen command line option.
       If neither of those is present, the first Screen section  found  in  the
       config file is considered the active one.

       Screen sections have the following format:

           Section "Screen"
               Identifier "name"
               Device     "devid"
               GPUDevice  "devid"
               Monitor    "monid"
               entries
               ...
               SubSection "Display"
                  entries
                  ...
               EndSubSection
               ...
           EndSection

       The Identifier entry is mandatory.  All others are optional.

       The  Identifier  entry  specifies  the unique name for this screen.  The
       Screen section provides information specific to the  whole  screen,  in-
       cluding  screen-specific  Options.   In multi-head configurations, there
       will be multiple active Screen sections, one for each head.  The entries
       available for this section are:

       Device  "device-id"
              This entry specifies the Device  section  to  be  used  for  this
              screen.   When  multiple graphics cards are present, this is what
              ties a specific card to a screen.  The device-id must  match  the
              Identifier of a Device section in the config file.

       GPUDevice  "device-id"
              This entry specifies the Device section to be used as a secondary
              GPU  device  for  this  screen.  When multiple graphics cards are
              present, this is what ties a specific secondary card to a screen.
              The device-id must match the Identifier of a  Device  section  in
              the config file. This can be specified up to 4 times for a single
              screen.

       Monitor  "monitor-id"
              specifies  which  monitor  description  is  to  be  used for this
              screen.  If a Monitor name is not specified, a default configura-
              tion is used.  Currently the default configuration may not  func-
              tion as expected on all platforms.

       VideoAdaptor  "xv-id"
              specifies  an  optional  Xv  video adaptor description to be used
              with this screen.

       DefaultDepth  depth
              specifies which color depth the server  should  use  by  default.
              The  -depth command line option can be used to override this.  If
              neither is specified, the default depth is  driver-specific,  but
              in most cases is 8.

       DefaultFbBpp  bpp
              specifies which framebuffer layout to use by default.  The -fbbpp
              command  line option can be used to override this.  In most cases
              the driver will chose the best default value for this.  The  only
              case  where there is even a choice in this value is for depth 24,
              where some hardware supports both a  packed  24  bit  framebuffer
              layout and a sparse 32 bit framebuffer layout.

       MatchSeat  seat-id
              Only apply this Screen section if X server was started with -seat
              seat-id option.

       Options
              Various  Option  flags  may  be  specified in the Screen section.
              Some are driver-specific and are described in the driver documen-
              tation.  Others are driver-independent, and  will  eventually  be
              described here.

       Option "Accel"
              Enables  2D hardware acceleration.  This option is on by default,
              but it may be necessary to turn it off if there are bugs  in  the
              driver.   There  are many options to disable specific accelerated
              operations, listed below.  Note that disabling an operation  will
              have  no  effect if the operation is not accelerated (whether due
              to lack of support in the hardware or in the driver).

       Option "GlxVendorLibrary" "string"
              This option specifies a space-separated list of OpenGL vendor li-
              braries to use for the screen. This may be used to select an  al-
              ternate  implementation  for development, debugging, or alternate
              feature sets.  Default: mesa.

       Option "InitPrimary" "boolean"
              Use the Int10 module to initialize  the  primary  graphics  card.
              Normally,  only  secondary  cards are soft-booted using the Int10
              module, as the primary card has already been initialized  by  the
              BIOS at boot time.  Default: false.

       Option "NoInt10" "boolean"
              Disables  the  Int10 module, a module that uses the int10 call to
              the BIOS of the graphics card to initialize it.  Default: false.

       Each Screen section may optionally contain one or more  Display  subsec-
       tions.  Those subsections provide depth/fbbpp specific configuration in-
       formation,  and the one chosen depends on the depth and/or fbbpp that is
       being used for the screen.  The Display subsection format  is  described
       in the section below.

DISPLAY SUBSECTION
       Each Screen section may have multiple Display subsections.  The “active”
       Display subsection is the first that matches the depth and/or fbbpp val-
       ues  being  used, or failing that, the first that has neither a depth or
       fbbpp value specified.  The  Display  subsections  are  optional.   When
       there  isn't  one that matches the depth and/or fbbpp values being used,
       all the parameters that can be specified here fall  back  to  their  de-
       faults.

       Display subsections have the following format:

               SubSection "Display"
                   Depth  depth
                   entries
                   ...
               EndSubSection

       Depth  depth
              This  entry specifies what colour depth the Display subsection is
              to be used for.  This entry is usually specified, but it  may  be
              omitted  to create a match-all Display subsection or when wishing
              to match only against the FbBpp parameter.  The  range  of  depth
              values that are allowed depends on the driver.  Most drivers sup-
              port  8,  15,  16 and 24.  Some also support 1 and/or 4, and some
              may support other values (like 30).  Note: depth means the number
              of bits in a pixel that are actually used to determine the  pixel
              colour.   32 is not a valid depth value.  Most hardware that uses
              32 bits per pixel only uses 24 of them to hold the colour  infor-
              mation, which means that the colour depth is 24, not 32.

       FbBpp  bpp
              This  entry specifies the framebuffer format this Display subsec-
              tion is to be used for.  This entry is only needed when providing
              depth 24 configurations that allow a  choice  between  a  24  bpp
              packed  framebuffer format and a 32bpp sparse framebuffer format.
              In most cases this entry should not be used.

       Weight  red-weight green-weight blue-weight
              This optional entry specifies the relative RGB  weighting  to  be
              used  for a screen is being used at depth 16 for drivers that al-
              low multiple formats.  This may also be specified from  the  com-
              mand line with the -weight option (see Xorg(1)).

       Virtual  xdim ydim
              This optional entry specifies the virtual screen resolution to be
              used.   xdim  must  be a multiple of either 8 or 16 for most dri-
              vers, and a multiple of 32 when running in monochrome mode.   The
              given  value will be rounded down if this is not the case.  Video
              modes which are too large for the specified virtual size will  be
              rejected.  If this entry is not present, the virtual screen reso-
              lution will be set to accommodate all the valid video modes given
              in  the  Modes  entry.  Some drivers/hardware combinations do not
              support virtual screens.  Refer to  the  appropriate  driver-spe-
              cific documentation for details.

       ViewPort  x0 y0
              This  optional  entry  sets  the upper left corner of the initial
              display.  This is only relevant when the virtual  screen  resolu-
              tion  is different from the resolution of the initial video mode.
              If this entry is not given, then the initial display will be cen-
              tered in the virtual display area.

       Modes  "mode-name" ...
              This optional entry specifies the list of  video  modes  to  use.
              Each  mode-name  specified  must  be in double quotes.  They must
              correspond to those specified or referenced  in  the  appropriate
              Monitor  section  (including  implicitly referenced built-in VESA
              standard modes).  The server will delete  modes  from  this  list
              which  don't  satisfy various requirements.  The first valid mode
              in this list will be the default display mode for  startup.   The
              list of valid modes is converted internally into a circular list.
              It  is  possible  to  switch  to the next mode with Ctrl+Alt+Key-
              pad-Plus and to the  previous  mode  with  Ctrl+Alt+Keypad-Minus.
              When this entry is omitted, the valid modes referenced by the ap-
              propriate  Monitor  section will be used.  If the Monitor section
              contains no modes, then the selection  will  be  taken  from  the
              built-in VESA standard modes.

       Visual  "visual-name"
              This  optional entry sets the default root visual type.  This may
              also be specified from the command line (see the  Xserver(1)  man
              page).   The  visual  types available for depth 8 are (default is
              PseudoColor):

                  StaticGray
                  GrayScale
                  StaticColor
                  PseudoColor
                  TrueColor
                  DirectColor

              The visual type available for the depths 15, 16 and 24  are  (de-
              fault is TrueColor):

                  TrueColor
                  DirectColor

              Not all drivers support DirectColor at these depths.

              The  visual types available for the depth 4 are (default is Stat-
              icColor):

                  StaticGray
                  GrayScale
                  StaticColor
                  PseudoColor

              The visual type available for the depth 1 (monochrome)  is  Stat-
              icGray.

       Black  red green blue
              This  optional  entry  allows the “black” colour to be specified.
              This is only supported at depth 1.  The default is black.

       White  red green blue
              This optional entry allows the “white” colour  to  be  specified.
              This is only supported at depth 1.  The default is white.

       Options
              Option  flags may be specified in the Display subsections.  These
              may include driver-specific options  and  driver-independent  op-
              tions.   The former are described in the driver-specific documen-
              tation.  Some of the latter are described above  in  the  section
              about the Screen section, and they may also be included here.

SERVERLAYOUT SECTION
       The config file may have multiple ServerLayout sections.  A “server lay-
       out” represents the binding of one or more screens (Screen sections) and
       one or more input devices (InputDevice sections) to form a complete con-
       figuration.   In  multi-head configurations, it also specifies the rela-
       tive layout of the heads.  A ServerLayout section is considered “active”
       if it is referenced by the -layout command line option or by  an  Option
       "DefaultServerLayout" entry in the ServerFlags section (the former takes
       precedence  over  the latter).  If those options are not used, the first
       ServerLayout section found in the config file is considered  the  active
       one.   If no ServerLayout sections are present, the single active screen
       and two active (core) input devices are selected  as  described  in  the
       relevant sections above.

       ServerLayout sections have the following format:

           Section "ServerLayout"
               Identifier   "name"
               Screen       "screen-id"
               ...
               InputDevice  "idev-id"
               ...
               options
               ...
           EndSection

       Each ServerLayout section must have an Identifier entry and at least one
       Screen entry.

       The  Identifier  entry specifies the unique name for this server layout.
       The ServerLayout section provides information specific to the whole ses-
       sion, including session-specific Options.  The ServerFlags options  (de-
       scribed above) may be specified here, and ones given here override those
       given in the ServerFlags section.

       The entries that may be used in this section are described here.

       Screen  screen-num "screen-id" position-information
              One  of these entries must be given for each screen being used in
              a session.  The screen-id field is mandatory, and  specifies  the
              Screen  section  being  referenced.   The screen-num field is op-
              tional,  and  may  be  used  to  specify  the  screen  number  in
              multi-head  configurations.   When  this  field  is  omitted, the
              screens will be numbered in the order that they  are  listed  in.
              The  numbering starts from 0, and must be consecutive.  The posi-
              tion-information field describes the way multiple screens are po-
              sitioned.  There are a number of different ways that this  infor-
              mation can be provided:

              x y

              Absolute  x y
                  These  both  specify that the upper left corner's coordinates
                  are (x,y).  The Absolute keyword  is  optional.   Some  older
                  versions of XFree86 (4.2 and earlier) don't recognise the Ab-
                  solute  keyword,  so  it's safest to just specify the coordi-
                  nates without it.

              RightOf   "screen-id"

              LeftOf    "screen-id"

              Above     "screen-id"

              Below     "screen-id"

              Relative  "screen-id" x y
                  These give the screen's location relative to another  screen.
                  The  first four position the screen immediately to the right,
                  left, above or below the other screen.  When  positioning  to
                  the right or left, the top edges are aligned.  When position-
                  ing above or below, the left edges are aligned.  The Relative
                  form  specifies the offset of the screen's origin (upper left
                  corner) relative to the origin of another screen.

       InputDevice  "idev-id" "option" ...
              One of these entries should be given for each input device  being
              used  in a session.  Normally at least two are required, one each
              for the core pointer and keyboard devices.  If either of those is
              missing, suitable InputDevice entries are searched for using  the
              method  described  above in the INPUTDEVICE section.  The idev-id
              field is mandatory, and specifies the  name  of  the  InputDevice
              section  being  referenced.  Multiple option fields may be speci-
              fied, each in double quotes.  The options permitted here are  any
              that  may  also  be  given in the InputDevice sections.  Normally
              only session-specific input device options would  be  used  here.
              The most commonly used options are:

                  "CorePointer"
                  "CoreKeyboard"
                  "SendCoreEvents"

              and  the  first  two should normally be used to indicate the core
              pointer and core keyboard devices respectively.

       MatchSeat  seat-id
              Only apply this ServerLayout section if X server was started with
              -seat seat-id option.

       Options
              In addition to the following, any option permitted in the Server-
              Flags section may also be specified here.  When the  same  option
              appears  in  both  places, the value given here overrides the one
              given in the ServerFlags section.

       Option "IsolateDevice"  "bus-id"
              Restrict device resets to the specified bus-id.   See  the  BusID
              option (described in DEVICE SECTION, above) for the format of the
              bus-id  parameter.   This  option overrides SingleCard, if speci-
              fied.  At present, only PCI devices can be isolated in this  man-
              ner.

       Option "SingleCard"  "boolean"
              As  IsolateDevice,  except that the bus ID of the first device in
              the layout is used.

       Here is an example of a ServerLayout section for a dual headed  configu-
       ration with two mice:

           Section "ServerLayout"
               Identifier  "Layout 1"
               Screen      "MGA 1"
               Screen      "MGA 2" RightOf "MGA 1"
               InputDevice "Keyboard 1" "CoreKeyboard"
               InputDevice "Mouse 1"    "CorePointer"
               InputDevice "Mouse 2"    "SendCoreEvents"
               Option      "BlankTime"  "5"
           EndSection

DRI SECTION
       This optional section is used to provide some information for the Direct
       Rendering  Infrastructure.  Details about the format of this section can
       be found on-line at <https://dri.freedesktop.org/>.

VENDOR SECTION
       The optional Vendor section may be used to provide vendor-specific  con-
       figuration  information.   Multiple  Vendor sections may be present, and
       they may contain an Identifier entry and  multiple  Option  flags.   The
       data therein is not used in this release.

SEE ALSO
       General: X(7), Xserver(1), Xorg(1), cvt(1), gtf(1).

       Not all modules or interfaces are available on all platforms.

       Display  drivers:  apm(4),  ati(4),  chips(4),  cirrus(4), cyrix(4), fb-
       dev(4),  glide(4),  glint(4),  i128(4),  i740(4),  imstt(4),   intel(4),
       mga(4),  neomagic(4),  nv(4),  openchrome(4), r128(4), radeon(4), rendi-
       tion(4), savage(4),  s3virge(4),  siliconmotion(4),  sis(4),  sisusb(4),
       sunbw2(4),   suncg14(4),  suncg3(4),  suncg6(4),  sunffb(4),  sunleo(4),
       suntcx(4), tdfx(4), trident(4), tseng(4), vesa(4), vmware(4), voodoo(4),
       wsfb(4), xgi(4), xgixp(4).

       Input drivers: acecad(4), citron(4), elographics(4), evdev(4),  fpit(4),
       joystick(4),  kbd(4), libinput(4), mousedrv(4), mutouch(4), penmount(4),
       synaptics(4), vmmouse(4), void(4), wacom(4).

       Other modules and interfaces: exa(4), fbdevhw(4), v4l(4).

AUTHORS
       This   manual   page   was   largely   rewritten    by    David    Dawes
       <dawes@xfree86.org>.

X Version 11                  xorg-server 21.1.16                  xorg.conf(5)

Generated by dwww version 1.16 on Sat Oct 3 06:01:50 CEST 2026.