How to install nvidia GPU drivers in elementary OS

Ubuntu and its derivatives like elementary OS, Linux Mint, etc. ship with Nouveau default video driver for use with the nvidia GPUs. This does a great job and most of the users should be happy with it. They are easy to update, and gets lot of testing in Ubuntu community. Therefore, one would expect less number of bugs in it.

The only drawback is they are not up-to-date when compared with the official version released by nvidia. Having said that, the official ones comes with a bigger set of problems. Obviously, since the latest driver is not tested with Ubuntu, you will see more issues than the ones available in the Ubuntu’s tested PPA.

Keeping all these in mind, I recommend to install nvidia drivers from PPA repository for a stable PC. It does get automatic updates.

Install nvidia drivers in elementary OS Loki

Ubuntu and Linux Mint users can skip STEP 1 & 2.

STEP 1: Starting from Loki, elementary OS doesn’t support PPA. So let’s first enable it.  Launch ‘Terminal’ and run the following commands one at a time:

sudo apt-get update
sudo apt-get upgrade

STEP 2: This command will enable PPA and you can use apt-get again in elementary OS.

sudo apt install software-properties-common

STEP 3: Let’s install video graphic sources.

sudo add-apt-repository ppa:graphics-drivers/ppa

STEP 4: Update again.

sudo apt-get update
sudo apt-get upgrade

STEP 5: Finally you need to know which nvidia drivers should you install. You can check the latest PPA graphic builds here. Current official (Feb 2017) release is nvidia-370 (370.28). GeForce 8 and 9 series GPUs users need to use ‘nvidia-340’ (340.98) and GeForce 6 and 7 series GPUs users should be using ‘nvidia-304’ (304.132) in the command below. Use 3 digit number accordingly.

sudo apt-get install nvidia-xxx

If you are still on nvidia optimus, use the bumblebee instead of above command:

sudo apt-get install bumblebee linux-headers-generic

Good luck!

Kiran Kumar
Hi there! I'm Kiran Kumar, founder of I'm an avid Linux lover and enjoy hands-on with new promising distros. Currently, I'm using Ubuntu as a daily driver and run several other distros such as Fedora, Solus, Manjaro, Debian, and some new ones on my test PC and virtual machines. I have a day job as an Engineer, and this website is one of my favorite past time activities especially during Winter ;). When I'm not writing for FOSSLinux, I'm seen biking and hiking on scenic trails. Hope you enjoy using this website as much as I do writing for it. Feedback from readers is something that inspires me to do more, and spread Linux love!. If you find a time, drop me an email or feedback from the 'Contact' page. Or simply leave a comment below if you found this article useful. Have a good day!


  1. Thanks Great and clear guide.

    On my Lenovo Thinkpad P51 …
    I had some issues with kernel 4.13.0-37 and Nvidia 384 driver .. There is a bug !
    So with you do not have to use the update of Elementary OS ..

    Instead I follow your guide :
    1.a Remove boot security in your bios if it is enabled
    1.b Activate hybrid graphic mode in bios

    2. Follow your guide
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt autoremove
    sudo apt install software-properties-common
    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install nvidia-390

    3. Go in settings, Nvidia settings, Prime profiles
    and activate NVIDIA

  2. Thank you very much for these instructions. I was almost ready to give up on getting my display drivers installed correctly until I followed your instructions. Now I have my dual monitors working as they should and great resolution with the correct nvidia driver in Elementary OS Juno.

  3. Thanks for the guide, Foss. All it ended up doing is causing my Ubuntu to freeze when it starts up. At least it used to work when it was on the Intel GPU and froze only when it switched to the Nvidia.
    Thanks for trying. To be fair it hasn’t worked no matter what I’ve tried. think I’m done with Linux. I can’t keep typing esoteric commands and reinstalling Linux every weekend. I don’t like windows but at least it works no matter how buggy the updates are or how much it slows down my computer. All I end up doing is wasting my Saturday and then going back to windows on Sunday. Things shouldn’t be so hard in 2019, this is like 2006 all over again.
    Guess I’ll just go do full windows install and try installing all the updates all over again.
    If it makes any difference, I’m on an msi gs43 vr laptop.


Please enter your comment!
Please enter your name here




cool and fun linux commands
The real purpose of this article is to help Linux newbies get comfortable and confident with the Linux command-line.  While knowledge and comfort of the Linux GUI allow great power, it is the mastery of the command line, or CLI, affords the Linux user unlimited power and certifies them as a Linux power user well on their way to becoming an expert.
best linux distros beginners
Making the shift to Linux is not as complicated as some people make it out to be. There is a variety of Linux distributions available that cater to the needs of people who are planning on making the jump to Linux from any other operating system.