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