diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 55aa2a20..e2dc623f 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -132,25 +132,21 @@ else echo "Use OpenGL mod." fi ######################################################################## -export gpu_card="" -if [ -x "`which optimus-manager 2>/dev/null`" ]; then - export gpu_card=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'` -fi export optirun_on= +export check_optimus_manager= export PW_NVIDIA="$(lspci | grep NVIDIA)" -if [[ "$gpu_card" == "nvidia" ]] || [[ ! -z "${PW_NVIDIA}" ]] && [[ "$gpu_card" != "intel" ]]; then - if [ -x "`which primusrun 2>/dev/null`" ]; then - if [[ "$gpu_card" == "" ]]; then - export optirun_on="primusrun" - else - export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json - fi +if [ -x "`which optimus-manager 2>/dev/null`" ]; then + export check_optimus_manager=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'` +fi +if [ ! -z "${PW_NVIDIA}" ] && [ "${check_optimus_manager}" != "intel" ]; then + if [ "${check_optimus_manager}" = "nvidia" ]; then + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json + elif [ -x "`which primusrun 2>/dev/null`" ]; then + export optirun_on="primusrun" + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json elif [ -x "`which optirun 2>/dev/null`" ]; then - if [[ "$gpu_card" == "" ]]; then - export optirun_on="optirun -b primus" - else - export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json - fi + export optirun_on="optirun -b primus" + export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json fi export __NV_PRIME_RENDER_OFFLOAD=1 export __GLX_VENDOR_LIBRARY_NAME=nvidia