#!/bin/sh

usage() {
    echo "Don't execute this script if you not sure what to do." >&2
}

LN="/bin/ln -sf"
RM="/bin/rm -f"

LIBDIR=/usr/lib
X_LIBDIR=/usr/X11R6/lib
NV_LIBDIR=="$X_LIBDIR/nvidia_glx"

[ -z "$1" ] && (usage; exit 0)
NV_VER="$1"

if ! [ -d /usr/X11R6/lib/nvidia_$NV_VER ]
then
    NV_VER="dummy"
else
    NV_LIBDIR="$X_LIBDIR/nvidia_$NV_VER"
fi

if ! [ "$NV_VER" == "dummy" ]
then
    $RM $X_LIBDIR/modules/drivers/nvidia_drv.o
    $LN $NV_LIBDIR/modules/drivers/nvidia_drv.o $X_LIBDIR/modules/drivers/nvidia_drv.o
    #
    $RM $X_LIBDIR/modules/extensions/libglx.so
    $LN $NV_LIBDIR/modules/extensions/libglx.so.nvidia $X_LIBDIR/modules/extensions/libglx.so
    #
    $RM $X_LIBDIR/libGL.so.nvidia
    $LN $NV_LIBDIR/libGL.so.nvidia $X_LIBDIR/libGL.so.nvidia
    #
    $RM $LIBDIR/libGLcore.so.1 $X_LIBDIR/libGLcore.so.1
    $LN $NV_LIBDIR/libGLcore.so.nvidia $LIBDIR/libGLcore.so.1
    $LN $NV_LIBDIR/libGLcore.so.nvidia $X_LIBDIR/libGLcore.so.1
    #
    $RM $X_LIBDIR/libXvMCNVIDIA_dynamic.so.1
    $LN $NV_LIBDIR/libXvMCNVIDIA_dynamic.so.1 $X_LIBDIR/libXvMCNVIDIA_dynamic.so.1
fi
