Xorg-Server-21.1.11
Introduction à Xorg Server
Le serveur Xorg est le cœur du
système X Window.
This package is known to build and work properly using an LFS 12.1
platform.
Informations sur le paquet
-
Téléchargement (HTTP) :
https://www.x.org/pub/individual/xserver/xorg-server-21.1.11.tar.xz
-
Téléchargement (FTP) :
-
Somme de contrôle MD5 : 57a4ef6ea505254599d9bbe29b0eb769
-
Taille du téléchargement : 4,8 Mo
-
Estimation de l'espace disque requis : 164 Mo (avec
les tests)
-
Estimation du temps de construction : 0,3 SBU (avec
parallélisme = 4 ; avec les tests)
Téléchargements supplémentaires
-
Avec la suppression des pilotes xf86-video-*, l'option
TearFree ne fonctionne plus. Pour contourner cela, les
développeurs en amont ont ajouté l'option TearFree au pilote
de gestion des modes par défaut. Ce correctif récupère cette
fonctionnalité. Appliquez ce correctif si vous allez utiliser
Xorg dans un environnement sans compositeur (comme TWM,
IceWM, Openbox ou Fluxbox).
Correctif facultatif :
https://www.linuxfromscratch.org/patches/blfs/12.1/xorg-server-21.1.11-tearfree_backport-1.patch
Dépendances de Xorg Server
Requises
libxcvt-0.1.2, Pixman-0.43.2,
Polices
Xorg (seulement font-util) et à l'exécution : xkeyboard-config-2.41
Recommandées
dbus-1.14.10, elogind-252.9
(à l'exécution, il est aussi fait référence à libelogind
pendant la construction mais ce
n'est pas vraiment utile), libepoxy-1.5.10 (requis
pour glamor), libtirpc-1.3.4 et xorg-libinput-1.4.0 (à
l'exécution)
Note
Bien qu'il soit possible de construire ce
paquet sans avoir installé dbus-1.14.10 ou
de lancer le serveur Xorg sans un elogind-252.9 fonctionnel, cela
nécessiterait d'exécuter le serveur Xorg en tant qu'utilisateur
root
ou le serveur Xorg ne
fonctionnera pas correctement ou pourrait ne pas démarrer. Les
auteurs de BLFS vous déconseillent fortement de sauter
ces deux dépendances. N'essayez pas
de le faire sans savoir exactement ce que vous faites.
Facultatives
acpid-2.0.34 (exécution), Doxygen-1.10.0
(pour construire la documentation de l'API), fop-2.9 (pour construire la
documentation), libunwind-1.6.2, Nettle-3.9.1,
libgcrypt-1.10.3, xcb-util-keysyms-0.4.1, xcb-util-image-0.4.1, xcb-util-renderutil-0.3.10,
xcb-util-wm-0.4.2 (tous les quatre pour
construire Xephyr), xmlto-0.0.28 (pour construire la documentation),
xkeyboard-config-2.41 (pour les tests),
rendercheck
(pour les tests) et xorg-sgml-doctools
(pour construire la documentation)
Configuration du noyau
Les pilotes X dépendant des périphériques traditionnels ont été
supprimés de BLFS en faveur du pilote modesetting_drv
qui sera construit dans ce
paquet. Pour utiliser le pilote modesetting_drv
, le noyau doit fournir un pilote
DRM (gestionnaire de rendu direct) pour votre GPU.
Si votre GPU prend en charge l'accélération 3D et que Mesa-24.0.1 fournit
un pilote Gallium3D pour utiliser ses capacités 3D, vous deviez
déjà avoir activé les options de configuration du noyau nécessaires
dans Configuration du noyau pour Mesa.
Sinon, vous devrez trouver l'option de configuration du noyau du
pilote DRM pour votre GPU et l'activer. En particulier, les GPU
virtuels fournis par certains gestionnaires de machines
virtuelles :
Device Drivers --->
Graphics support --->
<*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
... [DRM]
< /*/M> DRM driver for VMware Virtual GPU [DRM_VMWGFX]
< /*/M> DRM Support for bochs dispi vga interface (qemu stdvga) [DRM_BOCHS]
< /*/M> Virtual Box Graphics Card [DRM_VBOXVIDEO]
Si le noyau ne fournit pas de pilote DRM pour votre GPU, sur la
plupart des systèmes x86, le pilote DRM « simple frame
buffer » qui utilise le frame buffer VESA ou
UEFI peut être utilisé comme solution de repli. Activez les options
suivantes dans la configuration du noyau si vous n'avez pas de
pilote DRM dédié pour votre GPU ou si vous voulez le pilote simple
frame buffer comme solution de repli en cas d'échec du pilote
dédié :
Device Drivers --->
Firmware Drivers --->
[*] Mark VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
Graphics support --->
<*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
... [DRM]
<*> Simple framebuffer driver [DRM_SIMPLEDRM]
Pour permettre au noyau d'afficher les messages de débogage très
tôt au démarrage, CONFIG_DRM
et
CONFIG_DRM_SIMPLEDRM
ne doivent pas
être construits comme des modules du noyau à moins d'utiliser un
initramfs.
Si vous voulez utiliser le pilote de simple frame buffer sur un
système démarré via le BIOS (et pas un UEFI), ajoutez la ligne
suivante avant le premier bloc menuentry
dans le fichier /boot/grub/grub.cfg
pour initialiser le frame
buffer VESA :
set gfxpayload=1024x768x32
Vous pouvez remplacer 1024
,
768
et 32
par une résolution et une profondeur de couleur qui correspondent à
votre écran.
Si aucun de ces pilotes DRM ne correspond à votre situation et que
vous devez utiliser un pilote DDX avec un noyau sans pilote GPU DRM
(habituellement nommé CONFIG_FB_*
dans
la configuration du noyau ou existant en tant que modules en dehors
des sources du noyau) ou que vous avez besoin d'une fonctionnalité
spécifique à un périphérique qui nécessite un pilote DDX,
consuiltez une
version précédente de BLFS ou un
version encore plus ancienne pour en savoir plus sur les
pilotes DDX.
Installation de Xorg Server
Tout d'abord, si vous avez besoin des options TearFree pour
contourner un problème de screen tearing, appliquez les correctifs
portés :
patch -Np1 -i ../xorg-server-21.1.11-tearfree_backport-1.patch
Installez the server en exécutant les commandes suivantes :
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--localstatedir=/var \
-Dglamor=true \
-Dxkb_output_dir=/var/lib/xkb &&
ninja
Pour tester les résultats, lancez : ninja test Vous devrez lancer
ldconfig en tant
qu'utilisateur root
avant ou
certains tests pourraient échouer.
Maintenant en tant qu'utilisateur root
:
ninja install &&
mkdir -pv /etc/X11/xorg.conf.d &&
install -v -d -m1777 /tmp/.{ICE,X11}-unix &&
cat >> /etc/sysconfig/createfiles << "EOF"
/tmp/.ICE-unix dir 1777 root root
/tmp/.X11-unix dir 1777 root root
EOF
Explication des commandes
-Dglamor=true
:
s'assure de construire le module Glamor. Il est requis pour
construire le pilote modesetting_drv
qui remplace les pilote DDX (pilote X dépendant du périphérique).
-Dsuid_wrapper=true
: construit
l'enveloppe suid-root pour la prise en charge des anciens pilotes
DDX sur les systèmes xserver sans utilisateur root.
cat >>
/etc/sysconfig/createfiles... : Cette commande
crée les répertoires /tmp/.ICE-unix
et /tmp/.X11-unix
au démarrage et
garantit que les droits et l'appartenance soient conformes aux
exigences du serveur
-Dxephyr=true
: cette option
permet de construire Xephyr si ses dépendances sont présentes.
Contenu
Programmes installés:
gtf, X, Xnest, Xorg, Xvfb et
éventuellement Xephyr
Bibliothèques installées:
plusieurs dans
$XORG_PREFIX/lib/xorg/modules dont le pilote modesetting_drv
Répertoires installés:
/etc/X11/xorg.conf.d,
$XORG_PREFIX/include/xorg, $XORG_PREFIX/lib/xorg et
$XORG_PREFIX/share/X11/xorg.conf.d
Descriptions courtes
gtf
|
calcule les lignes du mode VESA GTF
|
X
|
est un lien symbolique vers Xorg
|
Xephyr
|
est un sous-serveur X avec un support des extensions X
modernes
|
Xnest
|
est un sous-serveur X
|
Xorg
|
est le serveur X X11R7
|
Xvfb
|
est le framebuffer virtuel du serveur X pour X Version 11
|
modesetting_drv.so
|
fournit un pilote vidéo pour les machines utilisant le
"Kernel Mode Setting" (KMS). Cela utilisera glamor s'il a
été activé et que le matériel permet l'accélération
|