Update - les drivers ATI intègrent dorénavant le support AIGLX. XGL n'est donc plus l'unique solution qui permet de bénéficier des effets du bureau 3D. Plus d'infos : ATI + AIGLX, ça marche : mode d'emploi.

Les détenteurs de cartes ATI doivent souvent faire le choix entre performance graphique et bureau 3D (compiz ou beryl) sous Fedora :
  • soit utiliser le driver libre radeon qui permet de bénéficier du bureau 3D via AIGLX mais dont les performances sont limitées (pas de dual screen, performances 3D parfois insuffisantes voire inexistantes suivant le type de carte, ...)
  • soit installer le driver propriétaire fglrx, incompatible avec AIGLX (pas de bureau 3D !)
Il est néanmoins possible de profiter à la fois des drivers propriétaires et du bureau 3D : la solution passe par XGL.

xgl FC6 cube
La solution présentée ici est valable pour GNOME, KDE et XFCE. Elle fonctionne aussi bien avec Beryl que Compiz.

Les étapes à suivre sont 1) Installation des drivers fglrx

Installer les drivers avec yum (du dépôt livna) :
yum install kmod-fglrx
Ensuite activer ce driver :
cp /etc/X11/xorg.conf /etc/X11xorgORIG.conf #sauver l'ancien xorg.conf
fglrx-config-display enable
   1.1) Modification du xorg.conf
a) Ajouter les sections suivantes dans votre xorg.conf (si pas déjà présentes)
Section "ServerFlags"
    Option "AIGLX" "false"
EndSection

Section "Extensions"
    Option "Composite" "Disable"
EndSection

Section "DRI"
    Mode 0666
EndSection
b) À partir des drivers 8.34, supprimez complètement votre section "Module".
c) Enfin, les options suivantes peuvent être utiles dans la section "Device" :
    Option        "UseFastTLS" "0"
    Option        "BlockSignalsOnLock" "on"
    Option        "ForceGenericCPU" "off"
    Option        "KernelModuleParm" "locked-userpages=0"
   1.2) Vérification de l'installation
Maintenant, le driver devrait être opérationnel. Relancer le serveur X et le service fglrx (service fglrx restart) (ou redémarrer le PC pour être sûr). Pour le vérifier, taper la commande fglrxinfo : elle doit renvoyer un message du genre :
$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON X300/X550/X1050 Series
OpenGL version string: 2.0.6334 (8.34.8)
et la commande "glxinfo | grep direct" doit renvoyer "Yes" :
$ glxinfo | grep direct
direct rendering: Yes
Mais le plus simple est peut être de tester le driver avec une application 3D (faites comme moi, prenez ppracer (yum install ppracer) par exemple ;-) )

Si ça ne fonctionne pas, regardez les erreurs du serveur X : "grep EE /var/log/Xorg.0.log" et "grep WW /var/log/Xorg.0.log".
Ou jetez un coup d'oeil à la section documentation de fedora-fr.

2) Installation de XGL

Vous pouvez installer et configurer XGL automatiquement en exécutant le script installXGL.
download Télécharger le script :
  • Fedora 6 et 7 : installXGL
  • Fedora 5 : installXGL_FC5 - fonctionne aussi sur les versions ultérieures de Fedora mais utilise les paquets FC5 de Compiz et de XGL
Lancez-le (en root bien sûr) :
wget http://nicofo.tuxfamily.org/scripts/xgl/installXGL
sh installXGL
Il télécharge les RPM de XGL, l'installe et le configure automatiquement. Il vous propose ensuite l'installation avec yum de compiz et beryl à partir des dépôts officiels de Fedora.

install xgl FC6
Si vous préférer l'installation manuelle, voyer ci-dessous : [afficher/cacher]

Il ne vous reste plus alors qu'à ouvrir une nouvelle session (pas besoin de redémarrer Fedora). À l'écran de connexion (GDM ou KDM), cliquer sur le menu ("Options" > ) "Session", choisissez votre session préférée et... enjoy :-D :

xgl FC6 GDM
Mise à jour

Des mises à jour sont régulièrement apportées aux scripts d'installation et de configuration. Pour mettre à jour, il suffit de relancer le script installXGL. Celui-ci vérifiera également que la dernière version de XGL est bien installée.
Pour connaître les mises à jour, vous pouvez visualiser les notes de mises à jour à cette adresse : Mise à jour de XGL.

Désinstallation

Si vous désirez supprimer XGL et ses fichiers de configuration, lancer installXGL -r.

Beryl ou compiz ?

Le script vous propose d'installer beryl et compiz, mais vous pouvez les installer à tout moment avec yum (yum install beryl compiz). Au démarrage de votre session, beryl ou compiz est exécuté. Vous pouvez choisir celui que vous préférez :
  • sous GNOME : dans le menu Système -> Préférences -> XGL Gestionnaire de fenêtres
  • sous KDE : dans le Menu K -> Configuration (Settings) -> XGL Gestionnaire de fenêtres
  • ou lancer chooseCompositeWM
xgl FC6 chooseCompositeWM

XGL et les jeux

Les jeux et autres applications 3D fonctionnent en général moins bien sous XGL. En cas de problème, lancez votre jeu à l'aide de la commande noXgl : "noXgl monjeu" au lieu de simplement "monjeu". L'option -a peut être utilisée pour lancer une application non-plein écran.

Problèmes et solutions
  • Ça marche pas ! Ma session GNOME/KDE+XGL ne se lance pas
  • -> un fichier de log des programmes lancés suite à votre login (y compris donc XGL, compiz/beryl) est enregistré dans "~/.xsession-errors". Il contient plus que probablement les raisons de votre problème. Attention, ce fichier est écrasé à chaque nouveau login graphique. Il faut donc le récupérer soit à partir d'un autre compte (compte root par exemple -> récupérez le fichier /home/<USER>/.xsession-errors et sauvez-le sous un autre nom), soit à partir du mode console (CTRL-ALT-F1 -> login -> "cp .xsession-errors erreurXGL.txt").
  • Beryl plante à chaque redimentionnement de fenêtre
  • -> vous pouvez modifier le comportement du plugin 'resize' : dans beryl-manager -> Window Management -> Resize Window -> Behaviour -> Resize Display Mode : mettre "Stretch".
  • Compiz se lance bien, mais je n'ai pas de bordures de fenêtre
  • -> activer le plugin "decoration" dans gset-compiz (System->Preferences->More Preferences->Configuration Tool for Compiz) (ensuite, lancer gtk-window-decorator (gnome-window-decorator sous FC5) ou relancer la session GNOME) Vous pouvez aussi utiliser gconf pour activer les plugins souhaités :
    gconftool-2 -s '/apps/compiz/general/allscreens/options/active_plugins' --type list --list-type string \
    '[gconf,png,svg,decoration,wobbly,fade,minimize,cube,rotate,zoom,place,move,resize,switcher,scale,water,annotate,screenshot]'
  • Mon super jeu 3D ne fonctionne plus
  • -> regardez ci-dessus (et surtout utilisez la commande noXgl).
  • Ça fonctionne bien avec KDE ?
  • -> oui, la preuve :
    xgl FC6 cube KDE
  • Autres ?
  • -> n'hésitez pas à laisser vos commentaires !

Vous voulez un aperçu du bureau 3D sous Fedora ? Screenshots de Compiz et Beryl (et ici aussi).