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.
Best Answer
There seems some issue with optimus dual video systems. You need to open your terminal and enter the commands below:
First remove current Nvidia installation.
Install Kernel header if didn't already
Then install bumblebee using below commands:
For more up-to-date nvidia drivers, you need to add another PPA. As of 12.04, this is still necessary for Nvidia GT 6xxM cards. It may be optional for the GT 4xxM and GT 5xxM series on 12.04. When in doubt, just install it. The command is:
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
Install Bumblebee using the proprietary nvidia driver:
sudo apt-get install bumblebee bumblebee-nvidia
Reboot or re-login
If you have 32-bit applications like Wine, and run 11.10 Oneiric or later, you will need extra libraries:
Allow yourself to use Bumblebee by adding yourself to the 'bumblebee' group. (replace $USER by your username)
Reboot or re-login to apply the group changes If you'd like to run a program on the nvidia card now, use the optirun program:
optirun firefox &
Also please look into this thread: http://ubuntuforums.org/showthread.php?t=2075423