for nVidia, Intel, ATI/AMD
We only cover the most common graphics cards here in the manual. Exotic or relatively old graphics hardware, as well as server graphics are not discussed.
It is relatively easy to find out which graphics hardware is installed:
inxi -G
lspci | egrep -i "vga|3d|display"
This information is also very important if you have problems with the graphics and are looking for help in the forum or IRC.
The graphics system under Linux consists of 4 basic parts:
kernel driver
Direct Rendering Manager
DDX driver
Xorg can also use modesetting-ddx, which is now part of the Xserver itself. This is automatically used for Intel graphics and is also used if no special xserver-xorgvideo-foo package is installed.
dri/mesa
Open source Xorg drivers for nVidia (modesetting/nouveau), ATI/AMD (modesetting/radeon/amdgpu), Intel (modesetting/intel), and others are pre-installed with siduction.
Note: xorg.conf is usually no longer needed for open source drivers. Exceptions are e.g. multi-screen operation.
Proprietary drivers are actually only available for nVidia graphics cards. AMD also has a proprietary driver called amdgpu-pro, but this only officially supports Ubuntu in certain versions and is not packaged in Debian. Also, this driver is designed for professional cards rather than desktop cards.
Here you can get more information about the drivers of
Intel
ATI/AMD
nouveau
X.Org.
Pretty much any video card that uses a KMS driver kernel-side is suitable for 2D operation under all surfaces. In general (with a few exceptions of exotic or old hardware), 3D acceleration is also available.
3D acceleration is available under Linux for Intel, AMD, and nVidia graphics cards. How well the free drivers have 3D implemented depends somewhat on the graphics card itself. In general, it should be noted that almost all graphics cards require non-free firmware to run smoothly. This firmware is only available in the non-free repository in Debian because it is not DFSG compliant. If the correct firmware is installed, 3D support is available with Intel or AMD graphics cards without any further action. With nVidia graphics the story is a bit different. Older cards, which are classified as legacy cards by nVidia, work relatively well, although problems are always to be expected since the desktop used also plays a role. The free nouveau driver is developed without support from nVidia via reverse engineering.
Since the non-free firmware is usually required for correct operation (AMD, Intel from Skylake on, and Nvidia from Fermi on), an entry similar to
deb http://deb.debian.org/debian/ unstable main contrib non-free
should be set. To prevent subsequent problems with WiFi, network, Bluetooth, or similar, a
apt update && apt install firmware-linux-nonfree
makes sense. This will install more firmwares than you might need, but that should not be a disadvantage.
Selection, installation with dkms support and integration in Xorg.
nVidia divides its graphics card drivers into 7 generations:
Cards of the generations 1 - 5 are no longer supported by nVidia, only old driver versions are available, which neither work with current kernels nor with current versions of the Xorg server. For a complete and up-to-date list of supported graphics chips, please consult the “Supported Products List” on the NVIDIA Linux graphics driver download page.
Debian provides the following versions of the binary drivers:
- nvidia-legacy-304xx-driver (for 4.)
- nvidia-legacy-340xx-driver (for 5.)
- nvidia-legacy-390xx-driver (for 6.)
- nvidia-driver (for 7.)
Since these are proprietary drivers, contrib and non-free must be activated in the sources (like for the firmware for free drivers). You have to make sure in advance that the kernel headers are installed to match the running kernel. This is the case once linux-image-siduction-amd64 and linux-headers-siduction-amd64 are installed. In addition, the packages gcc, make and dkms are necessary. With dkms additionally installed (nVidia) kernel modules are automatically updated during a kernel update. After you have found out which nVidia card or which nVidia chip you have, you can install the driver as follows:
GeForce 8000 and 9000 series
apt update && apt install nvidia-legacy-340xx-driver
GeForce GF1xx Chipset, Fermi Cards
apt update && apt install nvidia-legacy-390xx-driver
Kepler, Maxwell, Pascal, and newer (GKxxx, GMxxx, GPxxx, TU1xx)
apt update && apt install nvidia-driver
If this runs without errors, enter
mkdir -p /etc/X11/xorg.conf.d; echo -e 'Section "Device"
\n\tIdentifier "My GPU"\n\tDriver "nvidia"\nEndSection'
> /etc/X11/xorg.conf.d/20-nvidia.conf
(all in one line)
to tell Xorg to use this installed driver. After a reboot the system
should hopefully boot up to the desktop. If problems occur, i.e. the
desktop does not start, you should consult
/var/log/Xorg.0.log
.
Since the legacy drivers 304.xx and 340.xx are no longer supported by nVidia, it is likely that they will not work with a new kernel or new Xorg.
Notebooks with hybrid graphics Intel/nVidia, so-called Optimus hardware, are problematic. In the past, Bumblebee was recommended, but this solution is anything but optimal. nVidia itself recommends configuring these setups with PRIME. Our recommendation is to avoid such hardware if possible. We cannot provide setup tips for Optimus hardware here.