Ubuntu – Ubuntu 14.04 can’t get nvidia-prime working

14.04nvidia-optimusnvidia-prime

Yesterday I upgraded to 14.04 from 13.10 and wanted to try nvidia-prime. However, I am unable to get it working. The message I am getting when I run 'nvidia-settings' at the command line is as follows:

ERROR: Error querying target relations

** Message: PRIME: No offloading required. Abort
** Message: PRIME: is it supported? no

ERROR: nvidia-settings could not find the registry key file. This file should
   have been installed along with this driver at either
   /usr/share/nvidia/nvidia-application-profiles-331.38-key-documentation
   or /usr/share/nvidia/nvidia-application-profiles-key-documentation. The
   application profiles will continue to work, but values cannot be
   preopulated or validated, and will not be listed in the help text.
   Please see the README for possible values and descriptions.

I tried installing and uninstalling many times following different suggestions that I could find, but apparently I am doing something wrongly as the guy here gets it to work on exactly the same laptop as mine (on 13.10)

Thank you very much

Best Answer

Here is a variant of the above, and a solution - for THIS case, possibly helping in the other cases too.


SIDENOTE 1: if you do not run nvidia-settings with gksudo ... THE FIRST TIME (and do not have "$HOME/.config/ibus/" at that time) you will end up seeing:

IBUS-WARNING **: The owner of /home/$USER/.config/ibus/bus is not root!  
Then refer back to http://ubuntuforums.org/showthread.php?t=2140352 - then delete the .../ibus/ directory (note NOT .config/) and continue here...

SIDENOTE 2: you may also see:

** (nvidia-settings:8563): WARNING **: PRIME: Failed to execute child process "/usr/bin/prime-supported" (No such file or directory)
** Message: PRIME: is it supported? no
The remedy is to do
sudo apt-get install nvidia-prime
... which was BROKEN for some time, but seems to be back "online" again.

SIDENOTE 3: Unless you have e.g. DUMMY like this:

$ tail -n 3 /etc/group
nvidia-persistenced:x:128:

DUMMY:x:65535:

(hrm, that is three lines, even if doesn't look like it) ... then you will NOT have color-profiles loaded for your EXTRA displays - in a multi-display setup - on startup. The problem is the LAST LINE in /etc/group - that group will not "work".

The following has a direct relation to not being able to save changed settings:

$ gksudo nvidia-settings 

ERROR: nvidia-settings could not find the registry key file. This file should have been installed along with this driver at either /usr/share/nvidia/nvidia-application-profiles-337.25-key-documentation or
       /usr/share/nvidia/nvidia-application-profiles-key-documentation. The application profiles will continue to work, but values cannot be preopulated or validated, and will not be listed in the help text. Please see the README for possible
       values and descriptions.

... is that familiar? Then do

sudo bash
...
mkdir -p /etc/nvidia
cd /etc/nvidia
ln -s /etc/alternatives/x86_64-linux-gnu_nvidia_app_profile_keys  nvidia-application-profiles-340.24-key-documentation 
ln -s /etc/alternatives/x86_64-linux-gnu_nvidia_app_profile  nvidia-application-profiles-340.24-rc

Then check that you can see something similar to:

$ ls -l
total 0
lrwxrwxrwx 1 root 58 jul 12 14:23 nvidia-application-profiles-340.24-key-documentation -> /etc/alternatives/x86_64-linux-gnu_nvidia_app_profile_keys
lrwxrwxrwx 1 root 53 jul 12 14:23 nvidia-application-profiles-340.24-rc -> /etc/alternatives/x86_64-linux-gnu_nvidia_app_profile

Note that "-340.24..." and maybe other parts may differ for you (depending on version of the driver), what is shown is after installing the very latest from the xorg-edgers ppa at this writing.