All pastes #450473 Raw Edit

Something

public text v1 · immutable
·published 2007-04-20 21:33 UTC
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