Xorg-Server-21.1.4

Introduction to Xorg Server

The Xorg Server is the core of the X Window system.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

Xorg Server Dependencies

Required

libxcvt-0.1.2, Pixman-0.40.0, Xorg Fonts (only font-util), and at runtime: xkeyboard-config-2.36

Recommended

Optional

acpid-2.0.33 (runtime), Doxygen-1.9.4 (to build API documentation), fop-2.7 (to build documentation), libunwind-1.6.2, Nettle-3.8.1, libgcrypt-1.10.1, xcb-util-keysyms-0.4.0, xcb-util-image-0.4.0, xcb-util-renderutil-0.3.9, xcb-util-wm-0.4.1 (all four to build Xephyr), xmlto-0.0.28 (to build documentation), rendercheck (for tests), and xorg-sgml-doctools (to build documentation)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/Xorg7Server

Installation of Xorg Server

Install the server by running the following commands:

mkdir build &&
cd    build &&

meson --prefix=$XORG_PREFIX \
      --localstatedir=/var  \
      -Dsuid_wrapper=true   \
      -Dxkb_output_dir=/var/lib/xkb &&
ninja

To test the results, issue: ninja test. You will need to run ldconfig as the root user first or some tests may fail.

Now as the root user:

ninja install &&
mkdir -pv /etc/X11/xorg.conf.d &&
cat >> /etc/sysconfig/createfiles << "EOF"
/tmp/.ICE-unix dir 1777 root root
/tmp/.X11-unix dir 1777 root root
EOF

Command Explanations

-Dsuid_wrapper=true: Builds the suid-root wrapper for legacy driver support on rootless xserver systems.

-Dsystemd_logind=false: This switch disables elogind integration, allowing Xorg Server to work without having the PAM module configured.

cat >> /etc/sysconfig/createfiles...: This command creates the /tmp/.ICE-unix and /tmp/.X11-unix directories at startup, and ensures that the permissions and ownership are correct as required by the server.

-Dxephyr=true: This option allows building Xephyr if its dependencies are met.

Contents

Installed Programs: gtf, X, Xnest, Xorg, Xvfb, and optionally Xephyr
Installed Libraries: several under $XORG_PREFIX/lib/xorg/modules/ including the modesetting_drv.so driver
Installed Directories: /etc/X11/xorg.conf.d, $XORG_PREFIX/include/xorg, $XORG_PREFIX/lib/xorg, and $XORG_PREFIX/share/X11/xorg.conf.d

Short Descriptions

gtf

calculates VESA GTF mode lines

X

is a symbolic link to Xorg

Xephyr

is a nested X server which supports modern X extensions

Xnest

is a nested X server

Xorg

is the X11R7 X Server

Xvfb

is the virtual framebuffer X server for X Version 11

modesetting_drv.so

provides a video driver for machines using Kernel Mode Setting (KMS). This will use glamor if that has been enabled and the hardware offers acceleration