Pierre.Vassellerie@obspm.fr
)XFree86
- le portage pour Linux du système X Window (X11R6) - sur votre système Linux.
Le système X Window est un environnement graphique très imposant et très puissant (certains diront trop imposant et bien trop complexe) pour les systèmes Unix. Le système X Window original a été développé par le MIT; depuis les distributeurs ont fait de X un standard de fait dans le marché des plates-formes UNIX. Ainsi, partout dans le monde, presque chaque station de travail fonctionnant sous un système UNIX utilise une variante de l'environnement graphique X Window.
Une adaptation du système X Window version 11 release 6 du MIT (X11R6), pour les systèmes UNIX sur machine 80386/80486/Pentium, a été développée par une équipe de programmeurs conduite à l'origine par David Wexelblat <dwex@XFree86.org>. Ce programme, connut sous le nom de XFree86, est disponible pour les systèmes System V/386, 386BSD, et autres implémentations d'UNIX pour x86, incluant Linux. Il contient l'ensemble des sources et binaires nécessaires à son bon fonctionnement, ainsi que l'ensemble des manuels en lignes et des utilitaires de base.
Une information plus complète sur XFree86 est disponible sur le site Web de XFree86 : http://www.XFree86.org.
Ce document va vous permettre d'installer et configurer simplement XFree86 sur votre système Linux, mais vous devrez consulter la documentation livrée avec XFree86 (fichiers textes, pages de manuels, etc...), dont vous trouverez les références ici, afin de pouvoir préciser par vous même certains détails de cette configuration. Par contre, utiliser et mettre à votre goût le système X Window va bien au-delà de l'objectif de ce document. À cette fin, vous devriez acquérir ou consultez l'un des nombreux ouvrages sur le système X Window.
Si vous n'avez encore jamais entendu parler de Linux jusqu'ici, sachez qu'il existe de nombreuses sources d'information sur ce système. Le meilleur endroit est la page Web du Projet de Documentation pour Linux http://sunsite.unc.edu/LDP. Vous trouverez la dernière version de ce document (en version anglaise) à l'adresse http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html. Mais sur le serveur Freenix http://www.freenix.fr, vous pourrez aussi consulter sa traduction.
Les nouvelles versions du XFree86 HOWTO pour Linux sont postées régulièrements sur news:fr.comp.os.linux.annonces. Elles sont aussi diffusées sur plusieurs sites Web et FTP, dont http://www.freenix.fr/XFree86-HOWTO.html.
Si vous avez des questions ou des remarques à propos de ce document (et non pas des questions sur XFree86), n'hésitez pas à expédier un message à Pierre Vassellerie. Vos commentaires, critiques et suggestions sont les bienvenus. Si certaines sections de ce document vous semblent incomplètes, obsolètes ou mal conçues faites m'en part afin que je puisse effectuer des corrections pour dans les futures versions.
S'il vous plait, ne m'envoyez pas de questions à propos de votre carte vidéo ou de votre moniteur. Cet HOWTO a pour but d'être un guide rapide et facile à lire pour une installation normale de XFree86 à l'aide du nouvel outil de configuration. Si vous avez des problèmes lors de votre configuration, consultez le XFree86 Video Timings HOWTO, http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html. Ce document (en anglais) explique tout ce qu'il faut savoir pour résoudre ces problèmes.
La compatibilité d'XFree86 avec une carte donnée dépend en règle générale de
l'ensemble des circuits ("chipset") utilisés par cette dernière. La
documentation de votre carte spécifie généralement la liste des circuits
utilisés. Si vous êtes sur le point d'acquérir une nouvelle carte vidéo ou
d'acheter un nouvel ordinateur, insistez auprès du vendeur pour savoir quel
est le fabricant, le modèle et le circuit de la carte vidéo. Si vous avez
déjà acquis votre carte vidéo et qu'une de ces informations vous manque,
n'hésitez pas à contacter votre revendeur, en général il sera très heureux
de pouvoir vous renseigner, et sinon appelez un autre revendeur. Si votre
revendeur vous raconte que la carte est "une carte SVGA standard" et
"qu'elle devrait fonctionner" sur votre système, expliquez lui que
votre système ne supporte pas tous les types de circuits vidéo. N'hésitez
pas à mentionner Linux et XFree86
car il y a de plus en plus de
revendeurs qui connaissent ces logiciels (il se peut que le votre ait même
approfondi la question), et faites lui comprendre que ces "détails"
sont pour vous primordiaux.
Vous pouvez aussi déterminer quel est le type de cicuit vidéo utilisé par
votre carte à l'aide du programme SuperProbe
inclus dans la
distribution de XFree86.
La version 3.3 de XFree86
(Juillet 1997) est compatible avec les
circuits vidéo suivants :
Les cartes vidéo utilisant ces circuits sont supportées sur tous les types de bus, y compris VLB et PCI.
Tous les circuits cités ci-dessus sont exploités en mode 256 couleurs par le
serveur XF86_SVGA
et en monochrome par XF86_Mono
. Seuls
les circuits de Avance Logic, MX et Video 7
sont uniquement
exploitables en mode 256 couleurs. Par ailleurs, si votre carte possède
suffisament de mémoire, plusieurs des circuits ci-dessus vous permettrons
d'utiliser des modes en 16 ou 32 bits par pixel (et plus spécifiquement les
cartes Mach32, P9000, S3 et Cirrus). La configuration par défaut étant
géneralement de 8 bits par pixel (c'est à dire 256 couleurs).
Le serveur monochrome fonctionne sur toute carte VGA ainsi que les cartes
monochrome Hercules, Hyundai HGC-1280, Sigma LaserView et Apollo
.
Sur la carte Compaq AVGA
, seuls 64ko de mémoire vidéo sont utilisés
par le serveur monochrome, et la carte Compaq GVGA
n'a pas encore
été testée avec plus de 64k.
Cette liste de matériels va sans doute s'accroître au fur et à mesure que le temps passe, et chaque nouvelle mise à jour de ce document contiendra la liste complète des circuits vidéo supportés par XFree86. En attendant la prochaine version de ce document, vous pouvez trouvez sur le site de XFree86 http://www.XFree86.org la liste des circuits supportés ainsi que certaines mises à jour.
L'un des problèmes rencontrés par les développeurs de XFree86
est
que certains fabricants de cartes vidéo utilisent des mécanismes non
standards dans la détermination des fréquences d'horloges nécessaires pour
faire fonctionner la carte. Certains de ces fabricants ne fournissent même
pas de documents décrivant les spécifications utiles à la programmation de
la carte ou alors les subordonnent à l'acquisition de licences limitant la
diffusion de ces informations. Ceci impliquerait alors une restriction à la
libre diffusion du logiciel XFree86
, ce que les développeurs du
projet XFree86
ne peuvent tolerer. Ceci a longtemps été le problème
avec les cartes fabriquées par Diamond, mais à l'annonce de la version 3.1
de XFree86
, Diamond
a commencé à collaborer avec l'équipe
de développement à la réalisation de pilotes gratuits pour ces cartes. Ceci
prouve que l'avis officiel du XFree Project
publié dans les
précédentes versions de ce document a eu un impact sur le fabricant
Diamond
.
La configuration machine minimale suggérée est un 486 ayant au mois 8Mo de mémoire vive, et une carte video basée sur un des circuits présents dans la liste ci-dessus. Pour de meilleures performances nous vous conseillons d'avoir une carte ayant un circuit rapide comme le S3. Avant de vous lancer tête baissée dans l'achat d'une telle carte (relativement chère), vérifiez tout de même si votre carte actuelle n'est pas supportée.
De plus n'hésitez pas à tenir compte des benchmarks comparatifs des différentes cartes vidéo qui sont régulièrement postés sur les groupes de news USENET comp.windows.x.i386unix, comp.os.linux.x, comp.benchmarks, comp.sys.ibm.pc.hardware.video par Farrel McKay. Ils sont aussi disponibles sur le Web à l'adresse http://www.goof.com/xbench.
Votre machine nécessite un minimum de 4Mo de RAM physique et de 16Mo de RAM
virtuelle totale (par exemple 8Mo de RAM physique et 8Mo de swap disque).
Souvenez-vous que plus vous aurez de RAM physique, moins votre système
swapera sur disque quand la mémoire disponible diminuera. Les disques ayant
des temps d'accès et des taux de transferts plus lents que la RAM, les
performances de votre système chuteront très rapidement si la mémoire venait
à manquer. C'est pourquoi il est recommandé d'avoir au moins 8Mo de RAM
physique afin de pouvoir faire tourner XFree86
confortablement. Un
système avec seulement 4Mo de RAM sera à peu près 10 fois plus lent qu'un
système ayant 8Mo de RAM ou plus (il se peut meme que certains serveurs X ne
puissent fonctionner avec si peu de memoire).
Soit vous possédez une distribution complète de Linux (sur CD ou disquettes)
et donc une distribution complète et compilée de XFree86
y est
comprise. Dans ce cas, passez directement à la fin de ce chapitre. Soit vous
devez récupérer l'ensemble de la distribution par FTP et dans ce cas ce
chapitre vous concerne.
Les distributions binaires (programmes prêts à l'emploi) des versions d'XFree86 destinées à Linux se trouvent sur les sites de ftp anonyme suivants :
Avant de faire quoi que ce soit, lancer le script preinst.sh
. Celui-ci
vous dira ce dont vous avez besoin avant de continuer votre installation.
L'un des serveurs suivant est nécessaire :
Serveur pour carte basée sur 8514.
Serveur pour carte basée sur AGX.
Serveur pour carte basée sur Number Nine Imagine 128.
Serveur pour carte basée sur Mach-32 .
Serveur pour carte basée sur Mach-64.
Serveur pour carte basée sur Mach-8.
Serveur pour modes monochromes.
Serveur pour carte basée sur P9000.
Serveur pour carte basée sur S3.
Serveur pour carte basée sur S3 ViRGE et ViRGE/VX (considere comme beta).
Serveur pour carte SVGA.
Serveur pour carte basée sur ET4000/W32.
Tous les fichiers suivants sont indispensables :
Script de pré-installation.
Script de post-installation.
Le reste des binaires.
Fichiers de configuration de xdm
, xinit
and fs
.
Documentations.
Manuels.
Les fontes de base 75dpi, misc et PEX.
Les librairies partagées et les utilitaires qui vont avec.
L'utilitaire XF86Setup
Serveur pour les cartes VGA/EGA
Les fichiers suivants sont optionnels :
Les fontes en 100 dpi.
Les fontes cyrilliques
Autres fontes (Chinois, Japonais, Coreen, Hebreu)
Les fontes redimensionnables (Speedo, Type1).
Serveur de fontes et fichiers de configuration.
Les fichiers d'en-tête, les fichiers de configuration et certaines librairies.
Le serveur X LinkKit.
Le serveur X PC98 LinkKit.
Le serveur X Nested.
Le serveur X print.
Le serveur X Virtual framebuffer.
La version PostScript de la documentation.
La version HTML de la documentation.
Le répertoire où se situe la distribution de XFree86
contient
généralement un ou plusieurs fichiers RELNOTES
et des notes
d'installation concernant la dernière version. Lisez-les lorsque vous avez
besoin de details.
Les seules choses à faire pour installer XFree86
sont d'obtenir les
fichiers ci-dessus, de créer le répertoire /usr/X11R6
(en étant
root
), et de décompresser-détarer les fichiers sous
/usr/X11R6
avec une commande du style :
gzip -dc X33bin.tgz | tar xfB -
ou
tar zxvf X33bin.tgz si vous possedez le tar GNU
ATTENTION: ces fichiers sont compressés relativement au répertoire
/usr/X11R6
et doivent donc être décompressés sous celui-ci.
Vérifiez que le répertoire /usr/X11R6/bin
est bien dans votre
chemin d'accès aux binaires (variable d'environnement PATH). Pour cela éditez
le fichier de profil par défaut /etc/profile
(si vous utilisez
bash, ksh, sh ou un autre shell du type Korn) ou /etc/csh.login
(si
vous utilisez csh, tcsh ou un autre shell du type C), ou bien votre fichier
de profil personnel /etc/.bashrc
ou /etc/.cshrc
.
Vous devez aussi vérifier que /usr/X11R6/lib
peut être localisé
par ld.so
, l'éditeur de lien dynamique. Pour cela ajoutez la
ligne :
/usr/X11R6/lib
à votre fichier /etc/ld.so.conf
et lancez /sbin/ldconfig
en passant root
.
Configurer XFree86 afin de pouvoir utiliser correctement votre souris,
clavier, moniteur et carte vidéo tenait, il y a encore peu d'un art obscure,
nécessitant de taper un fichier de configuration complexe. Depuis les
versions 3.2 et 3.3 vous rendent les choses extrèmement simples. Vous n'avez
plus qu'à lancer le programme XF86Setup
.
Ce programme s'appuie sur le fait que tout nouveau matériel vidéo pour PC peut exploiter les modes EGA/VGA des moniteurs. Il lance le serveur de base SVGA16 afin d'obtenir le mode de plus-petit-dénominateur-commun : 640x480. Ensuite il exécute un programme interactif afin de vous permettre de saisir l'ensemble des paramètres relatifs à votre souris, écran, clavier, carte vidéo et ceux spécifiques à votre serveur. L'ensemble du processus est ainsi réalisé sans aucune difficulté.
Une des remarques à garder à l'esprit, est le fait que les nouveaux claviers
sont ce que le programme XF86Setup
appelle Generic 102-key PC
(intl)
plutôt que Generic 101-key PC
. Si vous saisissez le
mauvais paramètre (101) la partie droite de votre clavier (pavé numérique et
touches associées) arrêtera de fonctionner.
Si vous n'êtes pas certain de votre type de moniteur, vous pouvez les essayer les uns après les autres dans leur ordre de succession. Parcourez de haut en bas (les choix situés le plus haut sont ceux qui réclament les fréquences les plus faibles à votre carte vidéo et donc ceux qui demandent moins à votre matériel, et ont donc moins de risque de l'endommager). Si de légères distortions (image un peu trop large ou trop étroite, ou mal centrée) apparaissent, ce n'est pas un problème; vous aurez ensuite la possibilité d'affiner les réglages de votre configuration.
Puis, quand le programme lancera xvidtune
pour vous permettre d'affiner
votre mode vidéo, ne vous laissez pas déstabiliser par le message d'erreur.
Les moniteurs à multi-fréquences sont bien plus difficiles à endommager que
leurs ancêtres à fréquence fixe.
Souvent, il arrive que ça ne fonctionne pas correctement au premier
démarrage du serveur X. Dans la plupart des cas, ceci est dû à une erreur
dans le fichier de configuration XF86Config
. Généralement les
fréquences pour le moniteur sont inadéquates, ou les horlages pour la carte
vidéo sont incorrectes. Les problèmes mineurs peuvent êtres corrigés à
l'aide de xvidtune
; un écran totalement déformé nécessite généralement
un retour sous XF86Setup
afin de choisir un moniteur de moindre
performances.
Si votre écran a des effets de roulement ou de flou, c'est que vos
fréquences pour moniteur sont inadaptées. Soyez aussi certain que vous avez
spécifié le bon circuit de carte vidéo, ainsi que les autres options de la
partie Device
du fichier XF86Config
. Soyez absolument
certains que vous utilisez le bon serveur X et que le lien symbolique
/usr/X11R6/bin/X
pointe bien vers ce serveur.
Si, malgré tout, votre serveur s'obstine à ne pas fonctionner correctement, utilisez la commande :
X > /tmp/x.out 2>&1
Tuez alors le serveur X à l'aide de la combinaison de touches
ctrl-alt-backspace
, et examinez le contenu du fichier
/tmp/x.out
. Le serveur X y aura mis tout les messages d'erreurs et
d'avertissement, comme par exemple le fait que l'horloge que vous avez
spécifiée n'est pas générable par votre carte.
Souvenez vous que vous pouvez utiliser les combinaisons
ctrl-alt-numeric +
et ctrl-alt-numeric -
pour
changer à la volée la résolution de votre serveur en fonction de ce que vous
aurez entré dans la ligne Modes
de la section Screen
. Si le
mode ayant la plus haute résolution ne semble pas marcher, tentez de passer
à une résolution inférieure.
Vous pouvez aussi jouer sur les boutons de réglage horizontaux et verticaux de votre moniteur (si ceux-ci existent !). Ceci est souvent nécessaire au démarrage du serveur X. Ainsi, si votre écran semble décalé légèrement sur la droite, vous pouvez effectuer ce réglage manuellement.
Le groupe le news USENET comp.windows.x.i386unix
est entièrement
dédié aux discussions concernant XFree86
, ainsi que le groupe
comp.os.linux.x
. Il peut être intéressant de regarder quelques
messages relatifs à votre carte vidéo et à sa configuration car vous êtes
rarement le premier à avoir un problème.
Vous devrez modifier "à la main" votre configuration X afin d'obtenir des performances optimales si votre moniteur peut fonctionner en mode 1600x1200 (le mode le plus élevé que XF86Setup puisse configurer est 1280x1024).
Si vous désirez effectuer ces modifications, consultez le XFree86 Video Timings HOWTO http://sunsite.unc.edu/LDP/HOWTO/video-modes.html.
Par défault, X utilise seulement un codage des couleurs sur 8 bits, ce qui permet donc d'avoir au plus 256 couleurs. Afin de contourner cette limitation, de nombreuses applications alloue leur propre table de couleurs, ce qui a pour effet de changer brutalement les couleurs quand votre curseur de souris passe d'une application à une autre. Par exemple, le browser Web Arena alloue sa propre table de couleurs.
Si vous désirez utilisez des applications graphiques complexes, 256 couleurs ne seront sûrement pas suffisantes. Vous devez alors utiliser un codage des couleurs sur au moins 16 bits, ce qui vous permettra d'utiliser 65536 couleurs. Ceci est possible en lançant X par :
startx -- -bpp 16
exec X :0 -bpp 16
.xserverrc
. mais attention toutes les applications ne
fonctionnent pas avec des couleurs codées sur 16 bits.
Augmenter le nombre de couleurs a pour effet de demander à la carte vidéo de
transférer plus de données dans un même laps de temps. Si votre carte vidéo
n'y arrive pas, diminuez la résolution ou le taux de rafraîchissement. Par
défaut XFree86 réduit la résolution. Si vous désirez conserver votre
résolution et diminuer le taux de rafraîchissement, vous devez insérer une
nouvelle ligne Modeline
dans le fichier XF86Config
définissant la
résolution avec un taux de rafraîchissement plus faible. Par exemple
remplacez la ligne
Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
par
Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync.
Le nombres magiques 75 et 65 sont respectivement les fréquences d'horloges
que vous trouvez écrit dans le fichier .X.err
par X. Consultez le
fichier monitors
dans la documentation de XFree86, afin de trouver les
Modelines
correspondant à une fréquence maximale pour que votre carte
vidéo puissent générer des couleurs sur 16 bits.
Si votre fichier XF86Config
est correct, vous êtes donc paré à
lancer le serveur X et à y jetter un oeil. Premièrement, vérifiez encore que
/usr/X11R6/bin
est bien dans votre variable PATH.
La commande pour lancer XFree86 est :
startx
Celle-ci est un script lançant xinit
avec certains paramètres (ceci
au cas où vous seriez habituer à lancer xinit
sur d'autres systèmes
UNIX).
Cette commande va démarrer le serveur X puis exécuter les commandes se
trouvant dans le fichier .xinitrc
dans votre répertoire d'acceuil.
.xinitrc
est juste un script contenant les clients X à lancer après
le démarrage du serveur X. Si ce fichier n'existe pas, le fichier par défaut
/usr/X11R6/lib/X11/xinit/xinitrc
sera utilisé.
Un fichier standard .xinitrc
ressemble à :
#!/bin/sh
xterm -fn 7x13bold -geometry 80x32+10+50 &
xterm -fn 9x15bold -geometry 80x34+30-10 &
oclock -geometry 70x70-7+7 &
xsetroot -solid midnightblue &
exec twm
Ce script va lancer deux clients xterm
, un oclock
, et mettre comme
couleur de fond du midnightblue
. Il va alors lancer twm
, le
gestionnaire de fenêtres. Remarquez que twm
est lancé par une
commande shell exec
; ceci a pour effet de remplacer le processus
xinit
par le processus twm
. Une fois que vous quitterez twm
le serveur X s'arrêtera de lui-même. Pour quitter twm
, utilisez le menu
du bouton 1 lorsque vous êtes sur le bureau. Vous aurez alors la
possibilité de choisir Exit twm
.
Soyez certain que la dernière commande du fichier .xinitrc
commence
par exec
et qu'elle n'est pas mise en tâche de fond (pas de
et-commercial en fin de ligne). Sinon le serveur X s'arrrêterait
immédiatement après la fin de l'exécution du script .xinitrc
.
Vous pouvez aussi utiliser la combinaison de touche
ctrl-alt-backspace
pour "tuer" le serveur X et quitter le
système de fenêtrage.
La configuration ci-dessus est très, très simple. De nombreux programmes et
configurations peuvent être lancées dans le fichier .xinitrc
, comme
par exemple, le gestionnaire de fenêtres fvwm
qui permet d'avoir un
"bureau" virtuel de grande taille, de choisir les couleurs, fontes,
tailles et positions des fenêtres, et tout ce que vous pouvez désirer
secrètement (si, si, même cela).
Si vous êtes novice avec l'environnement X Window, nous vous recommandons
chaudement de consulter un livre comme The X Window System: A User's
Guide. Utiliser et configurer X est bien plus compliqué que ce que nous
pouvons aborder ici. Consultez les pages de manuels de xterm
,
oclock
, et twm
afin de prendre un bon départ.
Ce document est sous copyright 1996 de Eric S. Raymond pour la version anglaise et de Pierre Vassellerie pour la version française. Vous êtes autorisé à utiliser, diffuser et reproduire gratuitement ce document, tant que :
La première version de ce document a été réalisée par Matt Welsh dans les profondes et obscures abysses du temps. Merci, Matt !
Merci aux relecteurs.
De plus, si vous désirez m'envoyer vos remerciements, ainsi qu'aux autres
traducteurs des HOWTO
, ceux-ci seront les bienvenus et nous
encouragerons à continuer notre laborieux travail.