Ce tutoriel vous explique comment installer le pilote propriétaire NVIDIA pour votre carte graphique NVIDIA sur Debian Linux.
De base, Debian utilise le pilote libre nouveau pour les cartes graphiques NVIDIA. Malheureusement, ce pilote ne permet pas à votre carte graphique d’exploiter tout son potentiel. Nous allons donc installer le pilote propriétaire nvidia qui est beaucoup plus performant et qui vous permettra d’exécuter vos applications et vos jeux vidéo avec des performances graphiques optimales.
Table des matières
Installer le pilote propriétaire NVIDIA
- Ouvrez le Terminal.
- Vérifiez si votre carte graphique NVIDIA est bien détectée :
lspci | egrep "3D|VGA" 04:00.0 3D controller: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev a1)
- Utilisez nvidia-detect pour connaitre le paquet du pilote NVIDIA à installer :
sudo apt install nvidia-detect nvidia-detect Detected NVIDIA GPUs: 04:00.0 3D controller [0302]: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / G T 620M/625M/630M/720M] [10de:1140] (rev a1) Checking card: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/63 0M/720M] (rev a1) Your card is supported by all driver versions. It is recommended to install the nvidia-driver package.
Ici, c’est le paquet
nvidia-driver
qui doit être installé. Si vous avez une ancienne carte graphique NVIDIA, vous devrez peut-être installé un ancienne version, par exemplenvidia-legacy-390xx-driver
. - Installez le paquet
linux-headers
en fonction de l’architecture de votre système (32 ou 64 bits) :uname -r 4.19.0-4-amd64 sudo apt install linux-headers-amd64
- Installez le paquet correspondant à votre carte graphique NVIDIA :
sudo apt install nvidia-driver
- Redémarrez votre PC.
- Vérifiez que la carte graphique NVIDIA est bien utilisée par le système (le paquet
mesa-utils
doit être installé pour utiliser glxinfo) :glxinfo | egrep "OpenGL vendor|OpenGL renderer" OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GT 720M/PCIe/SSE2
Et que le pilote nvidia est bien utilisé :
lshw -C display *-display description: 3D controller produit: GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] fabriquant: NVIDIA Corporation [...] configuration: driver=nvidia latency=0
Désinstaller le pilote propriétaire NVIDIA
- Ouvrez le Terminal.
- Désinstallez tous les paquets nvidia (n’oubliez pas le point) :
apt purge nvidia.
- Redémarrez le gestionnaire d’affichage (si vous avez un environnement de bureau) :
- GDM (GNOME) :
systemctl restart gdm3.service
- SDDM (KDE) :
systemctl restart sddm.service
- LightDM :
systemctl restart lightdm.service
- GDM (GNOME) :
- Réinstallez le pilote libre nouveau pour votre carte graphique NVIDIA :
apt install --reinstall xserver-xorg apt install --reinstall xserver-xorg-video-nouveau
- Redémarrez votre PC :
killall Xorg reboot
Que faire ?
Cas n°1 : vous avez une carte graphique NVIDIA
Si votre PC ne dispose que d’une seule carte graphique NVIDIA, installez simplement le pilote propriétaire NVIDIA puis redémarrez votre PC.
Debian Linux utilisera automatiquement le pilote nvidia au prochain démarrage du PC.
Cas n°2 : vous avez un iGPU + une carte graphique NVIDIA
Si votre PC est équipé d’un processeur graphique intégré (iGPU) Intel ou AMD et d’une carte graphique NVIDIA, il est possible de sélectionner l’un ou l’autre pour gérer l’affichage de votre environnement de bureau et de vos applications.
Si vous avez un PC portable, vous disposez en plus de la technologie NVIDIA Optimus qui permet de basculer entre le processeur graphique Intel et la carte graphique dédiée NVIDIA et ce, à la volée. Pour que cette technologie fonctionne sur Debian, il faut installer l’application Bumblebee qui permet d’utiliser la carte graphique NVIDIA avec certaines applications.
A partir de là, vous avez le choix entre :
- utiliser la carte graphique NVIDIA pour toutes vos applications ;
- utiliser par défaut l’iGPU Intel ou AMD et activer la carte graphique NVIDIA à la demande pour certaines applications (sur PC portable uniquement).
Utiliser uniquement la carte graphique NVIDIA
Pour utiliser uniquement la carte graphique NVIDIA sur votre système, voici comment procéder :
- Ouvrez le Terminal.
- Installez le pilote propriétaire NVIDIA comme vu en début de tutoriel.
- Notez le Bus ID de votre carte graphique NVIDIA :
lspci | grep 3D 04:00.0 3D controller: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/ 625M/630M/720M] (rev a1)
Ici, le Bus ID est 04:00.0.
- Créez le fichier de configuration Xorg suivant en remplaçant X:Y:Z par le Bus ID de votre carte graphique NVIDIA :
/etc/X11/xorg.conf.d/20-nvidia.conf -- Section "Module" Load "modesetting" EndSection Section "Device" Identifier "nvidia" Driver "nvidia" BusID "PCI:X:Y:Z" Option "AllowEmptyInitialConfiguration" EndSection
- Suivez les instructions suivantes en fonction de votre gestionnaire d’affichage :
- GDM (sur GNOME) :
- Créez ces deux fichiers .desktop avec le contenu suivant :
/usr/share/gdm/greeter/autostart/optimus.desktop /etc/xdg/autostart/optimus.desktop -- [Desktop Entry] Type=Application Name=Optimus Exec=sh -c "xrandr --setprovideroutputsource modesetting NVIDIA-0; xrandr --auto" NoDisplay=true X-GNOME-Autostart-Phase=DisplayServer
- Redémarrez GDM :
systemctl restart gdm3.service
- Créez ces deux fichiers .desktop avec le contenu suivant :
- SDDM (KDE) :
- Créez le script suivant qui permet d’utiliser le pilote NVIDIA :
/usr/local/bin/switch_nvidia.sh -- xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto xrandr --dpi 96
- Rendez le script exécutable :
chmod +x /usr/local/bin/switch_nvidia.sh
- Configurez GDM pour qu’il lance le script que l’on vient de créer :
/usr/share/sddm/scripts/Xsetup -- #!/bin/sh # Xsetup - run as root before the login dialog appears /usr/local/bin/switch_nvidia.sh
- Redémarrez SDDM :
systemctl restart sddm.service
- Créez le script suivant qui permet d’utiliser le pilote NVIDIA :
- LightDM (XFCE) :
- Créez le script suivant qui permet d’utiliser le pilote NVIDIA :
/usr/local/bin/switch_nvidia.sh -- xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto xrandr --dpi 96
- Rendez le script exécutable :
chmod +x /usr/local/bin/switch_nvidia.sh
- Configurez LightDM pour qu’il lance le script que l’on vient de créer :
/etc/lightdm/lightdm.conf -- [Seat:*] display-setup-script=/usr/local/bin/switch_nvidia.sh
- Redémarrez LightDM :
systemctl restart lightdm.service
- Créez le script suivant qui permet d’utiliser le pilote NVIDIA :
- GDM (sur GNOME) :
- Vérifiez que c’est bien la carte graphique NVIDIA qui est utilisée pour gérer l’affichage de vos applications :
glxinfo | egrep "OpenGL vendor|OpenGL renderer" OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GT 720M/PCIe/SSE2
Utiliser la carte graphique NVIDIA à la demande
- Ouvrez le Terminal.
- Installez le pilote propriétaire NVIDIA comme vu en début de tutoriel.
- Installez les paquets suivants :
sudo apt install bumblebee-nvidia primus
- Ajoutez votre utilisateur au groupe bumblebee ($USER correspond à votre nom d’utilisateur) :
adduser $USER bumblebee
- Vous pouvez maintenant lancer vos applications avec la carte graphique NVIDIA avec la commande optirun :
optirun [options] <application>
Par exemple :
optirun glxinfo | egrep "OpenGL vendor|OpenGL renderer" OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GT 720M/PCIe/SSE2
Comme on peut le voir, c’est bien la carte graphique NVIDIA qui est utilisé lorsque l’on exécute une application avec optirun.