1. Home
  2. Docs
  3. Hardware and Network
  4. Graphic cards (GPU) driver and setup
  5. Nvidia
  6. Nvidia installer

Nvidia installer

by joekamprad

nvidia-installer and nvidia-installer-dkms:

We do offers a script formaly developed for Antergos by karasu and forked to use it now under EndeavourOS.

nvidia-installer-dkms is installed by default and can be used easily to install and remove propritary nvidia drivers .

We choose to install the dkms version by default to keep drivers installed and updated for all kernels you may install.

nvidia-installer-dkms uses dkms driver versions instead of non-dkms. This means that you can install the NVidia drivers also on other kernel versions like LTS, Zen, and Hardened. Using the installer’s dkms version also means, you need to install kernel header packages according to your installed kernel(s).

// example for linux-lts: sudo pacman -S linux-lts-headers

Package nvidia-installer-dkms since version 3.3.6-1 includes a tool nvidia-installer-check that can be used for checking which of the nvidia-driver versions supports your NVidia graphics card. Here are some examples of its output:

$ nvidia-installer-check 
Your graphics card (id 1dba) is supported by the nvidia-dkms driver.

$ nvidia-installer-check 
Your graphics card (id 06c4) is supported by the nvidia-390xx-dkms driver.
Use the --force option with nvidia-installer-dkms.
Then, BEFORE rebooting, install nvidia-390xx-dkms from the AUR, for example:
  yay -S nvidia-390xx-dkms

$ nvidia-installer-check 
Sorry, your Nvidia card (id: aaaa) is not supported by nvidia-dkms nor nvidia-390xx-dkms.

More info on dkms:

https://wiki.archlinux.org/index.php/Dynamic_Kernel_Module_Support

Workaround for NVidia cards that require 390xx series driver

  • Use nvidia-installer-dkms to install nvidia-dkms (may need to use the --force option)
  • If you get a warning about card is not in our database, then, before rebooting, install nvidia-390xx-dkms from the AUR:

yay -S nvidia-390xx-dkms

This is a list of all options for the script:

nvidia-installer-dkms -h (shows help)

usage: nvidia-installer-dkms [-h] [-b] [-f] [-t] [-q] [-n]
 EndeavourOS Nvidia Installer v2.1
 optional arguments:
   -h, --help       show this help message and exit
   -b, --bumblebee  For Nvidia Optimus cards (Bumblebee + proprietary Nvidia drivers)
   -f, --force      Force driver installation even if a nvidia card is not detected
   -t, --test       Test mode. Nothing in your system will be modified
   -q, --quiet      Supress log messages
   -n, --nouveau    Restores nouveau (open) nvidia driver

Install Nvidia proprietary drivers

test run for installation (will do i dry run without any changes to the system)

nvidia-installer-dkms -t

if it does not put out error run real install:

sudo nvidia-installer-dkms

this will install Nvidia proprietary drivers and do some configuration inside /etc/X11/xorg.conf.d/

sudo systemctl reboot

And you are on Nvidia drivers!

Optional settings and enhancements after installing driver:

If you want KMS (no requirement)

to get maybe gnome-wayland-session working you need to hack a bit after this…

adding nvidia-drm.modeset=1 to the kernel parameter inside grub:

sudo nano /etc/default/grub

and put nvidia-drm.modeset=1 inside as you can see here:

# GRUB boot loader configuration

GRUB_DEFAULT=0 GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="EndeavourOS"

GRUB_CMDLINE_LINUX_DEFAULT="nvidia-drm.modeset=1 resume=UUID=*****

save the file [Ctrl+X] and rebuild the grub.cfg:

sudo grub-mkconfig -o /boot/grub/grub.cfg

edit mkinitcpio.conf to get the module inside:

sudo nano /etc/mkinitcpio.conf

and edit like this:

# vim:set ft=sh

# MODULES

# The following modules are loaded before any boot hooks are

# run. Advanced users may wish to specify all system modules

# in this array. For instance:

# MODULES="piix ide_disk reiserfs"

MODULES="nvidia"

# BINARIES ....

save the file as above…

rebuild kernel image:

sudo mkinitcpio -p linux

replace linux with linux-lts if you are using lts kernel….

reboot again and you should have early boot enabled…

this will make it possible to run a GNOME session on wayland together with GDM instead of lightdm…

Avoid screen tearing

and i have nvidia-settings installed and run it on login with this to get better video quality, example for single display setp, of you have mor eyou need to add them to the command or option line, for this take a look at arch-wiki page linked here.

nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

https://wiki.archlinux.org/index.php/NVIDIA/Troubleshooting#Avoid_screen_tearing

You can add this to /etc/X11/xorg.conf.d/20-nvidia.conf like this:

Section "Device"
    Identifier "Nvidia Card"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    Option "NoLogo" "true"
EndSection

Section "Screen"
        Identifier      "nvidia"
        Option         "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

        Option          "TripleBuffer"                  "on"
        Option          "AllowIndirectGLXProtocol"      "off"
EndSection

Nvidia-installer can also setup Bumblebee for you:

If you need to set up bumblebee as detailed here: EndeavourOS Bumblebee wiki the nvidia-installer script can do that automatic too:

sudo nvidia-installer -b

This will look like this:

nvidia-installer -b
2017-12-17 17:02:29 [INFO]: EndeavourOS Nvidia Installer v2.1
2017-12-17 17:02:29 [INFO]: All logs will be stored in /tmp/nvidia-installer.log
2017-12-17 17:02:29 [INFO]: Installing bumblebee driver...
2017-12-17 17:02:29 [INFO]: Removing conflicting packages...
2017-12-17 17:02:29 [INFO]: Downloading and installing driver packages, please wait...
2017-12-17 17:04:43 [INFO]: Adding user username to bumblebee group...
2017-12-17 17:04:43 [INFO]: gpasswd -a username bumblebee
2017-12-17 17:04:43 [INFO]: Adding user username to video group...
2017-12-17 17:04:43 [INFO]: gpasswd -a username video
2017-12-17 17:04:43 [INFO]: Enabling bumblebeed.service service...
2017-12-17 17:04:43 [INFO]: systemctl enable bumblebeed.service
2017-12-17 17:04:43 [INFO]: Patching /usr/share/applications/nvidia-settings.desktop...
2017-12-17 17:04:43 [INFO]: /etc/X11/xorg.conf.d/20-nvidia.conf not found. That's ok.
2017-12-17 17:04:43 [INFO]: Installation finished. You need to reboot now!
Follow us
Was this article helpful to you? Yes 10 No 5

How can we help?