Getting rid of nouveau for nvidia, having problems getting my TV to run

Hello everyone,

I just switched from another distribution to openSUSE and it’s getting late and I still haven’t figured out two important things.

1.) I would like to use the nvidia drivers, not the nouveau ones. I have an Nvidia optimus graphicscard, GTX870m. I already installed the nvidia drivers, but I can’t seem to switch from nouveau to nvidia, just can’t find the settings for this.

2.) I have my laptop hooked up to a TV and I can’t get the picture to the TV. On my laptop, the keycombination is Fn+F2, but that doesn’t seem to work. In the display settings, the TV isn’t even listed. No idea where to start.

Would really appreciate some help, since google didn’t really help me.

So thanks in advance!

Love,
Kocha

You failed to say which version of opensuse you are using.

If it is Tumbleweed, then best is to download the driver from Nvidia, and attempt to install it. Expect to reinstall on every kernel update.

If it is 13.2 or 13.1, then use Yast Software Repositories.

Click on “Add” and select “Community Repositories”.

From the list, select the Nvidia repo (full name appears to be “nVidia Graphics Drivers”).

After adding that repo, search for “nvidia” in Yast Software Management, and add the software appropriate for your card.

For my older card, it is the G02 drivers. You probably need the G03 or G04. Maybe someone familiar with your card will tell you which.

This is usually described as “the repo way” for adding nvidia drivers. It works well. You won’t have to do it again until you install another opensuse release.

After installing the drivers, reboot. After that, you should be using them automatically.

I’m using openSUSE 13.2. Downloaded today and updated everything. I already downloaded the correct Nvidia driver, but nouveau was pre-installed and it’s still used as the driver. I don’t know where to change this from nouveau to nvidia. Oh, I also have bumblebee installed, I have an optimus. GTX 870m.

Oh, I also have bumblebee installed, I have an optimus. GTX 870m.

Then the normal Nvidia-Driver will not work, only bumblebee. So delete the normal Nvidia-Driver and install bumblebee once again.

https://forums.opensuse.org/showthread.php/505270-ultimate-tutorial-installing-Bumblebee-driver-for-SUSE

Try the tutorial above, but if you change /etc/modprobe.d/50-bbswitch.conf as mentioned in issue 1) then run mkinitrd before rebooting.

Worked like a charm, thank you :smiley:

Ok, I still can’t figure out how to get my TV to work. One time, the TV suddenly showed a picture and I had it shown up in the systemsettings for the monitor. It worked as an extension of my laptop screen there. Couldn’t crank it up to the 4k resolution though. And since then, the TV didn’t work a single time. Doesn’t show up in the systemsettings neither. I even installed kscreen.

I use only the laptop screen, but I muse, that your problem might be defined by how your external display sockets (HDMI, VGA)
are wired to your graphics cards, Intel and Nvidia.

While the laptop screen is usually directly connected with your integrated Intel graphics card,
the results of the Nvidia graphics card are furthered to the Intel graphics and reach the laptop screen only through the integrated Intel graphics.
Therefore the two xorg-servers, the :1 and :8.

But I read, that, depending on your laptop model,
often the external display ports are directly connected to the Nvidia card.

So what your Nvidia card produces should show on your TV screen, but not the result of the Intel graphics, the KDE desktop, for example.

There are threads about running the whole KDE desktop on the Nvidia card though, but this would require a permanently powered Nvidia card with the according thermal load.

I tested this in 13.1 and wrote a HowTo on it, https://forums.opensuse.org/showthread.php/497341-Howto-use-Nvidia-native-on-an-external-display-on-an-Optimus-system
The thermal issue wasn’t as bad as I had expected, probably because the Nvidia driver could control it better running the system this way.

I’ve read your tutorial, the problem is, I don’t have an xorg.conf file. Only xorg.conf.install. Should I just generate one?

After installing the Nvidia driver jas root ust run

nvidia-xconfig

Now I’ve read about 500 tutorials and forum posts and I just can’t get this to run.

Here’s my bumblebee.conf:

# Configuration file for Bumblebee. Values should **not** be put between quotes

## Server options. Any change made in this section will need a server restart
# to take effect.
[bumblebeed]
# The secondary Xorg server DISPLAY number
VirtualDisplay=:8
# Should the unused Xorg server be kept running? Set this to true if waiting
# for X to be ready is too long and don't need power management at all.
KeepUnusedXServer=true
# The name of the Bumbleblee server group name (GID name)
ServerGroup=bumblebee
# Card power state at exit. Set to false if the card shoud be ON when Bumblebee
# server exits.
TurnCardOffAtExit=false
# The default behavior of '-f' option on optirun. If set to "true", '-f' will
# be ignored.
NoEcoModeOverride=false
# The Driver used by Bumblebee server. If this value is not set (or empty),
# auto-detection is performed. The available drivers are nvidia and nouveau
# (See also the driver-specific sections below)
Driver=nvidia
# Directory with a dummy config file to pass as a -configdir to secondary X
XorgConfDir=/etc/bumblebee/xorg.conf.d


## Client options. Will take effect on the next optirun executed.
[optirun]
# Acceleration/ rendering bridge, possible values are auto, virtualgl and
# primus.
Bridge=auto
# The method used for VirtualGL to transport frames between X servers.
# Possible values are proxy, jpeg, rgb, xv and yuv.
VGLTransport=proxy
# List of paths which are searched for the primus libGL.so.1 when using
# the primus bridge
PrimusLibraryPath=/usr/lib64/primus:/usr/lib/primus
# Should the program run under optirun even if Bumblebee server or nvidia card
# is not available?
AllowFallbackToIGC=false




# Driver-specific settings are grouped under [driver-NAME]. The sections are
# parsed if the Driver setting in [bumblebeed] is set to NAME (or if auto-
# detection resolves to NAME).
# PMMethod: method to use for saving power by disabling the nvidia card, valid
# values are: auto - automatically detect which PM method to use
#         bbswitch - new in BB 3, recommended if available
#       switcheroo - vga_switcheroo method, use at your own risk
#             none - disable PM completely
# https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods


## Section with nvidia driver specific options, only parsed if Driver=nvidia
[driver-nvidia]
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia
PMMethod=auto
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib64/nvidia:/usr/lib/nvidia
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib64/nvidia/xorg/,/usr/lib64/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia


## Section with nouveau driver specific options, only parsed if Driver=nouveau
[driver-nouveau]
KernelDriver=nouveau
PMMethod=auto
XorgConfFile=/etc/bumblebee/xorg.conf.nouveau



Here’s my xorg.conf.nvidia:

Section "ServerLayout"    Identifier  "Layout0"
    Option      "AutoAddDevices" "false"
    Option      "AutoAddGPU" "false"
EndSection


Section "Device"
    Identifier  "DiscreteNvidia"
    Driver      "nvidia"
    VendorName  "NVIDIA Corporation"


#   If the X server does not automatically detect your VGA device,
#   you can manually set it here.
#   To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
#   as you see in the commented example.
#   This Setting may be needed in some platforms with more than one
#   nvidia card, which may confuse the proprietary driver (e.g.,
#   trying to take ownership of the wrong device). Also needed on Ubuntu 13.04.
#   BusID "PCI:01:00:0"


#   Setting ProbeAllGpus to false prevents the new proprietary driver
#   instance spawned to try to control the integrated graphics card,
#   which is already being managed outside bumblebee.
#   This option doesn't hurt and it is required on platforms running
#   more than one nvidia graphics card with the proprietary driver.
#   (E.g. Macbook Pro pre-2010 with nVidia 9400M + 9600M GT).
#   If this option is not set, the new Xorg may blacken the screen and
#   render it unusable (unless you have some way to run killall Xorg).
    Option "ProbeAllGpus" "false"
    Option "ConnectedMonitor" "CRT"
    Option "NoLogo" "true"
    Option "UseEDID" "false"
    Option "UseDisplayDevice" "none"
EndSection


Section "Screen"
    Identifier "Screen1"
    Device "Device1"
EndSection


Section "Files"
    ModulePath "/usr/lib64/nvidia/xorg/modules/updates,/usr/lib64/xorg/modules/updates,/usr/lib64/xorg/modules"
EndSection

I just added a few things that I read in certain forum posts/tutorials. Keep in mind, I have no idea what I’m doing or did here. I can’t find any specific informations to what the points actually means. Just from reading the files, I would assume that I should put “AutoAddDevices” to “true” in the xorg.conf.nvidia, but this isn’t mentioned in any forum post/tutorial I have read. Why is this such a huge pain in the ass? I would have thought, this would be a triviality.

This produces following error:

WARNING: Unable to locate/open X configuration file.

Package xorg-server was not found in the pkg-config search path.
Perhaps you should add the directory containing `xorg-server.pc'
to the PKG_CONFIG_PATH environment variable
No package 'xorg-server' found
New X configuration file written to '/etc/X11/xorg.conf'

EDIT: Error on my side. Didn’t work with sudo, but when I used su and then tried it again, it worked just fine.

Ok, this resulted in the X server not even starting. Had to go to another terminal and rm the xorg.conf file.

Did you edit the file as suggested? And btw did you try this with bumblebee installed, that won’t work, this is an alternative to bumblebee.

Oooooh yeah I tried it with bumblebee installed. So I should have deinstalled it and went only with the nvidia drivers?

Yes, and the nvidia drivers must be the normal ones, not the bumblebee-versions.

And there’s no possibility to get this to run with bumblebee?

I’ve never had any luck with that. And you’ll also get much better performance without bumblebee.

Ok, then I’ll try this out later on and will report back with results.