feat(x11): migrate to pure Xlibre + dwm/dmenu/st stack, fix fcitx5-t9 bottom bar, PM8909 PON shutdown, and remove Wayland

This commit is contained in:
Luxferre
2026-10-20 21:15:16 +03:00
parent ad012360c3
commit 7bab7b7a11
422 changed files with 63226 additions and 2342 deletions
+677
View File
@@ -0,0 +1,677 @@
.\" $XdotOrg: xserver/xorg/hw/xfree86/doc/man/Xorg.man.pre,v 1.3 2005/07/04 18:41:01 ajax Exp $
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH Xorg 1 "xorg-server 25.2.0" "X Version 11"
.SH NAME
Xorg - X11R7 X server
.SH SYNOPSIS
.B Xorg
.RI [\fB:\fP display ]
.RI [ option
.IR ... ]
.SH DESCRIPTION
.B Xorg
is a full featured X server that was originally designed for UNIX and
UNIX-like operating systems running on Intel x86 hardware. It now runs
on a wider range of hardware and OS platforms.
.PP
This work was derived by the X.Org Foundation from the XFree86 Project's
.I "XFree86\ 4.4rc2"
release.
The XFree86 release was originally derived from
.I "X386\ 1.2"
by Thomas Roell which was contributed to X11R5 by Snitily Graphics
Consulting Service.
.SH PLATFORMS
.B Xorg
operates under a wide range of operating systems and hardware platforms.
The Intel x86 (IA32) architecture is the most widely supported hardware
platform. Other hardware platforms include Compaq Alpha, Intel IA64, AMD64,
SPARC and PowerPC. The most widely supported operating systems are the
free/OpenSource UNIX-like systems such as Linux, FreeBSD, NetBSD,
OpenBSD, and Solaris. Commercial UNIX operating systems such as
UnixWare are also supported. Other supported operating systems include
GNU Hurd. Mac OS X is supported with the
.BR Xquartz (1)
X server. Win32/Cygwin is supported with the
.BR XWin (1)
X server.
.SH "NETWORK CONNECTIONS"
.B Xorg
supports connections made using the following reliable
byte-streams:
.TP 4
.I "Local"
On most platforms, the "Local" connection type is a UNIX-domain socket.
On some System V platforms, the "local" connection types also include
STREAMS pipes, named pipes, and some other mechanisms.
See the "LOCAL CONNECTIONS" section of
.BR X (7)
for details.
.TP 4
.I TCP/IP
.B Xorg
listens on port
.RI 6000+ n ,
where
.I n
is the display number. This connection type is usually disabled by default,
but may be enabled with the
.B \-listen
option (see the
.BR Xserver (1)
man page for details).
.SH OPTIONS
.B Xorg
supports several mechanisms for supplying/obtaining configuration and
run-time parameters: command line options, environment variables, the
.BR xorg.conf (5)
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 mechanisms
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 here and in the
.BR Xserver (1)
manual page. Most configuration file
parameters, with their defaults, are described in the
.BR xorg.conf (5)
manual page. Driver and module specific
configuration parameters are described in the relevant driver or module
manual page.
.PP
In addition to the normal server options described in the
.BR Xserver (1)
manual page,
.B Xorg
accepts the following command line switches:
.TP 8
.BI vt XX
.I XX
specifies the Virtual Terminal device number which
.B Xorg
will use. Without this option,
.B Xorg
will pick the first available Virtual Terminal that it can locate. This
option applies only to platforms that have virtual terminal support, such
as Linux, BSD, OpenSolaris, SVR3, and SVR4.
.TP
.B \-allowMouseOpenFail
Allow the server to start up even if the mouse device can't be opened
or initialised. This is equivalent to the
.B AllowMouseOpenFail
.BR xorg.conf (5)
file option.
.TP 8
.B \-allowNonLocalXvidtune
Make the VidMode extension available to remote clients. This allows
the xvidtune client to connect from another host. This is equivalent
to the
.B AllowNonLocalXvidtune
.BR xorg.conf (5)
file option.
By default non-local connections are not allowed.
.TP 8
.BI \-bgamma " value"
Set the blue gamma correction.
.I value
must be between 0.1 and 10.
The default is 1.0. Not all drivers support this. See also the
.BR \-gamma ,
.BR \-rgamma ,
and
.B \-ggamma
options.
.TP 8
.BI \-bpp " n"
No longer supported. Use
.B \-depth
to set the color depth, and use
.B \-fbbpp
if you really need to force a non-default framebuffer (hardware) pixel
format.
.TP 8
.BI \-config " file"
Read the server configuration from
.IR file .
This option will work for any file when the server is run as root (i.e,
with real-uid 0), or for files relative to a directory in the config
search path for all other users.
.TP 8
.BI \-configdir " directory"
Read the server configuration files from
.IR directory .
This option will work for any directory when the server is run as root
(i.e, with real-uid 0), or for directories relative to a directory in the
config directory search path for all other users.
.TP 8
.B \-configure
When this option is specified, the
.B Xorg
server loads all video driver modules, probes for available hardware,
and writes out an initial
.BR xorg.conf (5)
file based on what was detected.
This option currently has some problems on some platforms,
but in most cases it is a good way to bootstrap the configuration process.
This option is only available when the server
is run as root (i.e, with real-uid 0).
.TP 8
.BI "\-crt /dev/tty" XX
SCO only. This is the same as the
.B vt
option, and is provided for compatibility with the native SCO X server.
.TP 8
.BI \-depth " n"
Sets the default color depth. Legal values are 1, 4, 8, 15, 16, and
24. Not all drivers support all values.
.TP 8
.B \-disableVidMode
Disable the parts of the VidMode extension (used by the xvidtune
client) that can be used to change the video modes. This is equivalent
to the
.B DisableVidModeExtension
.BR xorg.conf (5)
file option.
.TP 8
.B \-fbbpp \fIn\fP
Sets the number of framebuffer bits per pixel. You should only set this
if you're sure it's necessary; normally the server can deduce the correct
value from
.B \-depth
above. Useful if you want to run a depth 24 configuration with a 24
bpp framebuffer rather than the (possibly default) 32 bpp framebuffer
(or vice versa). Legal values are 1, 8, 16, 24, 32. Not all drivers
support all values.
.TP 8
.B \-flipPixels
Swap the default values for the black and white pixels.
.TP 8
.BI \-gamma " value"
Set the gamma correction.
.I value
must be between 0.1 and 10. The default is 1.0. This value is applied
equally to the R, G and B values. Those values can be set independently
with the
.BR \-rgamma ,
.BR \-bgamma ,
and
.B \-ggamma
options. Not all drivers support this.
.TP 8
.BI \-ggamma " value"
Set the green gamma correction.
.I value
must be between 0.1 and 10. The default is 1.0. Not all drivers support
this. See also the
.BR \-gamma ,
.BR \-rgamma ,
and
.B \-bgamma
options.
.TP 8
.B \-ignoreABI
The
.B Xorg
server checks the ABI revision levels of each module that it loads. It
will normally refuse to load modules with ABI revisions that are newer
than the server's. This is because such modules might use interfaces
that the server does not have. When this option is specified, mismatches
like this are downgraded from fatal errors to warnings. This option
should be used with care.
.TP 8
.B \-isolateDevice \fIbus\-id\fP
Restrict device resets to the device at
.IR bus\-id .
The
.I bus\-id
string has the form
.IB bustype : bus : device : function
(e.g., \(oqPCI:1:0:0\(cq).
At present, only isolation of PCI devices is supported; i.e., this option
is ignored if
.I bustype
is anything other than \(oqPCI\(cq.
.TP 8
.B \-keeptty
Prevent the server from detaching its initial controlling terminal. If you
want to use systemd-logind integration you must specify this option.
Not all platforms support (or can use) this option.
.TP 8
.BI \-keyboard " keyboard-name"
Use the
.BR xorg.conf (5)
file
.B InputDevice
section called
.I keyboard-name
as the core keyboard. This option is ignored when the
.B Layout
section specifies a core keyboard. In the absence of both a Layout
section and this option, the first relevant
.B InputDevice
section is used for the core keyboard.
.TP 8
.BI \-layout " layout-name"
Use the
.BR xorg.conf (5)
file
.B Layout
section called
.IR layout-name .
By default the first
.B Layout
section is used.
.TP 8
.BI \-logfile " filename"
Use the file called
.I filename
as the
.B Xorg
server log file. The default log file when running as root is
.BI /tmp/Xorg. n .log
and for non root it is
.BI $XDG_STATE_HOME/xorg/Xorg. n .log
where
.I n
is the display number of the
.B Xorg
server. The default may be in a different directory on some platforms.
This option is only available when the server is run as root (i.e, with
real-uid 0).
.TP 8
.BR \-logverbose " [\fIn\fP]"
Sets the verbosity level for information printed to the
.B Xorg
server log file. If the
.I n
value isn't supplied, each occurrence of this option increments the log
file verbosity level. When the
.I n
value is supplied, the log file verbosity level is set to that value.
The default log file verbosity level is 3.
.TP 8
.BR \-syslogverbose " [\fIn\fP]"
Sets the verbosity level for information printed to syslog. If the
.I n
value isn't supplied, each occurrence of this option increments the log
file verbosity level. When the
.I n
value is supplied, the log file verbosity level is set to that value.
The default log file verbosity level is 0 (silent).
.TP 8
.BI \-modulepath " searchpath"
Set the module search path to
.IR searchpath .
.I searchpath
is a comma separated list of directories to search for
.B Xorg
server modules. This option is only available when the server is run
as root (i.e, with real-uid 0).
.TP 8
.B \-noautoBindGPU
Disable automatically setting secondary GPUs up as output sinks and offload
sources. This is equivalent to setting the
.B AutoBindGPU
.BR xorg.conf (5)
file option. To
.B false.
.TP 8
.B \-nosilk
Disable Silken Mouse support.
.TP 8
.B \-novtswitch
Disable the automatic switching on X server reset and shutdown to the
VT that was active when the server started, if supported by the OS.
.TP 8
.BI \-pointer " pointer-name"
Use the
.BR xorg.conf (5)
file
.B InputDevice
section called
.I pointer-name
as the core pointer. This option is ignored when the
.B Layout
section specifies a core pointer. In the absence of both a Layout
section and this option, the first relevant
.B InputDevice
section is used for the core pointer.
.TP 8
.B \-quiet
Suppress most informational messages at startup. The verbosity level
is set to zero.
.TP 8
.BI \-rgamma " value"
Set the red gamma correction.
.I value
must be between 0.1 and 10. The default is 1.0. Not all drivers support
this. See also the
.BR \-gamma ,
.BR \-bgamma ,
and
.B \-ggamma
options.
.TP 8
.B \-sharevts
Share virtual terminals with another X server, if supported by the OS.
.TP 8
.BI \-screen " screen-name"
Use the
.BR xorg.conf (5)
file
.B Screen
section called
.IR screen-name .
By default the screens referenced by the default
.B Layout
section are used, or the first
.B Screen
section when there are no
.B Layout
sections.
.TP 8
.B \-showconfig
This is the same as the
.B \-version
option, and is included for compatibility reasons. It may be removed
in a future release, so the
.B \-version
option should be used instead.
.TP 8
.B \-showDefaultModulePath
Print out the default module path the server was compiled with.
.TP 8
.B \-showDefaultLibPath
Print out the path libraries should be installed to.
.TP 8
.B \-showopts
For each driver module installed, print out the list of options and their
argument types.
.TP 8
.BI \-weight " nnn"
Set RGB weighting at 16 bpp. The default is 565. This applies only to
those drivers which support 16 bpp.
.TP 8
.BR \-verbose " [\fIn\fP]"
Sets the verbosity level for information printed on stderr. If the
.I n
value isn't supplied, each occurrence of this option increments the
verbosity level. When the
.I n
value is supplied, the verbosity level is set to that value. The default
verbosity level is 0.
.TP 8
.B \-version
Print out the server version, patchlevel, release date, the operating
system/platform it was built on, and whether it includes module loader
support.
.SH "KEYBOARD"
The
.B Xorg
server is normally configured to recognize various special combinations
of key presses that instruct the server to perform some action, rather
than just sending the key press event to a client application. These actions
depend on the XKB keymap loaded by a particular keyboard device and may or
may not be available on a given configuration.
.PP
The following key combinations are commonly part of the default XKEYBOARD
keymap.
.TP 8
.B Ctrl+Alt+Backspace
Immediately kills the server -- no questions asked. It can be disabled by
setting the
.B DontZap
.BR xorg.conf (5)
file option to a TRUE value.
.PP
.RS 8
It should be noted that zapping is triggered by the
.B Terminate_Server
action in the keyboard map. This action is not part of the default keymaps
but can be enabled with the XKB option
.B \*qterminate:ctrl_alt_bksp\*q.
.RE
.TP 8
.B Ctrl+Alt+Keypad-Plus
Change video mode to next one specified in the configuration file.
This can be disabled with the
.B DontZoom
.BR xorg.conf (5)
file option.
.TP 8
.B Ctrl+Alt+Keypad-Minus
Change video mode to previous one specified in the configuration file.
This can be disabled with the
.B DontZoom
.BR xorg.conf (5)
file option.
.TP 8
.B Ctrl+Alt+F1...F12
For systems with virtual terminal support, these keystroke
combinations are used to switch to virtual terminals 1 through 12,
respectively. This can be disabled with the
.B DontVTSwitch
.BR xorg.conf (5)
file option.
.SH CONFIGURATION
.B Xorg
typically uses a configuration file called
.B xorg.conf
and configuration files with the suffix
.I .conf
in a directory called
.B xorg.conf.d
for its initial setup.
Refer to the
.BR xorg.conf (5)
manual page for information about the format of this file.
.PP
.B Xorg
has a mechanism for automatically generating a built-in configuration
at run-time when no
.B xorg.conf
file or
.B xorg.conf.d
files are present. The current version of this automatic configuration
mechanism works in two ways.
.PP
The first is via enhancements that have made many components of the
.B xorg.conf
file optional. This means that information that can be probed or
reasonably deduced doesn't need to be specified explicitly, greatly
reducing the amount of built-in configuration information that needs to
be generated at run-time.
.PP
The second is to have "safe" fallbacks for most configuration information.
This maximises the likelihood that the
.B Xorg
server will start up in some usable configuration even when information
about the specific hardware is not available.
.PP
The automatic configuration support for Xorg is work in progress.
It is currently aimed at the most popular hardware and software platforms
supported by Xorg. Enhancements are planned for future releases.
.SH FILES
The
.B Xorg
server config files can be found in a range of locations.
These are documented fully in the
.BR xorg.conf (5)
manual page.
The most commonly used locations are shown here.
.TP 30
.B /etc/X11/xorg.conf
Server configuration file.
.TP 30
.B /etc/X11/xorg.conf-4
Server configuration file.
.TP 30
.B /etc/xorg.conf
Server configuration file.
.TP 30
.B /usr/etc/xorg.conf
Server configuration file.
.TP 30
.B /usr/lib/X11/xorg.conf
Server configuration file.
.TP 30
.B /etc/X11/xorg.conf.d
Server configuration directory.
.TP 30
.B /etc/X11/xorg.conf.d-4
Server configuration directory.
.TP 30
.B /etc/xorg.conf.d
Server configuration directory.
.TP 30
.B /usr/etc/xorg.conf.d
Server configuration directory.
.TP 30
.B /usr/lib/X11/xorg.conf.d
Server configuration directory.
.TP 30
.BI /tmp/Xorg. n .log
Server log file for display
.IR n .
.TP 30
.B /usr/bin/\(**
Client binaries.
.TP 30
.B /usr/include/\(**
Header files.
.TP 30
.B /usr/lib/\(**
Libraries.
.TP 30
.B /usr/share/fonts/X11/\(**
Fonts.
.TP 30
.B /usr/share/X11/XErrorDB
Client error message database.
.TP 30
.B /usr/lib/X11/app-defaults/\(**
Client resource specifications.
.TP 30
.B /usr/share/man/man?/\(**
Manual pages.
.TP 30
.BI /etc/X n .hosts
Initial access control list for display
.IR n .
.SH "SEE ALSO"
.BR X (7),
.BR Xserver (1),
.BR xdm (1),
.BR xinit (1),
.BR xorg.conf (5),
.BR xvidtune (1),
.BR xkeyboard-config (7),
.BR apm (4),
.BR ati (4),
.BR chips (4),
.BR cirrus (4),
.BR cyrix (4),
.BR fbdev (4),
.BR glide (4),
.BR glint (4),
.BR i128 (4),
.BR i740 (4),
.BR imstt (4),
.BR intel (4),
.BR mga (4),
.BR neomagic (4),
.BR nsc (4),
.BR nv (4),
.BR openchrome (4),
.BR r128 (4),
.BR rendition (4),
.BR s3virge (4),
.BR siliconmotion (4),
.BR sis (4),
.BR sunbw2 (4),
.BR suncg14 (4),
.BR suncg3 (4),
.BR suncg6 (4),
.BR sunffb (4),
.BR sunleo (4),
.BR suntcx (4),
.BR tdfx (4),
.BR tga (4),
.BR trident (4),
.BR tseng (4),
.BR v4l (4),
.BR vesa (4),
.BR vmware (4),
.br
Web site
.IR <https://www.x.org> .
.SH AUTHORS
Xorg has many contributors world wide. The names of most of them
can be found in the documentation, ChangeLog files in the source tree,
and in the actual source code.
.PP
Xorg was originally based on XFree86 4.4rc2.
That was originally based on \fIX386 1.2\fP by Thomas Roell, which
was contributed to the then X Consortium's X11R5 distribution by SGCS.
.PP
Xorg is released by the X.Org Foundation.
.PP
The project that became XFree86 was originally founded in 1992 by
David Dawes, Glenn Lai, Jim Tsillas and David Wexelblat.
.PP
XFree86 was later integrated in the then X Consortium's X11R6 release
by a group of dedicated XFree86 developers, including the following:
.PP
.RS 4
.nf
Stuart Anderson \fIanderson@metrolink.com\fP
Doug Anson \fIdanson@lgc.com\fP
Gertjan Akkerman \fIakkerman@dutiba.twi.tudelft.nl\fP
Mike Bernson \fImike@mbsun.mlb.org\fP
Robin Cutshaw \fIrobin@XFree86.org\fP
David Dawes \fIdawes@XFree86.org\fP
Marc Evans \fImarc@XFree86.org\fP
Pascal Haible \fIhaible@izfm.uni-stuttgart.de\fP
Matthieu Herrb \fIMatthieu.Herrb@laas.fr\fP
Dirk Hohndel \fIhohndel@XFree86.org\fP
David Holland \fIdavidh@use.com\fP
Alan Hourihane \fIalanh@fairlite.demon.co.uk\fP
Jeffrey Hsu \fIhsu@soda.berkeley.edu\fP
Glenn Lai \fIglenn@cs.utexas.edu\fP
Ted Lemon \fImellon@ncd.com\fP
Rich Murphey \fIrich@XFree86.org\fP
Hans Nasten \fInasten@everyware.se\fP
Mark Snitily \fImark@sgcs.com\fP
Randy Terbush \fIrandyt@cse.unl.edu\fP
Jon Tombs \fItombs@XFree86.org\fP
Kees Verstoep \fIversto@cs.vu.nl\fP
Paul Vixie \fIpaul@vix.com\fP
Mark Weaver \fIMark_Weaver@brown.edu\fP
David Wexelblat \fIdwex@XFree86.org\fP
Philip Wheatley \fIPhilip.Wheatley@ColumbiaSC.NCR.COM\fP
Thomas Wolfram \fIwolf@prz.tu-berlin.de\fP
Orest Zborowski \fIorestz@eskimo.com\fP
.fi
.RE
.PP
Xlibre source is available via git \fI<https://github.com/X11Libre/xserver.git/>\fP.
.SH LEGAL
.B Xorg
is copyright software, provided under licenses that permit modification
and redistribution in source and binary form without fee.
.B Xorg is copyright by numerous authors and
contributors from around the world. Licensing information can be found
at
.IR <https://www.x.org> .
Refer to the source code for specific copyright notices.
.PP
.B XFree86(TM)
is a trademark of The XFree86 Project, Inc.
.PP
.B X11(TM)
and
.B X Window System(TM)
are trademarks of The Open Group.
@@ -0,0 +1,664 @@
'\" t
.\"
.\" Copyright 1984 - 1991, 1993, 1994, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
.\" documentation for any purpose is hereby granted without fee, provided that
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\" The above copyright notice and this permission notice shall be included
.\" in all copies or substantial portions of the Software.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
.\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
.\" OTHER DEALINGS IN THE SOFTWARE.
.\"
.\" Except as contained in this notice, the name of The Open Group shall
.\" not be used in advertising or otherwise to promote the sale, use or
.\" other dealings in this Software without prior written authorization
.\" from The Open Group.
.\" $XFree86: xc/programs/Xserver/Xserver.man,v 3.31 2004/01/10 22:27:46 dawes Exp $
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH XSERVER 1 "xorg-server 25.2.0" "X Version 11"
.SH NAME
Xserver \- X Window System display server
.SH SYNOPSIS
.B X
[option \&...\&]
.SH DESCRIPTION
.I X
is the generic name for the X Window System display server. It is
frequently a link or a copy of the appropriate server binary for
driving the most frequently used server on a given machine.
.SH "STARTING THE SERVER"
The X server is usually started from the X Display Manager program
.BR xdm (1)
or a similar display manager program.
This utility is run from the system boot files and takes care of keeping
the server running, prompting for usernames and passwords, and starting up
the user sessions.
.PP
Installations that run more than one window system may need to use the
.BR xinit (1)
utility instead of a display manager. However, \fIxinit\fP is
to be considered a tool for building startup scripts and is not
intended for use by end users. Site administrators are \fBstrongly\fP
urged to use a display manager, or build other interfaces for novice users.
.PP
The X server may also be started directly by the user, though this
method is usually reserved for testing and is not recommended for
normal operation. On some platforms, the user must have special
permission to start the X server, often because access to certain
devices (e.g.\& \fI/dev/mouse\fP) is restricted. Where applicable, the
X server notifies systemd when it is ready to process requests.
.PP
When the X server starts up, it typically takes over the display. If
you are running on a workstation whose console is the display, you may
not be able to log into the console while the server is running.
.SH OPTIONS
Many X servers have device-specific command line options. See the manual
pages for the individual servers for more details; a list of
server-specific manual pages is provided in the SEE ALSO section below.
.PP
All of the X servers accept the command line options described below.
Some X servers may have alternative ways of providing the parameters
described here, but the values provided via the command line options
should override values specified via other mechanisms.
.TP 8
.B :\fIdisplaynumber\fP
The X server runs as the given \fIdisplaynumber\fP, which by default is 0.
If multiple X servers are to run simultaneously on a host, each must have
a unique display number.
See the DISPLAY NAMES section of the
.BR X (7)
manual page to learn how to
specify which display number clients should try to use.
.TP 8
.B \-a \fInumber\fP
sets pointer acceleration (i.e., the ratio of how much is reported to how much
the user actually moved the pointer).
.TP 8
.B \-ac
disables host-based access control mechanisms. Enables access by any host,
and permits any host to modify the access control list.
Use with extreme caution.
This option exists primarily for running test suites remotely.
.TP 8
.B \-audit \fIlevel\fP
sets the audit trail level. The default level is 1, meaning only connection
rejections are reported. Level 2 additionally reports all successful
connections and disconnects. Level 4 enables messages from the
SECURITY extension, if present, including generation and revocation of
authorizations and violations of the security policy.
Level 0 turns off the audit trail.
Audit lines are sent as standard error output.
.TP 8
.B \-auth \fIauthorization-file\fP
specifies a file which contains a collection of authorization records used
to authenticate access.
See also the
.BR xdm (1)
and
.BR Xsecurity (7)
manual pages.
.TP 8
.B \-background none
Asks the driver not to clear the background on startup,
if the driver supports that.
May be useful for smooth transition with e.g.\& fbdev driver.
For security reasons this is not the default as the screen contents might
show a previous user session.
.TP 8
.B \-br
sets the default root window to solid black instead of the standard root weave
pattern.
This is the default unless \-retro or \-wr is specified.
.TP 8
.B \-bs
disables backing store support on all screens.
.TP 8
.B +byteswappedclients
Allow connections from clients with an endianness different to that of the
server.
.TP 8
.B \-byteswappedclients
Prohibit connections from clients with an endianness different to that of the
server.
This is the default unless \fB+byteswappedclients\fP is specified.
.TP 8
.B \-c
turns off key-click.
.TP 8
.B c \fIvolume\fP
sets key-click volume (allowable range: 0\(en100).
.TP 8
.B \-cc \fIclass\fP
sets the visual class for the root window of color screens.
The class numbers are as specified in the X protocol.
Not obeyed by all servers.
.TP 8
.B \-core
causes the server to generate a core dump on fatal errors.
.TP 8
.B \-displayfd \fIfd\fP
specifies a file descriptor in the launching process. Rather than specify
a display number, the X server will attempt to listen on successively higher
display numbers, and upon finding a free one, will write the display number back
on this file descriptor as a newline-terminated string. The \-pn option is
ignored when using \-displayfd.
.TP 8
.B \-deferglyphs \fIwhichfonts\fP
specifies the types of fonts for which the server should attempt to use
deferred glyph loading. \fIwhichfonts\fP can be all (all fonts),
none (no fonts), or 16 (16 bit fonts only).
.TP 8
.B \-dpi \fIresolution\fP
sets the resolution for all screens, in dots per inch.
To be used when the server cannot determine the screen size(s) from the
hardware.
.TP 8
.B dpms
enables DPMS (display power management services), where supported. The
default state is platform and configuration specific.
.TP 8
.B \-dpms
disables DPMS (display power management services). The default state
is platform and configuration specific.
.TP 8
.BI "\-extension " extensionName
disables named extension.
If an unknown extension name is specified,
a list of accepted extension names is printed.
.TP 8
.BI "+extension " extensionName
enables named extension.
If an unknown extension name is specified,
a list of accepted extension names is printed.
.TP 8
.B \-f \fIvolume\fP
sets beep (bell) volume (allowable range: 0\(en100).
.TP 8
.B \-fakescreenfps \fIfps\fP
sets fake presenter screen default fps (allowable range: 1\(en600).
.TP 8
.B \-fp \fIfontPath\fP
sets the search path for fonts. This path is a comma-separated list
of directories which the X server searches for font databases.
See the FONTS section of this manual page for more information and the default
list.
.TP 8
.B \-fontserverconnections
Prohibit font server connections in the font path. Font servers are
rarely used and are a source of security vulnerabilities.
This is the default unless +fontserverconnections is specified.
.TP 8
.B +fontserverconnections
Allow font server connections in the font path.
.TP 8
.B \-help
prints a usage message.
.TP 8
.B \-I
causes all remaining command line arguments to be ignored.
.TP 8
.B \-iglx
Prohibit creating indirect GLX contexts. Indirect GLX is of limited use,
since it lacks support for many modern OpenGL features and extensions;
it's slower than direct contexts; and it opens a large attack surface for
protocol parsing errors.
This is the default unless +iglx is specified.
.TP 8
.B +iglx
Allow creating indirect GLX contexts.
.TP 8
.B \-maxbigreqsize \fIsize\fP
sets the maximum big request to
.I size
MB.
.TP 8
.B \-nocursor
disable the display of the pointer cursor.
.TP 8
.B \-nolisten \fItrans-type\fP
disables a transport type. For example, TCP/IP connections can be disabled
with
.BR "\-nolisten tcp" .
This option may be issued multiple times to disable listening to different
transport types.
Supported transport types are platform dependent, but commonly include:
.TS
l l.
tcp TCP over IPv4 or IPv6
inet TCP over IPv4 only
inet6 TCP over IPv6 only
unix UNIX Domain Sockets
local Platform preferred local connection method
.TE
.TP 8
.B \-listen \fItrans-type\fP
enables a transport type. For example, TCP/IP connections can be enabled
with
.BR "\-listen tcp" .
This option may be issued multiple times to enable listening to different
transport types.
.TP 8
.B \-terminate
command line option.
.TP 8
.B \-p \fIminutes\fP
sets screen-saver pattern cycle time in minutes.
.TP 8
.B \-pn
permits the server to continue running if it fails to establish all of
its well-known sockets (connection points for clients), but
establishes at least one. This option is set by default.
.TP 8
.B \-nopn
causes the server to exit if it fails to establish all of its well-known
sockets (connection points for clients).
.TP 8
.B \-r
turns off auto-repeat.
.TP 8
.B r
turns on auto-repeat.
.TP 8
.B \-retro
starts the server with the classic stipple and cursor visible. The default
is to start with a black root window, and to suppress display of the cursor
until the first time an application calls XDefineCursor().
For kdrive servers, this implies \-zap.
.TP 8
.B \-s \fIminutes\fP
sets screen-saver timeout time in minutes.
.TP 8
.B \-su
disables save under support on all screens.
.TP 8
.B \-seat \fIseat\fP
seat to run on. Takes a string identifying a seat in a platform
specific syntax. On platforms which support this feature this may be
used to limit the server to expose only a specific subset of devices
connected to the system.
.TP 8
.B \-t \fInumber\fP
sets pointer acceleration threshold in pixels (i.e., after how many pixels
pointer acceleration should take effect).
.TP 8
.BR \-terminate " ["\c
.IR delay ]
causes the server to terminate at server reset, instead of continuing to run.
This overrides a previous
.B \-noreset
command line option.
If a delay in seconds is specified, the server waits for at least
the delay. At the end of this grace period if no client is
connected, the server terminates immediately.
.TP 8
.B \-tst
disables all testing extensions (e.g., XTEST, XTrap, XTestExtension1, RECORD).
.TP 8
.B tty\fIxx\fP
ignored, for servers started the ancient way (from init).
.TP 8
.B v
sets video-off screen-saver preference.
.TP 8
.B \-v
sets video-on screen-saver preference.
.TP 8
.BR \-verbose " [\fIn\fP]"
Sets the verbosity level for information printed on stderr. If the
.I n
value isn't supplied, each occurrence of this option increments the
verbosity level. When the
.I n
value is supplied, the verbosity level is set to that value. The default
verbosity level is 0.
.TP 8
.B \-wr
sets the default root window to solid white instead of the standard root weave
pattern.
.TP 8
.B \-x \fIextension\fP
loads the specified extension at init.
This is a no-op for most implementations.
.TP 8
.RB [ +\- ] xinerama
enables(+) or disables(\-) the XINERAMA extension. The default state is
platform and configuration specific.
.SH SERVER DEPENDENT OPTIONS
Some X servers accept the following options:
.TP 8
.B \-maxclients
.BR 64 | 128 | 256 | 512
Set the maximum number of clients allowed to connect to the X server.
Acceptable values are 64, 128, 256 or 512.
.TP 8
.B \-render
.BR default | mono | gray | color
sets the color allocation policy that will be used by the render extension.
.RS 8
.TP 8
.I default
selects the default policy defined for the display depth of the X
server.
.TP 8
.I mono
don't use any color cell.
.TP 8
.I gray
use a gray map of 13 color cells for the X render extension.
.TP 8
.I color
use a color cube of at most 4*4*4 colors (that is 64 color cells).
.RE
.TP 8
.B \-dumbSched
disables smart scheduling on platforms that support the smart scheduler.
.TP
.B \-schedInterval \fIinterval\fP
sets the smart scheduler's scheduling interval to
.I interval
milliseconds.
.SH XDMCP OPTIONS
X servers that support XDMCP have the following options.
See the \fIX Display Manager Control Protocol\fP specification for more
information.
.TP 8
.B \-query \fIhostname\fP
enables XDMCP and sends Query packets to the specified
.IR hostname .
.TP 8
.B \-broadcast
enable XDMCP and broadcasts BroadcastQuery packets to the network. The
first responding display manager will be chosen for the session.
.TP 8
.BR \-multicast " ["\c
.IR address " [" "hop count" ]]
Enable XDMCP and multicast BroadcastQuery packets to the network.
The first responding display manager is chosen for the session. If an
address is specified, the multicast is sent to that address. If no
address is specified, the multicast is sent to the default XDMCP IPv6
multicast group. If a hop count is specified, it is used as the maximum
hop count for the multicast. If no hop count is specified, the multicast
is set to a maximum of 1 hop, to prevent the multicast from being routed
beyond the local network.
.TP 8
.B \-indirect \fIhostname\fP
enables XDMCP and send IndirectQuery packets to the specified
.IR hostname .
.TP 8
.B \-port \fIport-number\fP
uses the specified \fIport-number\fP for XDMCP packets, instead of the
default. This option must be specified before any \-query, \-broadcast,
\-multicast, or \-indirect options.
.TP 8
.B \-from \fIlocal-address\fP
specifies the local address to connect from (useful if the connecting host
has multiple network interfaces). The \fIlocal-address\fP may be expressed
in any form acceptable to the host platform's \fIgethostbyname\fP(3)
implementation.
.TP 8
.B \-class \fIdisplay-class\fP
XDMCP has an additional display qualifier used in resource lookup for
display-specific options. This option sets that value, by default it
is "MIT-unspecified" (not a very useful value).
.TP 8
.B \-cookie \fIxdm-auth-bits\fP
When testing XDM-AUTHENTICATION-1, a private key is shared between the
server and the manager. This option sets the value of that private
data (not that it is very private, being on the command line!).
.TP 8
.B \-displayID \fIdisplay-id\fP
Yet another XDMCP specific value, this one allows the display manager to
identify each display so that it can locate the shared key.
.SH XKEYBOARD OPTIONS
X servers that support the XKEYBOARD (a.k.a.\& \*qXKB\*q) extension accept the
following options. All layout files specified on the command line must be
located in the XKB base directory or a subdirectory, and specified as the
relative path from the XKB base directory. The default XKB base directory is
.IR /usr/lib/X11/xkb .
.TP 8
.RB [ +\- ] accessx " [ \fItimeout\fP [ \fItimeout_mask\fP [ \
\fIfeedback\fP [ \fIoptions_mask\fP ] ] ] ]"
enables(+) or disables(\-) AccessX key sequences.
.TP 8
.B \-xkbdir \fIdirectory\fP
base directory for keyboard layout files. This option is not available
for setuid X servers (i.e., when the X server's real and effective uids
are different).
.TP 8
.B \-ardelay \fImilliseconds\fP
sets the autorepeat delay (length of time in milliseconds that a key must
be depressed before autorepeat starts).
.TP 8
.B \-arinterval \fImilliseconds\fP
sets the autorepeat interval (length of time in milliseconds that should
elapse between autorepeat-generated keystrokes).
.TP 8
.B \-xkbmap \fIfilename\fP
loads keyboard description in \fIfilename\fP on server startup.
.SH "NETWORK CONNECTIONS"
The X server supports client connections via a platform-dependent subset of
the following transport types: TCP/IP, Unix Domain sockets,
and several varieties of SVR4 local connections.
See the DISPLAY NAMES section of the
.BR X (7)
manual page to learn how to
specify which transport type clients should try to use.
.SH GRANTING ACCESS
The X server implements a platform-dependent subset of the following
authorization protocols: MIT-MAGIC-COOKIE-1, XDM-AUTHORIZATION-1,
Host Access, and Server Interpreted.
See the
.BR Xsecurity (7)
manual page for information on the operation of these protocols.
.PP
Authorization data required by the above protocols is passed to the
server in a private file named with the \fB\-auth\fP command line
option. Each time the server is about to accept the first connection
after a reset (or when the server is starting), it reads this file.
If this file contains any authorization records, the local host is not
automatically allowed access to the server, and only clients which
send one of the authorization records contained in the file in the
connection setup information will be allowed access. See the
.BR Xau (3)
manual page for a description of the binary format of this file. See
.BR xauth (1)
for maintenance of this file, and distribution of its contents to remote hosts.
.PP
The X server also uses a host-based access control list for deciding
whether or not to accept connections from clients on a particular machine.
If no other authorization mechanism is being used,
this list initially consists of the host on which the server is running as
well as any machines listed in the file \fI/etc/X\fBn\fI.hosts\fR, where
\fBn\fP is the display number of the server. Each line of the file should
contain either an Internet hostname (e.g., expo.lcs.mit.edu)
or a complete name in the format
\fIfamily\fP:\fIname\fP as described in the
.BR xhost (1)
manual page.
There should be no leading or trailing spaces on any lines. For example:
.sp
.in +8
.nf
joesworkstation
corporate.company.com
inet:bigcpu
local:
.fi
.in -8
.PP
Users can add or remove hosts from this list and enable or disable access
control using the \fIxhost\fP command from the same machine as the server.
.PP
The X protocol intrinsically does not have any notion of window operation
permissions or place any restrictions on what a client can do; if a program can
connect to a display, it has full run of the screen.
X servers that support the SECURITY extension fare better because clients
can be designated untrusted via the authorization they use to connect; see the
.BR xauth (1)
manual page for details. Restrictions are imposed
on untrusted clients that curtail the mischief they can do. See the SECURITY
extension specification for a complete list of these restrictions.
.PP
Sites that have better
authentication and authorization systems might wish to make
use of the hooks in the libraries and the server to provide additional
security models.
.SH SIGNALS
The X server attaches special meaning to the following signals:
.TP 8
.I SIGHUP
This signal causes the server to close all existing connections, free all
resources, and restore all defaults. It is sent by the display manager
whenever the main user's main application (usually an \fIxterm\fP or window
manager) exits to force the server to clean up and prepare for the next
user.
.TP 8
.I SIGTERM
This signal causes the server to exit cleanly.
.TP 8
.I SIGUSR1
This signal is used quite differently from either of the above. When the
server starts, it checks to see if it has inherited SIGUSR1 as SIG_IGN
instead of the usual SIG_DFL. In this case, the server sends a SIGUSR1 to
its parent process after it has set up the various connection schemes.
\fIXdm\fP uses this feature to recognize when connecting to the server
is possible.
.SH FONTS
The X server can obtain fonts from directories and/or from font servers.
The list of directories and font servers
the X server uses when trying to open a font is controlled
by the \fIfont path\fP.
.LP
The default font path is
/usr/share/fonts/misc,\:/usr/share/fonts/TTF,\:/usr/share/fonts/OTF .
.LP
A special kind of directory can be specified using the \fBcatalogue\fP:
prefix. Directories specified this way can contain symlinks pointing to the
real font directories. See the FONTPATH.D section for details.
.LP
The font path can be set with the \fB\-fp\fP option or by
.BR xset (1)
after the server has started.
.SH "FONTPATH.D"
You can specify a special kind of font path in the form \fBcatalogue:<dir>\fR.
The directory specified after the catalogue: prefix will be scanned for symlinks
and each symlink destination will be added as a local fontfile FPE.
.PP
The symlink can be suffixed by attributes such as \&'\fBunscaled\fR',
which will be passed through to the underlying fontfile FPE.
The only exception is the newly introduced \&'\fBpri\fR' attribute,
which will be used for ordering the font paths specified by the symlinks.
An example configuration:
.nf
75dpi:unscaled:pri=20 \-> /usr/share/X11/fonts/75dpi
ghostscript:pri=60 \-> /usr/share/fonts/default/ghostscript
misc:unscaled:pri=10 \-> /usr/share/X11/fonts/misc
type1:pri=40 \-> /usr/share/X11/fonts/Type1
type1:pri=50 \-> /usr/share/fonts/default/Type1
.fi
This will add /usr/share/X11/fonts/misc as the first FPE with the attribute
\N'39'unscaled', second FPE will be /usr/share/X11/fonts/75dpi, also with
the attribute \&'unscaled' etc.
This is functionally equivalent to setting the following font path:
.nf
/usr/share/X11/fonts/misc:unscaled,
/usr/share/X11/fonts/75dpi:unscaled,
/usr/share/X11/fonts/Type1,
/usr/share/fonts/default/Type1,
/usr/share/fonts/default/ghostscript
.fi
.SH FILES
.TP 30
.I /etc/X\fBn\fP.hosts
Initial access control list for display number \fBn\fP
.TP 30
.IR /usr/share/fonts/X11/misc ", " /usr/share/fonts/X11/75dpi ", " /usr/share/fonts/X11/100dpi
Bitmap font directories
.TP 30
.IR /usr/share/fonts/X11/TTF ", " /usr/share/fonts/X11/Type1
Outline font directories
.TP 30
.I /tmp/.X11-unix/X\fBn\fP
Unix domain socket for display number \fBn\fP
.TP 30
.I /usr/adm/X\fBn\fPmsgs
Error log file for display number \fBn\fP if run from
.BR init (8)
.TP 30
.I /usr/lib/X11/xdm/xdm\-errors
Default error log file if the server is run from
.BR xdm (1)
.SH "SEE ALSO"
General information:
.BR X (7)
.PP
Protocols:
.I "X Window System Protocol,"
.I "The X Font Service Protocol,"
.I "X Display Manager Control Protocol"
.PP
Fonts:
.BR bdftopcf (1),
.BR mkfontdir (1),
.BR mkfontscale (1),
.BR xfs (1),
.BR xlsfonts (1),
.BR xfontsel (1),
.BR xfd (1),
.I "X Logical Font Description Conventions"
.PP
Keyboards:
.BR xkeyboard\-config (7)
.PP
Security:
.BR Xsecurity (7),
.BR xauth (1),
.BR Xau (3),
.BR xdm (1),
.BR xhost (1),
.I "Security Extension Specification"
.PP
Starting the server:
.BR startx (1),
.BR xdm (1),
.BR xinit (1)
.PP
Controlling the server once started:
.BR xset (1),
.BR xsetroot (1),
.BR xhost (1),
.BR xinput (1),
.BR xrandr (1)
.PP
Server-specific man pages:
.BR Xorg (1),
.BR Xephyr (1),
.BR Xnest (1),
.BR Xvfb (1),
.BR Xquartz (1),
.BR XWin (1).
.PP
Server internal documentation:
.I "Definition of the Porting Layer for the X v11 Sample Server"
.SH AUTHORS
The sample server was originally written by Susan Angebranndt, Raymond
Drewry, Philip Karlton, and Todd Newman, from Digital Equipment
Corporation, with support from a large cast. It has since been
extensively rewritten by Keith Packard and Bob Scheifler, from MIT.
Dave Wiggins took over post-R5 and made substantial improvements.
+45
View File
@@ -0,0 +1,45 @@
.TH GTF 1 "xorg-server 25.2.0" "X Version 11"
.SH NAME
gtf - calculate VESA GTF mode lines
.SH SYNOPSIS
.B gtf
.I h-resolution
.I v-resolution
.I refresh
.RB [ \-v | \-\-verbose ]
.RB [ \-f | \-\-fbmode ]
.RB [ \-x | \-\-xorgmode ]
.SH DESCRIPTION
.I Gtf
is a utility for calculating VESA GTF modes. Given the desired
horizontal and vertical resolutions and refresh rate (in Hz), the parameters
for a matching VESA GTF mode are printed out. Two output formats are
supported: mode lines suitable for the Xorg
.BR xorg.conf (5)
file, and mode parameters suitable for the Linux
.BR fbset (8)
utility.
.SH OPTIONS
.TP 8
.BR \-v | \-\-verbose
Enable verbose printouts This shows a trace for each step of the
computation.
.TP 8
.BR \-x | \-\-xorgmode
Print the mode parameters as Xorg-style mode lines. This is the
default format.
.TP 8
.BR \-f | \-\-fbset
Print the mode parameters in a format suitable for
.BR fbset (8).
.SH "SEE ALSO"
.BR xorg.conf (5),
.BR cvt (1)
.SH AUTHOR
Andy Ritger.
.PP
This program is based on the Generalized Timing Formula (GTF(TM)) Standard
Version: 1.0, Revision: 1.0. The GTF Excel(TM) spreadsheet, a sample
(and the definitive) implementation of the GTF Timing Standard is
available at <ftp://ftp.vesa.org/pub/GTF/VTF_V1R1.xls>.
+52
View File
@@ -0,0 +1,52 @@
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH EXA 4 "xorg-server 25.2.0" "X Version 11"
.SH NAME
exa \- new 2D acceleration architecture for X.Org
.SH DESCRIPTION
.B EXA
provides a simple API for video drivers to implement for 2D acceleration.
It is a module loaded by drivers,
and is not intended to be loaded on its own.
See your driver's manual page for how to enable
.BR EXA .
.PP
The
.B EXA
architecture is designed to make accelerating the Render extension simple
and efficient,
and results in various performance tradeoffs compared to XAA.
Some xorg.conf options are available for debugging performance issues
or driver rendering problems.
They are not intended for general use.
.TP
.BI "Option \*qEXANoComposite\*q \*q" boolean \*q
Disables acceleration of the Composite operation,
which is at the heart of the Render extension.
Not related to the Composite extension.
Default: No.
.TP
.BI "Option \*qEXANoUploadToScreen\*q \*q" boolean \*q
Disables acceleration of uploading pixmap data to the framebuffer.
Default: No.
.TP
.BI "Option \*qEXANoDownloadFromScreen\*q \*q" boolean \*q
Disables acceleration of downloading of pixmap data from the framebuffer.
.B NOTE:
Not usable with drivers which rely on DownloadFromScreen succeeding.
Default: No.
.TP
.BI "Option \*qMigrationHeuristic\*q \*q" anystr \*q
Chooses an alternate pixmap migration heuristic,
for debugging purposes.
The default is intended to be the best performing one for general use,
though others may help with specific use cases.
Available options include \*qalways\*q,
\*qgreedy\*q,
and \*qsmart\*q.
Default: always.
.SH SEE ALSO
.BR Xorg (1),
.BR xorg.conf (5).
.SH AUTHORS
Authors include: Keith Packard, Eric Anholt, Zack Rusin, and Michel D\(:anzer
@@ -0,0 +1,32 @@
.\" $XFree86: xc/programs/Xserver/hw/xfree86/fbdevhw/fbdevhw.man,v 1.1 2001/01/24 00:06:34 dawes Exp $
.TH FBDEVHW 4 "xorg-server 25.2.0" "X Version 11"
.SH NAME
fbdevhw \- os-specific submodule for framebuffer device access
.SH DESCRIPTION
.B fbdevhw
provides functions for talking to a framebuffer device. It is
os-specific. It is a submodule used by other video drivers.
A
.B fbdevhw
module is currently available for linux framebuffer devices.
.PP
.BR fbdev (4)
is a non-accelerated driver which runs on top of the
fbdevhw module. fbdevhw can be used by other drivers too, this
is usually activated with `Option "UseFBDev"' in the device section.
.SH CONFIGURATION DETAILS
Drivers using this module, like fbdev, usually have options
for setting the desired framebuffer device in xorg.conf.
For drivers that don't, or if this isn't set in xorg.conf,
fbdevhw also reads the FRAMEBUFFER environment variable for
the path to the framebuffer device it should use.
.SH "SEE ALSO"
.BR Xorg (1),
.BR xorg.conf (5),
.BR xorgconfig (1),
.BR Xserver (1),
.BR X (7),
.BR fbdev (4)
.SH AUTHORS
Authors include: Gerd Knorr, based on the XF68_FBDev Server code
(Martin Schaller, Geert Uytterhoeven).
@@ -0,0 +1,612 @@
'\" t
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH LIBINPUT 4 2025-06-01 "xf86-input-libinput 25.0.1"
.SH NAME
libinput \- libinput-based X.Org input driver
.SH SYNOPSIS
.nf
.B "Section \*qInputDevice\*q"
.BI " Identifier \*q" devname \*q
.B " Driver \*qlibinput\*q"
.BI " Option \*qDevice\*q \*q" devpath \*q
\ \ ...
.B EndSection
.fi
.SH NOTE
This is the man page for the X input driver.
If you are looking for the library documentation, go to
.B http://wayland.freedesktop.org/libinput/doc/
.SH DESCRIPTION
.B libinput
is an XLibre input driver based on libinput.
It therefore supports all input devices that libinput can handle, including
most mice, keyboards, tablets and touchscreens.
.PP
It is recommended that
.B libinput
devices are configured through the
.B InputClass
directive (refer to
.BR xorg.conf (5))
instead of manual per-device configuration.
Devices configured using the
.B InputDevice
directive in the
.BR xorg.conf (5)
file are not hot-plug capable.
.SH CONFIGURATION DETAILS
Please refer to
.BR xorg.conf (5)
for general configuration details
and for options that can be used with all input drivers.
This section only covers configuration details specific to this driver.
.PP
The following driver
.B Options
are supported:
.TP 7
.BI "Option \*qAccelProfile\*q \*q" string \*q
Sets the pointer acceleration profile to the given profile.
Permitted values are
.BR adaptive ,
.BR flat ,
.BR custom .
Not all devices support this option or all profiles.
If a profile is unsupported, the default profile for this device is used.
For a description on the profiles and their behavior,
see the libinput documentation.
.TP 7
.BI "Option \*qAccelSpeed\*q \*q" float \*q
Sets the pointer acceleration speed within the range [-1, 1].
This only applies to the flat or adaptive profile.
.TP 7
.BI "Option \*qAccelPointsFallback\*q \*q" string \*q
.TQ
.BI "Option \*qAccelPointsMotion\*q \*q" string \*q
.TQ
.BI "Option \*qAccelPointsScroll\*q \*q" string \*q
Sets the points of the Fallback/Motion/Scroll acceleration functions.
The string must be a space-separated list of
floating point non-negative numbers, e.g.,
"0.0 1.0 2.4 2.5".
This only applies to the custom profile.
See section
.B CUSTOM ACCELERATION PROFILE
.TP 7
.BI "Option \*qAccelStepFallback\*q \*q" float \*q
.TQ
.BI "Option \*qAccelStepMotion\*q \*q" float \*q
.TQ
.BI "Option \*qAccelStepScroll\*q \*q" float \*q
Sets the step between the points of the Fallback/Motion/Scroll
acceleration functions.
When a step of 0.0 is provided,
libinput's Fallback acceleration function is used.
This only applies to the custom profile.
See section
.B CUSTOM ACCELERATION PROFILE
.TP 7
.BI "Option \*qButtonMapping\*q \*q" string \*q
Sets the logical button mapping for this device, see
.BR XSetPointerMapping (3).
The string must be a space-separated list of button mappings in the order of the
logical buttons on the device, starting with button 1.
The default mapping is "1 2 3 ... 32".
A mapping of 0 deactivates the button.
Multiple buttons can have the same mapping.
Invalid mapping strings are discarded and the default mapping
is used for all buttons.
Buttons not specified in the user's mapping use the default mapping.
See section
.B BUTTON MAPPING
for more details.
.TP 7
.BI "Option \*qCalibrationMatrix\*q \*q" string \*q
A string of 9 space-separated floating point numbers, in the order
\*qa b c d e f g h i\*q.
Sets the calibration matrix to the 3x3 matrix where the first row is (abc),
the second row is (def) and the third row is (ghi).
.TP 7
.BI "Option \*qClickMethod\*q \*q" string \*q
Enables a click method.
Permitted values are
.BR none ,
.BR buttonareas ,
.BR clickfinger .
Not all devices support all methods.
If an option is unsupported, the default click method for this device is used.
.TP 7
.BI "Option \*qDisableWhileTyping\*q \*q" bool \*q
Indicates if the touchpad should be disabled while typing on the keyboard
(this does not apply to modifier keys such as Ctrl or Alt).
.TP 7
.BI "Option \*qDevice\*q \*q" string \*q
Specifies the device through which the device can be accessed.
This will generally be of the form \*q/dev/input/eventX\*q,
where X is some integer.
When using
.B InputClass
directives, this option is set by the server.
The mapping from device node to hardware is system-dependent.
Property: "Device Node" (read-only).
.TP 7
.BI "Option \*qDragLockButtons\*q \*q" "L1 B1 L2 B2 ..." \*q
Sets "drag lock buttons" that simulate a button logically down even when it has
been physically released.
To logically release a locked button,
a second click of the same button is required.
.IP
If the option is a single button number, that button acts as the
"meta" locking button for the next button number.
See section
.B BUTTON DRAG LOCK
for details.
.IP
If the option is a list of button number pairs, the first number of each
number pair is the lock button, the second number the logical button number
to be locked.
See section
.B BUTTON DRAG LOCK
for details.
.IP
For both meta and button pair configuration,
the button numbers are device button numbers, i.e. the
.B ButtonMapping
applies after drag lock.
.TP 7
.BI "Option \*qHighResolutionWheelScrolling\*q \*q" bool \*q
Disables high-resolution wheel scroll events, enabled by default. When enabled,
the driver forwards only high-resolution wheel scroll events from libinput.
When disabled, the driver forwards legacy wheel scroll events instead.
.TP 7
.BI "Option \*qHorizontalScrolling\*q \*q" bool \*q
Enables or disables horizontal scrolling.
When disabled,
this driver will discard any horizontal scroll events from libinput.
This does not disable horizontal scroll events from libinput;
it merely discards the horizontal axis from any scroll events.
Default is enabled.
.TP 7
.BI "Option \*qLeftHanded\*q \*q" bool \*q
Enables left-handed button orientation, i.e. swapping left and right buttons.
.TP 7
.BI "Option \*qMiddleEmulation\*q \*q" bool \*q
Enables middle button emulation.
When enabled, pressing the left and right
buttons simultaneously produces a middle mouse button click.
A synonym
.IP
.BI "Option \*qEmulate3Buttons\*q \*q" bool \*q
.IP
is preserved for compatibility with
.B evdev
driver, with
.BI "\*qMiddleEmulation\*q
having preference if both are set.
.TP 7
.BI "Option \*qNaturalScrolling\*q \*q" bool \*q
Enables or disables natural scrolling behavior.
.TP 7
.BI "Option \*qRotationAngle\*q \*q" float \*q
Sets the rotation angle of the device to the given angle, in degrees clockwise.
The angle must be between 0.0 (inclusive) and 360.0 (exclusive).
.TP 7
.BI "Option \*qScrollButton\*q \*q" int \*q
Designates a button as scroll button.
If the
.B ScrollMethod
is
.B button
and the button is logically down, x/y axis movement is converted into
scroll events.
.TP 7
.BI "Option \*qScrollButtonLock\*q \*q" bool \*q
Enables or disables the scroll button lock.
If enabled, the
.B ScrollButton
is considered logically down after the first click and remains down until
the second click of that button.
If disabled (the default), the
.B ScrollButton
button is considered logically down while held down and up once physically
released.
.TP 7
.BI "Option \*qScrollFactor\*q \*q" float \*q
Sets the scroll factor for scroll events. A value higher than 1.0 means faster scrolling.
Applications that don't support xi2 input will instead receive scroll button events
less or more frequently depending on the scroll factor value, instead of scrolling "smoother".
.TP 7
.BI "Option \*qScrollMethod\*q \*q" string \*q
Enables a scroll method. Permitted values are
.BR none ,
.BR twofinger ,
.BR edge ,
.BR button .
Not all devices support all options.
If an option is unsupported, the default scroll option for this device is used.
.TP 7
.BI "Option \*qScrollPixelDistance\*q \*q" int \*q
Sets the movement distance, in "pixels", required to trigger one logical
wheel click.
This option only applies to the scroll methods
.BR twofinger ,
.BR edge ,
.BR button .
See section
.B SCROLL PIXEL DISTANCE
for more details.
.TP 7
.BI "Option \*qSendEventsMode\*q \*q" (disabled|enabled|disabled-on-external-mouse) \*q
Sets the send events mode to disabled, enabled,
or "disable when an external mouse is connected".
.TP 7
.BI "Option \*qTabletToolPressureCurve\*q \*q" "x0/y0 x1/y1 x2/y2 x3/y3" \*q
Set the pressure curve for a tablet stylus to the bezier formed by the four
points.
The respective x/y coordinate must be in the [0.0, 1.0] range.
For more information see section
.B TABLET TOOL PRESSURE CURVE.
.TP 7
.BI "Option \*qTabletToolPressureRange\*q \*q" "min max" \*q
Set the pressure range for a tablet stylus to the given subset of the physical
range.
The min/max values must be in the [0.0, 1.0] range.
For example, a min of 0.3 means the tablet will send 0 pressure for anything
equal or below 30% of the physical pressure range and a max of 0.7 means
the tablet sends its maximum pressure value for any pressure equal or higher to
70% of the physical pressure range.
.TP 7
.BI "Option \*qTabletToolAreaRatio\*q \*q" "w:h" \*q
Sets the area ratio for a tablet tool.
The area always starts at the origin (0/0) and
expands to the largest available area with the specified aspect ratio.
Events outside this area are cropped to the area.
The special value "default" is used for the default mapping
(i.e. the device-native mapping).
For more information see section
.B TABLET TOOL AREA RATIO.
.TP 7
.BI "Option \*qTapping\*q \*q" bool \*q
Enables or disables tap-to-click behavior.
.TP 7
.BI "Option \*qTappingButtonMap\*q \*q" (lrm|lmr) \*q
Set the button mapping for 1/2/3-finger taps to left/right/middle or
left/middle/right, respectively.
.TP 7
.BI "Option \*qTappingDrag\*q \*q" bool \*q
Enables or disables drag during tapping behavior ("tap-and-drag").
When enabled, a tap followed by a finger held down causes a single button down
only, all motions of that finger thus translate into dragging motion.
Tap-and-drag requires option
.B Tapping
to be enabled.
.TP 7
.BI "Option \*qTappingDragLock\*q \*q" bool \*q
Enables or disables drag lock during tapping behavior.
When enabled,
a finger up during tap-and-drag will not immediately release the button.
If the finger is set down again within the timeout,
the dragging process continues.
.PP
For all options, the options are only parsed if the device supports that
configuration option.
For all options, the default value is the one used by libinput.
On configuration failure, the default value is applied.
.SH SUPPORTED PROPERTIES
.B libinput
exports runtime-configurable options as properties.
If a property listed below is not available,
the matching configuration option is not available on the device.
This however does not imply that the feature is not available on the device.
The following properties are provided by the
.B libinput
driver.
.TP 7
.B "libinput Accel Profiles Available"
3 boolean values (8 bit, 0 or 1), in order "adaptive", "flat", "custom".
Indicates which acceleration profiles are available on this device.
.TP 7
.B "libinput Accel Profile Enabled"
3 boolean values (8 bit, 0 or 1), in order "adaptive", "flat", "custom".
Indicates which acceleration profile is currently enabled on this device.
.TP 7
.B "libinput Accel Speed"
1 32-bit float value, defines the pointer speed.
Value range -1, 1.
This only applies to the flat or adaptive profile.
.TP 7
.B "libinput Accel Custom Fallback Points"
.TQ
.B "libinput Accel Custom Motion Points"
.TQ
.B "libinput Accel Custom Scroll Points"
A space-separated list of 32-bit floating point non-negative numbers, e.g.
"0.0 1.0 2.4 2.5".
Sets the points of the Fallback/Motion/Scroll acceleration functions.
This only applies to the custom profile.
See section
.B CUSTOM ACCELERATION PROFILE
.TP 7
.B "libinput Accel Custom Fallback Step"
.TQ
.B "libinput Accel Custom Motion Step"
.TQ
.B "libinput Accel Custom Scroll Step"
1 32-bit float value, sets the step between the points of the
Fallback/Motion/Scroll acceleration functions.
When a step of 0.0 is provided, libinput's Fallback acceleration
function is used.
This only applies to the custom profile.
See section
.B CUSTOM ACCELERATION PROFILE
.TP 7
.B "libinput Button Scrolling Button"
1 32-bit value. Sets the button number to use for button scrolling.
This setting is independent of the scroll method, to enable button scrolling the
method must be set to button-scrolling and a valid button must be set.
.TP 7
.B "libinput Button Scrolling Button Lock Enabled"
1 boolean value. If true, the scroll button lock is enabled.
This setting is independent of the scroll method or the scroll button, to enable
button scrolling the method must be set to button-scrolling and a valid
button must be set.
.TP 7
.B "libinput Calibration Matrix"
9 32-bit float values, representing a 3x3 calibration matrix, order is row
1, row 2, row 3
.TP 7
.B "libinput Click Methods Available"
2 boolean values (8 bit, 0 or 1), in order "buttonareas", "clickfinger".
Indicates which click methods are available on this device.
.TP 7
.B "libinput Click Methods Enabled"
2 boolean values (8 bit, 0 or 1), in order "buttonareas", "clickfinger".
Indicates which click methods are enabled on this device.
.TP 7
.B "libinput Drag Lock Buttons"
Either one 8-bit value specifying the meta drag lock button, or a list of
button pairs.
See section
.B BUTTON DRAG LOCK
for details.
.TP 7
.B "libinput High Resolution Wheel Scroll Enabled"
1 boolean value (8 bit, 0 or 1).
Indicates whether high-resolution wheel scroll events are enabled or not.
.TP 7
.B "libinput Horizontal Scroll Enabled"
1 boolean value (8 bit, 0 or 1).
Indicates whether horizontal scrolling events are enabled or not.
.TP 7
.B "libinput Left Handed Enabled"
1 boolean value (8 bit, 0 or 1).
Indicates if left-handed mode is enabled or disabled.
.TP 7
.B "libinput Middle Emulation Enabled"
1 boolean value (8 bit, 0 or 1).
Indicates if middle emulation is enabled or disabled.
.TP 7
.B "libinput Natural Scrolling Enabled"
1 boolean value (8 bit, 0 or 1).
1 enables natural scrolling.
.TP 7
.B "libinput Rotation Angle"
1 32-bit float value [0.0 to 360.0).
Sets the rotation angle of the device,
clockwise of its natural neutral position.
.TP 7
.B "libinput Scrolling Factor"
1 32-bit float value.
Sets the scroll factor for scroll events. A value higher than 1.0 means faster scrolling.
Applications that don't support xi2 input will instead receive scroll button events
less or more frequently depending on the scroll factor value, instead of scrolling "smoother".
.TP 7
.B "libinput Scroll Methods Available"
3 boolean values (8 bit, 0 or 1), in order "two-finger", "edge", "button".
Indicates which scroll methods are available on this device.
.TP 7
.B "libinput Scroll Method Enabled"
3 boolean values (8 bit, 0 or 1), in order "two-finger", "edge", "button".
Indicates which scroll method is currently enabled on this device.
.TP 7
.B "libinput Scrolling Pixel Distance"
1 32-bit value (nonzero, with additional implementation-defined range checks).
Changes the movement distance required to trigger one logical wheel click.
.TP 7
.B "libinput Send Events Modes Available"
2 boolean values (8 bit, 0 or 1), in order "disabled" and
"disabled-on-external-mouse".
Indicates which send-event modes are available on this device.
.TP 7
.B "libinput Send Events Mode Enabled"
2 boolean values (8 bit, 0 or 1), in order "disabled" and
"disabled-on-external-mouse".
Indicates which send-event mode is currently enabled on this device.
.TP 7
.B "libinput Tablet Tool Pressurecurve"
4 32-bit float values [0.0 to 1.0].
See section
.B TABLET TOOL PRESSURE CURVE
.TP 7
.B "libinput Tablet Tool Area Ratio"
2 32-bit values, corresponding to width and height.
Special value 0, 0 resets to the default ratio.
See section
.B TABLET TOOL AREA RATIO
for more information.
.TP 7
.B "libinput Tapping Enabled"
1 boolean value (8 bit, 0 or 1).
1 enables tapping.
.TP 7.
.B "libinput Tapping Button Mapping Enabled"
2 boolean value (8 bit, 0 or 1), in order "lrm" and "lmr".
Indicates which button mapping is currently enabled on this device.
.TP 7
.B "libinput Tapping Drag Lock Enabled"
1 boolean value (8 bit, 0 or 1).
1 enables drag lock during tapping.
.TP 7
.B "libinput Disable While Typing Enabled"
1 boolean value (8 bit, 0 or 1).
Indicates if disable while typing is enabled or disabled.
.PP
Most properties have a
.B "libinput <property name> Default"
equivalent that indicates the default value for this setting on this device.
.SH BUTTON MAPPING
X clients receive events with logical button numbers,
where 1, 2, 3 are usually interpreted as left, middle, right;
and logical buttons 4, 5, 6, 7 are usually interpreted
as scroll up, down, left, right.
The fourth and fifth physical buttons on a device
will thus send logical buttons 8 and 9.
The
.B ButtonMapping
option adjusts the logical button mapping, it does not affect how a physical
button is mapped to a logical button.
.PP
Traditionally, a device was set to left-handed button mode by applying a
button mapping of
.B "\*q3 2 1 ...\*q"
On systems using the
.B libinput
XLibre input driver it is recommended to use the
.B LeftHanded
option instead.
.PP
The
.B libinput
XLibre input driver does not use the button mapping after setup.
Use
.BR XSetPointerMapping (3)
to modify the button mapping at runtime.
.SH BUTTON DRAG LOCK
Button drag lock holds a button logically down even when the button itself
has been physically released since.
Button drag lock comes in two modes.
.PP
If in "meta" mode, a meta button click activates drag lock for the next
button press of any other button.
A button click in the future will keep that button held logically down
until a subsequent click of that same button.
The meta button events themselves are discarded.
A separate meta button click is required each time a drag lock should be
activated for a button in the future.
.PP
If in "pairs" mode, each button can be assigned a target locking button.
On button click, the target lock button is held logically down until the
next click of the same button.
The button events themselves are discarded
and only the target button events are sent.
.PP
This feature is provided by this driver, not by libinput.
.SH TABLET TOOL PRESSURE CURVE
The pressure curve affects how stylus pressure is reported.
By default, the hardware pressure is reported as-is.
By setting a pressure curve, the feel of the stylus can be adjusted
to be more like e.g. a pencil or a brush.
.PP
The pressure curve is a cubic Bezier curve, drawn within a normalized range
of 0.0 to 1.0 between the four points provided.
This normalized range is applied to the tablet's pressure input
so that the highest pressure maps to 1.0.
The points must have increasing x coordinates, if x0 is larger than 0.0
all pressure values lower than x0 are equivalent to y0.
If x3 is less than 1.0,
all pressure values higher than x3 are equivalent to y3.
.PP
The input for a linear curve (default) is "0.0/0.0 0.0/0.0 1.0/1.0 1.0/1.0";
a slightly depressed curve (firmer) might be
"0.0/0.0 0.05/0.0 1.0/0.95 1.0/1.0";
a slightly raised curve (softer) might be "0.0/0.0 0.0/0.05 0.95/1.0 1.0/1.0".
.PP
This feature is provided by this driver, not by libinput.
.SH TABLET TOOL AREA RATIO
By default, a tablet tool can access the whole sensor area and the tablet
area is mapped to the available screen area.
For external tablets like the Wacom Intuos series,
the height:width ratio of the tablet may be different to that of the monitor,
causing the skew of input data.
.PP
To avoid this skew of input data, an area ratio may be set to match the
ratio of the screen device.
For example, a ratio of 4:3 will reduce the available area of the tablet
to the largest available area with a ratio of 4:3.
Events within this area will scale to the tablet's announced axis range,
the area ratio is thus transparent to the X server.
Any events outside this area will send events equal to the maximum value of
that axis.
The area always starts at the device's origin in it's current rotation, i.e.,
it takes left-handed-ness into account.
.PP
This feature is provided by this driver, not by libinput.
.SH SCROLL PIXEL DISTANCE
The X server does not support per-pixel scrolling but it does support
smooth scrolling.
All scroll events however are based around a logical unit of scrolling
(traditionally corresponding to a wheel click).
It is thus not possible to scroll by 10 pixels, but it is possible for a
driver to scroll by 1/10th of a logical wheel click.
.PP
libinput provides scroll data in pixels.
The \fBScrollPixelDistance\fR option defines the amount of movement equivalent
to one wheel click.
For example, a value of 50 means the user has to move a finger by 50 pixels to
generate one logical click event and each pixel is 1/50th of a wheel click.
.SH CUSTOM ACCELERATION PROFILE
The custom pointer acceleration profile gives users full control over the
acceleration behavior at different speeds.
libinput exposes an acceleration function \fIf(x)\fP
where the x-axis is the device speed in device units per millisecond
and the y-axis is the pointer speed.
.PP
The custom acceleration function is defined using n points which are spaced
uniformly along the x-axis, starting from 0 and continuing in constant steps.
Thus the points defining the custom function are:
.EX
(0 * step, f[0]), (1 * step, f[1]), ..., ((n-1) * step, f[n-1])
.EE
When a velocity value does not lie exactly on those points,
a linear interpolation/extrapolation of the two closest points
will be calculated.
.PP
There are 3 custom acceleration functions,
which are used for different movement types:
.TS
tab(;) allbox;
l l l.
Movement type; Uses; supported by
Fallback; Catch-all default movement type; All devices
Motion; Used for pointer motion; All devices
Scroll; Used for scroll movement; Mouse, Touchpad
.TE
.PP
See libinput library documentation for more details:
https://wayland.freedesktop.org/libinput/doc/latest/pointer-acceleration.html#the-custom-acceleration-profile
.SH BUGS
This driver does not work with \fBOption \*qDevice\*q\fR set to an event
node in \fI/dev/input/by-id\fR and \fI/dev/input/by-path\fR.
This can be usually be worked by using \fBSection \*qInputClass\*q\fR with an
appropriate \fBMatch*\fR statement in the
.BR xorg.conf (5).
.SH AUTHORS
Peter Hutterer
.SH "SEE ALSO"
.BR XLibre (1),
.BR xorg.conf (5),
.BR Xserver (1),
.BR X (7)
@@ -0,0 +1,149 @@
.\" shorthand for double quote that works everywhere.
.ds q \N'34'
.TH MODESETTING 4 "xorg-server 25.2.0" "X Version 11"
.SH NAME
modesetting \- video driver for framebuffer device
.SH SYNOPSIS
.nf
.B "Section \*qDevice\*q"
.BI " Identifier \*q" devname \*q
.B " Driver \*qmodesetting\*q"
.BI " BusID \*qpci:" bus : dev : func \*q
\ \ ...
.B EndSection
.fi
.SH DESCRIPTION
.B modesetting
is an Xorg driver for KMS devices. This driver supports
TrueColor visuals at framebuffer depths of 15, 16, 24, and 30. RandR
1.2 is supported for multi-head configurations. Acceleration is available
through glamor for devices supporting at least OpenGL ES 2.0 or OpenGL 2.1.
If glamor is not enabled, a shadow framebuffer is configured based on the
KMS drivers' preference (unless the framebuffer is 24 bits per pixel, in
which case the shadow framebuffer is always used).
.SH SUPPORTED HARDWARE
The
.B modesetting
driver supports all hardware where a KMS driver is available.
modesetting uses the Linux DRM KMS ioctls and dumb object create/map.
.SH CONFIGURATION DETAILS
Please refer to
.BR xorg.conf (5)
for general configuration details.
This section only covers configuration details specific to this driver.
.PP
For this driver it is not required to specify modes in the screen
section of the config file. The
.B modesetting
driver can pick up the currently used video mode from the kernel
driver and will use it if there are no video modes configured.
.PP
For PCI boards you might have to add a BusID line to the Device
section. See above for a sample line.
.PP
The following driver
.B Options
are supported:
.TP
.BI "Option \*qSWcursor\*q \*q" boolean \*q
Selects software cursor. The default is
.B off.
Note: due to issues with cursor rendering this option will be forced
.B on
if it is running under bochs-drm, evdi, vboxvideo, virtio_gpu, vkms, vmwgfx or qxl drm driver.
.TP
.BI "Option \*qCursorSize\*q \*q" string \*q
The size of the cursor.
By default we use various probes to determine what cursor size to use.
If for some reason these probes don't work, or you just want to use
a different size, use this option.
The value is passed as either "<width>x<height>", or "<one number for square size>"
Note: On failure (for example the hardware doesn't support the chosen size)
the X server silently falls back to software cursor.
.TP
.BI "Option \*qkmsdev\*q \*q" string \*q
The framebuffer device to use. Default: /dev/dri/card0.
.TP
.BI "Option \*qShadowFB\*q \*q" boolean \*q
Enable or disable use of the shadow framebuffer layer. Default: on.
.TP
.BI "Option \*qDoubleShadow\*q \*q" boolean \*q
Double-buffer shadow updates. When enabled, the driver will keep two copies of
the shadow framebuffer. When the shadow framebuffer is flushed, the old and new
versions of the shadow are compared, and only tiles that have actually changed
are uploaded to the device. This is an optimization for server-class GPUs with
a remote display function (typically VNC), where remote updates are triggered
by any framebuffer write, so minimizing the amount of data uploaded is crucial.
This defaults to enabled for ASPEED and Matrox G200 devices, and disabled
otherwise.
.TP
.BI "Option \*qAccelMethod\*q \*q" string \*q
One of \*qglamor\*q or \*qdri3_only\*q or \*qnone\*q. Default: glamor.
dri3_only means that glamor is used only for DRI3, but not for accelerating any other pixmaps.
.TP
.BI "Option \*qPageFlip\*q \*q" boolean \*q
Enable DRI3 page flipping. The default is
.B on.
.TP
.BI "Option \*qVariableRefresh\*q \*q" boolean \*q
Enables support for enabling variable refresh on the Screen's CRTCs
when an suitable application is flipping via the Present extension.
.br
The default is
.B off.
.TP
.BI "Option \*qAsyncFlipSecondaries\*q \*q" boolean \*q
Use async flips for secondary video outputs on multi-display setups. If a screen
has multiple displays attached and DRI3 page flipping is used, then only one of
the displays will have its page flip synchronized to vblank for tear-free
presentation. This is the display that is used for presentation timing and
timestamping, usually the one covering the biggest pixel area of the screen.
All other displays ("Secondaries") will not synchronize their flips. This may
cause some tearing on these displays, but it prevents a permanent or periodic
slowdown or irritating judder of animations if not all video outputs are running
synchronized with each other and with the same refresh rate. There is no perfect
solution apart from perfectly synchronized outputs, but this option may give
preferable results if the displays in a multi-display setup mirror or clone
each other. The default is
.B off.
.TP
.BI "Option \*qZaphodHeads\*q \*q" string \*q
Specify the RandR output(s) to use with zaphod mode for a particular driver
instance. If you use this option you must use this option for all instances
of the driver.
.br
For example:
.B
Option \*qZaphodHeads\*q \*qLVDS,VGA-0\*q
will assign xrandr outputs LVDS and VGA-0 to this instance of the driver.
.TP
.BI "Option \*qUseGammaLUT\*q \*q" boolean \*q
Enable or disable use of the GAMMA_LUT property, when available.
When enabled, this option allows the driver to use gamma ramps with more
entries, if supported by the kernel. By default, GAMMA_LUT will be used for
kms drivers which are known to be safe for use of GAMMA_LUT.
.TP
.BI "Option \*qTearFree\*q \*q" boolean \*q
Enable tearing prevention using the hardware page flipping mechanism.
It allocates two extra scanout buffers for each CRTC and utilizes damage
tracking to minimize buffer copying and skip unnecessary flips when the
screen's contents have not changed. It works on transformed screens too, such
as rotated and scaled CRTCs. When PageFlip is enabled, fullscreen DRI
applications will still have the discretion to not use tearing prevention.
.br
The default is
.B on.
.TP
.BI "Option \*qAtomic\*q \*q" boolean \*q
Enable atomic modesetting when supported. The default is
.B off.
.TP
.SH "SEE ALSO"
.BR Xorg (1),
.BR xorg.conf (5),
.BR Xserver (1),
.BR X (7)
.SH AUTHORS
Authors include: Dave Airlie
File diff suppressed because it is too large Load Diff
@@ -0,0 +1 @@
.so man5/xorg.conf.5