Linux – installing proprietary nvidia drivers Kali 2016.2

kali-linuxnvidia

I managed to render my installation of kali linux 2016.2 useless, so I re-installed it, and started
the process over again, following the tutorial found under:
https://www.blackmoreops.com/2014/03/13/install-proprietary-nvidia-driver-kali-linux/

Here are the steps outlined which can be found in that tutorial.

echo "deb http://http.kali.org/kali kali-rolling main contrib non-free" >> etc/apt/sources.list
apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y
apt-get install -y aptitude 
aptitude -r install linux-headers-$(uname -r)
apt-get install nvidia-kernel-$(uname -r)
aptitude install nvidia-kernel-dkms
aptitude install nvidia-xconfig
nvidia-xconfig
reboot

Since the installion stalled again on the following step,

aptitude -r install linux-headers-$(uname -r)

with following output

Couldn't find any package whose name or description matched "linux-headers-4.6.0-kali1-amd64"
Unable to apply some actions, aborting

I added the recommended repositories to /etc/apt/sources.list

echo "deb http://old.kali.org/kali sana main non-free contrib" >> /etc/apt/sources.list
echo "deb-src http://old.kali.org/kali sana main non-free contrib" >> /etc/apt/sources.list
echo "deb http://http.kali.org/kali kali-rolling main contrib non-free" >> /etc/apt/sources.list
echo "deb-src http://http.kali.org/kali kali-rolling main contrib non-free" >> /etc/apt/sources.list

and retried that step, but it still fails and shows the error. I'm totally stuck at this point and I'm not sure what to try next

I figured I have to download the driver manually from NVIDIA
this is the file I downloaded "NVIDIA-Linux-x86_64-304.132.run" it is about 69.4 MB large

This is the Info about that driver package:
LINUX X64 (AMD64/EM64T) DISPLAY DRIVER
Version: 304.132
Release Date: 2016.9.26
Operating System: Linux 64-bit
Language: English (US)
File Size: 66.21 MB

Supported Products reads:

GeForce 200 Series:
GeForce GTX 295, GeForce GTX 285, GeForce GTX 280, GeForce GTX 275, GeForce GTX 260, GeForce GTS 250,
GeForce GTS 240, GeForce GT 230, GeForce GT 240, GeForce GT 220, GeForce G210, GeForce 210, GeForce 205

here is the link
http://www.nvidia.com/content/DriverDownload-March2009/confirmation.php?url=/XFree86/Linux-x86_64/304.132/NVIDIA-Linux-x86_64-304.132.run&lang=us&type=GeForce

So my GeForce 210 is supported by this driver package, but how do I install it manuall and after which step should I do so?

Please help! I will compile everything into a tutorial, so other who have the same errors with kali linux 2016.2 are helped too.

Thanks

Best Answer

Actually, I just got the propriety Nvidia drivers working myself on both my desktop and my laptop, scroll down the guide for the Laptop guide. It's a little trickier on the Optimus laptop but still quite doable.

NVIDIA Desktop Driver Install

First of all I'm assuming being logged in under root and a clean install of kali 2016.2.

Pre-requisites

leafpad /etc/apt/sources.list

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

leafpad /etc/modprobe.d/nouveau-blacklist.conf

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

Step 1.

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

Step 2.

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.

Step 3.

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.

Step 4.

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

01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

Note your BusID for the nvidia card.

Step 5.

leafpad /etc/X11/xorg.conf

Put the following configuration into your xorg.conf, be sure to edit it, replacing <#:#:#> with your BusID from lspci, for example if LSPCI reports 01:00.00 the BusID value should be "1: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 "1:0:0"

Step 6.

Create a lightdm configuration script, this will execute before the display manager starts and will tell X which output source to use.

leafpad /etc/lightdm/display_setup.sh

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

Step 7.

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.

display-setup-script=/etc/lightdm/display_setup.sh

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

glxgears

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.

NVIDIA Optimus - Display Managers (Arch Linux) for further info on config of other Display Managers.

Related Question