How to install nvidia drivers in Kali Linux
NVIDIA Driver Install
First of all I’m assuming being logged in under root and a clean install of kali 2017.2.
Ensure that sources.list ONLY has the following source:
deb http://http.kali.org/kali kali-rolling main contrib non-free
1. Grab the packages you need
apt-get update apt-get upgrade apt-get dist-upgrade apt-get update apt-get upgrade
2. Unload nouveau from the kernel.
modprobe -r nouveau
3. Install kernel headers
apt-get install gcc make linux-headers-$(uname -r)
4. Install dkms
apt-get install dkms
5. Blacklist the nouveau drivers
and add the line “blacklist nouveau” sans the quotes to the conf file, save and close.
6. Install the Nvidia drivers and reboot
apt-get install nvidia-kernel-dkms nvidia-xconfig nvidia-settings reboot
Login and you’re done. If you need to configure your drivers, run nvidia-settings from terminal.
NVIDIA Setup on Optimus Enabled Laptops M series GPU
First of all, the instructions on the KALI distro website are wrong, they won’t work and they’re not ever going to work with a Kali install.
Anyway here goes
Once Kali is installed, when GRUB loads, select the kali boot entry and press ‘e’.
Go down to the line that loads the linux kernel and append ” nomodeset” without the quotes but including the prefixed space after the ‘quiet’ text, this will allow you to load your display manager.
It should look similar to the following example
linux /boot/vmlinuz-linux root=/dev/sda3 initrd=/boot/initramfs-linux.img quiet nomodeset
Once you’re logged in, open a terminal and issue the following commands:
apt-get update apt-get dist-upgrade apt-get upgrade
This will make sure your distro is up to date. Once done, reboot Kali, remember to press e and specify nomodeset again.
apt-get install -y linux-headers-$(uname -r) apt-get install nvidia-kernel-dkms nvidia-xconfig nvidia-settings apt-get install nvidia-vdpau-driver vdpau-va-driver mesa-utils
This installs the appropriate nvidia drivers, configuration software and mesa-utils to verify driver installation worked via glxgears.
Issue lspci to identify the BusID of your nvidia chip, you’ll be needing this for configuring xorg.conf.
In the terminal issue the following command:
lspci | grep "3D"
I get the following output
04:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)
Note your BusID for the nvidia card.
Put the following configuration into your xorg.conf, be sure to edit it, replacing <#:#:#> with your BusID from lspci, for example if LSPCI reports 04:00.00 the BusID value should be “4:0:0”
Section "Module" Load "modesetting" EndSection Section "Device" Identifier "nvidia" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "<#:#:#>" Option "AllowEmptyInitialConfiguration" EndSection
In my instance, BusID is set to “4:0:0”
In the final your xorg.conf should be like this
Section "Module" Load "modesetting" EndSection Section "Device" Identifier "nvidia" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "4:0:0" Option "AllowEmptyInitialConfiguration" EndSection
Save and Exit
Create a lightdm configuration script, this will execute before the display manager starts and will tell X which output source to use.
paste the following lines into the new file, save and close
#!/bin/sh xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto
Next, we need to make this script executable from a terminal.
chmod +x /etc/lightdm/display_setup.sh
Finally, lightdm needs to be told to execute the script upon load. You will need to open the lightdm.conf file, scroll down to [Set:*] section and immediately below it, add the following text.
Reboot and you’re done. No need to set nomodeset when booting in grub, once you’re logged in, pop open a terminal and issue
That’s it. You’re done, you now have 3D acceleration using your nvidia card.
I did this for the XFCE variant of Kali, you’ll need to adapt Step 6 and Step 7 for your chosen display manager.