rendered paste body#!/bin/bash
# This script install ATI driver for Slackware.
# alemao@sacodelixo.com.br
VER=8.36.5
SRC="/home/alemao/downloads"
DST0="/tmp/ati0"
DST1="/tmp/ati1"
KERNEL=`uname -r`
install()
{
# delete/create directories.
rm -rf $DST0 $DST1 >/dev/null 2>&1
mkdir -p $DST1/usr/{lib,bin,sbin} $DST1/lib/modules/$KERNEL/drivers/video
# descompact the driver.
cd $SRC
chmod +x $SRC/ati-driver-installer-$VER-x86.x86_64.run
echo "--> unpacking driver"
./ati-driver-installer-$VER-x86.x86_64.run --extract $DST0 >/dev/null 2>&1 || return 1
# copy only the useful stuff.
echo "--> copying files"
cd $DST1
# arch.
cp -r $DST0/arch/x86/lib .
cp -r $DST0/arch/x86/usr/sbin usr/
cp -r $DST0/arch/x86/usr/X11R6/* usr/
# common.
cp -r $DST0/common/{etc,lib} .
cp -r $DST0/common/usr/include usr/
cp -r $DST0/common/usr/X11R6/* usr/
# x710.
cp -r $DST0/x710/usr/X11R6/lib usr/
# build kernel module.
cd $DST1/lib/modules/fglrx/build_mod
cp 2.6.x/Makefile .
echo "--> building module"
make >/dev/null 2>&1 || return 1
# copy kernel module to right place and delete build dir.
echo "--> copying kernel module"
cp fglrx.ko ../../$KERNEL/drivers/video
cd $DST1
rm -rf lib/modules/fglrx
# backup your old libGL.
if [ ! -f /usr/lib/libGL.so.1.2.old ]; then
cp /usr/lib/libGL.so.1.2 /usr/lib/libGL.so.1.2.old
fi
# now install the files.
cp -a * / >/dev/null 2>&1
depmod -a
echo "--> completed"
# clean up everything.
cd /tmp
rm -rf $DST0 $DST1
}
uninstall()
{
rm -rf /etc/ati/ /lib/modules/$KERNEL/drivers/video /usr/lib/libfglrx*
rm -f /usr/lib/modules/linux/libfglrxdrm.so /usr/lib/modules/drivers/fglrx_drv.so \
/usr/lib/modules/dri/fglrx_dri.so /usr/lib/modules/glesx.so /usr/lib/modules/esut.a \
/usr/include/X11/extensions/fglrx_gamma.h usr/include/GL/*ATI.h /usr/bin/fgl* \
/usr/bin/aticonfig /usr/bin/amdcccle /usr/sbin/atieventsd
mv /usr/lib/libGL.so.1.2.old /usr/lib/libGL.so.1.2
echo "--> remove complete"
}
# check what to do.
if [ "$1" == "" ]; then
echo "Usage: ati-driver [install | uninstall]"
elif [ "$1" == "uninstall" ]; then
uninstall
elif [ "$1" == "install" ]; then
install
fi