#!/bin/bash DIR="/usr/lib/orca-slicer" export LD_LIBRARY_PATH="$DIR/bin:$LD_LIBRARY_PATH" # OrcaSlicer will segfault on systems where locale info is not as expected export LC_ALL=C #Use Zink to run OpenGL on top of Vulkan bypassing the problematic NVIDIA OpenGL stack while retaining hardware acceleration. if [ "$XDG_SESSION_TYPE" = "wayland" ] && [ "$ZINK_DISABLE_OVERRIDE" != "1" ]; then if command -v glxinfo >/dev/null 2>&1; then RENDERER=$(glxinfo | grep "OpenGL renderer string:" | sed 's/.*: //') if echo "$RENDERER" | grep -qi "NVIDIA"; then if command -v nvidia-smi >/dev/null 2>&1; then DRIVER_VERSION=$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1) DRIVER_MAJOR=$(echo "$DRIVER_VERSION" | cut -d. -f1) [ "$DRIVER_MAJOR" -gt 555 ] && ZINK_FORCE_OVERRIDE=1 fi if [ "$ZINK_FORCE_OVERRIDE" = "1" ]; then export __GLX_VENDOR_LIBRARY_NAME=mesa export __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json export MESA_LOADER_DRIVER_OVERRIDE=zink export GALLIUM_DRIVER=zink export WEBKIT_DISABLE_DMABUF_RENDERER=1 fi fi fi fi exec "$DIR/orca-slicer" "$@"