Nouveau
Nouveau est le pilote open source pour les cartes graphiques nVidia, avec le support complet 2D et 3D, qui vous permettra d’utiliser des fonctionnalités du noyau comme Kernel Mode Setting ou encore Wayland, le potentiel futur remplaçant du serveur X.
Le noyau
Evidemment, tout commence par la configuration du noyau :
Device Drivers --->
Graphics support --->
<M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
<M> Nouveau (nVidia) cards
Pour la partie framebuffer, nouveau et Kernel Mode Setting ne fonctionnent pas et sont en conflit avec les pilotes pour nvidia tels que rivafb, nvidiafb ou encore uvesafb :
Device Drivers --->
Graphics support --->
-*- Support for framebuffer devices --->
< > Userspace VESA VGA graphics support
[*] VESA VGA graphics support
< > nVidia framebuffer support
< > nVidia Riva support
Recompilez et installez votre noyau.
Avant de redémarrer, ajoutez le fichier /etc/modprobe.d/nouveau.conf avec ce qui suit afin d’éviter de charger des modules pouvant entrer en conflit avec nouveau :
blacklist nvidia
blacklist rivafb
blacklist nvidiafb
blacklist uvesafb
Configuration
Portage
Modifiez la variable VIDEO_CARDS dans le fichier /etc/portage/make.conf :
VIDEO_CARDS="nouveau"
Utilisez xorg-x11 pour l’implémentation opengl :
eselect opengl set xorg-x11
Mettez ensuite à jour votre système afin que les paquets, en particulier ceux relatifs au serveur X, soient compilés avec le bon support.
emerge -avuDN @world
Parmis ces paquets doivent se trouver : x11-base/xorg-drivers et media-libs/mesa. Par ailleurs, il y a de fortes probabilités que vous soyez obligé de recompiler un certain nombre de paquets suite à la modification des deux précédents :
emerge @preserved-rebuild
Afin de profiter pleinement des performances de votre carte, installez le paquet nvidia-firmware :
emerge -av sys-firmware/nvidia-firmware
Framebuffer
Normalement, dés le premier le redémarrage, vous devriez avoir une jolie console à la résolution de votre écran, cela dit, l’autodetection peut manquer de précision et, dans ce cas, vous devrez forcer la bonne résolution de votre écran en modifiant le fichier /boot/grub2/grub.cfg. Afin d’utiliser la bonne dénomination pour les écrans, tapez la commande suivante :
ls /sys/class/drm | grep card
Vous devriez obtenir quelque chose qui ressemble à cela, suivant le nombre de cartes et de types de connectique sur celles-ci :
card0
card0-DVI-I-1
card0-HDMI-A-1
Vous pouvez donc maintenant modifier le fichier /boot/grub2/grub.cfg :
menuentry "Gentoo Linux - Kernel 3.10.11-gentoo" {
insmod lvm
insmod xfs
set root='lvm/vg0-boot'
search --no-floppy --fs-uuid --set fcd38e57-3c72-4166-bdd3-626b79c875ee
linux /kernel-3.10.11-gentoo root=/dev/mapper/vg0-root video=DVI-I-1:1920x1080-16@60 video=HDMI-A-1:1920x1080-16@60 ro
initrd /initramfs-3.10.11-gentoo.xz
}
X
Normalement, dés le démarrage du serveur X, la détection automatique devrait avoir fait le boulot, mais la majeure partie des problèmes que vous rencontrerez seront résolus par le fait de déterminer vos réglages. Afin de retrouver de quelle manière sont nommées la carte et ses sorties :
ls /sys/class/drm | grep card
/etc/X11/xorg.conf.d/20-graphics.conf
Créez le fichier /etc/X11/xorg.conf.d/20-graphics.conf afin de spécifier la carte et le pilote à utiliser :
Section "Device"
Identifier "Card0"
Driver "nouveau"
VendorName "nVidia Corporation"
BoardName "GeForce GT 620"
EndSection
/etc/X11/xorg.conf.d/40-monitor.conf
Créer le fichier /etc/X11/xorg.conf.d/40-monitor.conf. Dans cet exemple, il s’agit d’une configuration avec bureau étendu sur un deuxième écran :
Section "Monitor"
Identifier "DVI-I-1"
Option "PreferredMode" "1920x1080"
EndSection
Section "Monitor"
Identifier "HDMI-A-1"
Option "PreferredMode" "1920x1080"
Option "RightOf" "DVI-I-1"
EndSection
Il ne vous reste plus qu’à profiter des performances de votre carte graphique nVidia. ;-)
Liens
- http://nouveau.freedesktop.org/wiki/VideoAcceleration/
- https://wiki.gentoo.org/wiki/Nouveau
- https://wiki.gentoo.org/wiki/Xorg/Configuration