Hi guys,
I’m currently using an Nvidia gtx770m and the G04 driver from Nvidia official repo, with version 352.21. OS version OpenSUSE 13.2.
When I tried to install nvidia-bumblebee-32bit from the x11:bumlebee repo, it promts me a conflict:
x11-video-nvidiaG04 conflicts with x11-video-nvidiaG02 provided by nvidia-bumblebee-32bit
Does this mean I have to switch to the G02 driver to use bumblebee? Any idea?
What I have done is deinstalling x11-video-nvidiaG04( not other nvidia packages), and installed the nvidia-bumblee-32bit package.
Weirdly the graphics works fine, bumblebee also works,
$primusrun glxspheres
gives rendered perfectly.
This leads to my other question, what does x11-video-nvidiaG0x do exactly?
When I tried to run steam, primusrun fails:
$primusrun steam
/home/lynxiayel/.local/share/Steam/steam.sh: line 145: DISTRIB_ID: unbound variable
/home/lynxiayel/.local/share/Steam/steam.sh: line 159: DISTRIB_RELEASE: unbound variable
/home/lynxiayel/.local/share/Steam/steam.sh: line 145: DISTRIB_ID: unbound variable
/home/lynxiayel/.local/share/Steam/steam.sh: line 159: DISTRIB_RELEASE: unbound variable
Running Steam on 64-bit
/home/lynxiayel/.local/share/Steam/steam.sh: line 145: DISTRIB_ID: unbound variable
/home/lynxiayel/.local/share/Steam/steam.sh: line 159: DISTRIB_RELEASE: unbound variable
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(1439401440)
primus: fatal: failed to load any of the libraries: /usr/$LIB/nvidia/libGL.so.1
libnvidia-tls.so.352.21: cannot open shared object file: No such file or directory
[2015-08-15 00:10:26] Startup - updater built Aug 12 2015 10:04:47
Any idea why it fails with steam but works well with glxspheres?
some complementary info:
$locate libnvidia-tls.so.352.21
/usr/lib64/libnvidia-tls.so.352.21
/usr/src/NVIDIA-Linux-x86_64-352.21/libnvidia-tls.so.352.21
/usr/src/NVIDIA-Linux-x86_64-352.21/32/libnvidia-tls.so.352.21
/usr/src/NVIDIA-Linux-x86_64-352.21/32/tls/libnvidia-tls.so.352.21
/usr/src/NVIDIA-Linux-x86_64-352.21/tls/libnvidia-tls.so.352.21
$cat /usr/bin/primusrun
#!/bin/bash
# Readback-display synchronization method
# 0: no sync, 1: D lags behind one frame, 2: fully synced
# export PRIMUS_SYNC=${PRIMUS_SYNC:-0}
# Verbosity level
# 0: only errors, 1: warnings (default), 2: profiling
# export PRIMUS_VERBOSE=${PRIMUS_VERBOSE:-1}
# Secondary display
# export PRIMUS_DISPLAY=${PRIMUS_DISPLAY:-:8}
# "Accelerating" libGL
# $LIB will be interpreted by the dynamic linker
export PRIMUS_libGLa=${PRIMUS_libGLa:-'/usr/$LIB/nvidia/libGL.so.1'}
# "Displaying" libGL
export PRIMUS_libGLd=${PRIMUS_libGLd:-'/usr/$LIB/libGL.so.1'}
# Directory containing primus libGL
PRIMUS_libGL=/usr/lib64/primus:/usr/lib/primus:/usr/lib64/nvidia:/usr/lib/nvidia${PRIMUS_libGL:-$(dirname `readlink -ne $0`)/'$LIB'}
# On some distributions, e.g. on Gentoo, libnvidia-tls.so is not available
# in default search paths. Add its path manually after the primus library
PRIMUS_libGL=/usr/$LIB/primus:/usr/lib64/nvidia:/usr/lib/nvidia${PRIMUS_libGL}:/usr/\$LIB/opengl/nvidia/lib
# Mesa drivers need a few symbols to be visible
# export PRIMUS_LOAD_GLOBAL=${PRIMUS_LOAD_GLOBAL:-'libglapi.so.0'}
# Need functions from primus libGL to take precedence
export LD_LIBRARY_PATH=${PRIMUS_libGL}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
# And go!
exec "$@"