Problem running nvidia drivers

Hello All,
I am currently running Opensuse Leap 42.1 on a Thinkpad w541 with an nvidia quadro k2100m. I have followed the instructions here https://en.opensuse.org/SDB:NVIDIA_drivers#In_the_new_wiki, but for some reason, whenever I launch nvidia-settings, a message appears and tells me “You do not appear to be using the NVIDIA X driver. Please edit your X configuration file (just run nvidia-xconfig as root), and restart the X server.” When I run this command, nothing changes and a reboot causes a black screen. Is there any way to fix this?

Sounds like you may have an Optimus notebook. ie Intel+NVIDIA hybrid graphics. Is so remove the NVIDIA driver and use bumblebee

https://en.opensuse.org/SDB:NVIDIA_Bumblebee

I followed the steps outlined in the wiki and did not get a black screen. However, launching the nvidia-settings still gives me the error message.
When checking to see if bumblebee is working I get this message.
How would I fix this?
SuSeBox:~> optirun -status
102.727952] [ERROR]The Bumblebee daemon has not been started yet or the socket path tatus was incorrect.
102.727976] [ERROR]Could not connect to bumblebee daemon - is it running?

To start nvidia-settings on bumblebee you have to issue:


optirun -b none nvidia-settings -c :8

since bumblebee starts an auxiliary Xserver (number :8) to which the Nvidia GPU must link to operate as intended.
Please note that “optirun -status” does not exist, optirun requires a command to operate; please see “man optirun” for available options and their correct syntax.

I see, even so when I enter the command you provided me with to start bumblebee, the result seems to be the same.
SuSeBox:~> optirun -b none nvidia-seetings -c:8
74.068915] [ERROR]The Bumblebee daemon has not been started yet or the socket path /var/run/bumblebee.socket was incorrect.
74.068943] [ERROR]Could not connect to bumblebee daemon - is it running?

Your Bumblebee is not running, sorry. I double-checked your configuration on the net and apparently the problem is as follows.

The Nvidia Quadro M2000 (AKA M2100) needs at least the Nvidia driver > Version: 361.42 Release Date: 2016.3.30
Unfortunately the bumblebee repo still carries nvidia-bumblebee > Version: 361.28-1.1 Build Time: mer 02 mar 2016 11:24:44 CET
so, basically, your GPU is not supported by the standard bumblebee install.

A suitable driver package is available here http://download.opensuse.org/repositories/home:/Bumblebee-Project:/nVidia:/361.42/openSUSE_Leap_42.1/x86_64/
but you should install it manually and I cannot offer a step-by-step guide, sorry. Maybe just subscribing to that repo after removing the nvidia-bumblebee you currently have and then installing x11-video-nvidia-361.42-171.1.x86_64.rpm might bring in the needed dependencies and install everything but I never did that and cannot guarantee the result.
I did something similar with the beta version 364.15 and suse-prime according to this guide https://forums.opensuse.org/showthread.php/512260-Leap-42-1-Optimus-system-with-nvidia-prime-instead-of-bumblebee and it worked, but that’s all I can provide.

BTW “optirun --status” (with TWO dashes) works even if undocumented and should show that bumblebee is running when it actually IS running.

My former post #6 might not be entirely correct, sorry.
On closer inspection, while the Nvidia download site claims for the 361.42 driver:

Added support for the following GPUs:

GeForce 920MX
GeForce 930MX
Quadro M6000 24GB
**Quadro M2000**

I see that the “SUPPORTED PRODUCTS” list for the mobile versions is THE SAME for both the 361.28 and 361.42 drivers.

Quadro Series (Notebooks):

Quadro M5000M, Quadro M4000M, Quadro M3000M, Quadro M2000M, Quadro M1000M, Quadro M600M, Quadro K5100M, Quadro K5000M, Quadro K4100M, Quadro K4000M, Quadro K3100M, Quadro K2200M, Quadro K2100M, Quadro K3000M, Quadro K2000M, Quadro K1100M, Quadro K1000M, Quadro K620M, Quadro K610M, Quadro K510M, Quadro K500M, Quadro 5010M, Quadro 5000M, Quadro 4000M, Quadro 3000M, Quadro 2000M, Quadro 1000M

So, IF the Nvidia site is correct, the standard Bumblebee install with the 361.28 driver should work if all the steps are done carefully.
Of course we cannot rule out that the GPU - driver - bumblebee combination might still have quirks that prevent bumblebee from running.

We might have some additional info from a similar thread here Bootable snapshots not bootable on Lenovo W530 i7 3740QM, Nvidia K1000M, SSD 512GB Laptop - Install/Boot/Login - openSUSE Forums

I see, I’ll try and check out the link a bit more, but so far nothing has really been working. I get an image to display on the screen just fine, but it seems bumblebee just won’t start.

On some systems rebuilding the initrd after the installation of the Nvidia driver helps, maybe yours is one of those requiring early engagement of the GPU.
Follow the guide, then after issuing “zypper in nvidia-bumblebee-32bit” and waiting for the job to complete, issue:


dracut --host-only --force

It should do no harm anyway. Also, please be aware that the process of installing nvidia-bumblebee, downloading the driver itself from Nvidia, building the kernel modules takes time, up to a couple minutes on some systems, take care not to interrupt it.
Check that a file about 87 MB named NVIDIA-Linux-x86_64-361.28.run has been downloaded to /usr/src/
Check that needed kernel modules are indeed in place:


:~> ls -l /lib/modules/4.1.20-11-default/updates/
total xxxxx
-rw-r--r-- 1 root root 13872384 12 apr 18.45 nvidia.ko
-rw-r--r-- 1 root root   821624 12 apr 18.45 nvidia-uvm.ko
:~> 

Hope this helps.

Ok, after a long duration of experimentation and looking at the guide. I seem better off using the prime commands such as “prime-select intel” or “prime-select nvidia”. Whenever, I use these though, I get this result.

SuSeBox:~/Documents> sudo prime-select nvidia
/usr/sbin/prime-select: line 26: nvidia-xconfig: command not found
update-alternatives: using /usr/lib64/xorg/modules/extensions/nvidia/nvidia-libglx.so to provide /usr/lib64/xorg/modules/extensions/libglx.so (libglx.so) in manual mode
Running ldconfig

How do I check if I am actually running intel only or nvidia only?
Is the command even working since it says “nvidia-xconfig: command not found”?

If using prime then you need the regular NVIDIA driver

@gogalthorp
NO, you still need the drivers packaged by the Bumblebee project since with suse-prime you need to preserve the Intel GL libraries and so the Nvidia GL libraries have to be installed to an alternate position.
For instance, you need to install x11-video-nvidia from
http://download.opensuse.org/repositories/home:/Bumblebee-Project:/nVidia:/361.28/openSUSE_Leap_42.1/
or adjust to the exact version needed; it should bring in the needed dependencies.

@VanillaSoftServe
nvidia-xconfig is installed to /usr/bin/ by the standard suse-prime install process (together with nvidia-smi nvidia-settings and nvidia-bug-report.sh by the way); if you don’t find it, something went wrong with your suse-prime install.
Please note that bumblebee and suse-prime are ALTERNATIVE install, you cannot have both on the same system partition AFAIK.
For bumblebee to operate, you need to install nvidia-bumblebee.
For suse-prime you need x11-video-nvidia (and its dependencies) as already stated.
Both download the same NVIDIA-<version>.run file but the install process is not the same.
So please be sure to follow the appropriate guide for bumblebee OR suse-prime and be sure to have no leftovers from a previous install if you try both on the same system.

To see which GPU (and matching GL libraries) are actually engaged, you may try:


glxinfo |grep vendor

The “glxspheres” command should also give significantly higher numbers when the Nvidia GPU is engaged.