summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorVi0L02015-06-08 20:12:20 +0200
committerVi0L02015-06-08 20:12:20 +0200
commite35366549b4c75c38ff4fd02d455f79e639ea2ed (patch)
tree96726ad5ceab1b21253d2829e4f7182796a4a0f7
downloadaur-e35366549b4c75c38ff4fd02d455f79e639ea2ed.tar.gz
Initial import
-rw-r--r--.SRCINFO79
-rw-r--r--PKGBUILD263
-rw-r--r--arch-fglrx-authatieventsd_new.patch88
-rw-r--r--atieventsd.service9
-rw-r--r--atieventsd.sh41
-rw-r--r--catalyst-libgl.install5
-rw-r--r--catalyst-utils.install72
-rw-r--r--catalyst.conf1
-rw-r--r--catalyst.sh11
-rwxr-xr-xpxp_switch_catalyst152
-rwxr-xr-xswitchlibGL110
-rwxr-xr-xswitchlibglx90
-rw-r--r--temp-links-catalyst.service13
-rw-r--r--temp_links_catalyst38
14 files changed, 972 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..84b00f5ca86b
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,79 @@
+pkgbase = catalyst-utils
+ pkgver = 15.5
+ pkgrel = 1
+ url = http://www.amd.com
+ arch = i686
+ arch = x86_64
+ license = custom
+ options = staticlibs
+ options = libtool
+ options = !strip
+ options = !upx
+ source = http://www2.ati.com/drivers/linux/amd-catalyst-omega-15.5-linux-run-installers.zip
+ source = catalyst.sh
+ source = atieventsd.sh
+ source = atieventsd.service
+ source = catalyst.conf
+ source = arch-fglrx-authatieventsd_new.patch
+ source = switchlibGL
+ source = switchlibglx
+ source = pxp_switch_catalyst
+ source = temp_links_catalyst
+ source = temp-links-catalyst.service
+ md5sums = 979f9f2e0948fa6e92ff0125f5c6b575
+ md5sums = bdafe749e046bfddee2d1c5e90eabd83
+ md5sums = 9d9ea496eadf7e883d56723d65e96edf
+ md5sums = 90a37e010f4e5f45e270cd000894d553
+ md5sums = 3e19c2285c76f4cb92108435a1e9c302
+ md5sums = b3ceefeb97c609037845f65d0956c4f0
+ md5sums = 394bc493fdf493a5093f9e2095096d02
+ md5sums = 3226230592fa3c91ff22389114fc5dc7
+ md5sums = 9e706c272feb167be55ba7201dfa8d51
+ md5sums = 0e6d963436dd23dbb45ae0f4fc9b661c
+ md5sums = 2c22bb4d4f828cb8b024f670c1ae7e45
+
+pkgname = catalyst-utils
+ pkgdesc = AMD/ATI drivers. Utilities and libraries. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED
+ install = catalyst-utils.install
+ depends = xorg-server>=1.7.0
+ depends = xorg-server<1.17.0
+ depends = libxrandr
+ depends = libsm
+ depends = fontconfig
+ depends = libxcursor
+ depends = libxi
+ depends = gcc-libs
+ depends = libxinerama
+ optdepends = qt4: to run ATi Catalyst Control Center (amdcccle)
+ optdepends = libxxf86vm: to run ATi Catalyst Control Center (amdcccle)
+ optdepends = acpid: acpi event support / atieventsd
+ optdepends = catalyst-libgl: Catalyst drivers libraries symlinks.
+ optdepends = opencl-catalyst: OpenCL implemention for AMD Catalyst
+ optdepends = lib32-catalyst-utils: Utilities and libraries (32-bit)
+ provides = libatical=15.5
+ provides = dri
+ provides = libtxc_dxtn
+ conflicts = catalyst-test
+ conflicts = catalyst-total
+ conflicts = catalyst-total-pxp
+ conflicts = catalyst-utils-pxp
+
+pkgname = catalyst-libgl
+ pkgdesc = AMD/ATI drivers. Catalyst drivers libraries symlinks + experimental powerXpress support.
+ install = catalyst-libgl.install
+ depends = catalyst-utils
+ depends = mesa>=10.1.0-4
+ provides = libgl
+ provides = mesa-libgl
+ provides = mesa-libgl-git
+ conflicts = libgl
+ conflicts = mesa-libgl
+ conflicts = mesa-libgl-git
+
+pkgname = opencl-catalyst
+ pkgdesc = AMD/ATI drivers. OpenCL implemention for AMD Catalyst
+ depends = gcc-libs
+ optdepends = opencl-headers: headers necessary for OpenCL development
+ provides = libcl
+ conflicts = libcl
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..acc5929b5080
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,263 @@
+# Maintainer: Vi0L0 <vi0l093@gmail.com>
+# Great Contributor: Eduardo "kensai" Romero (previous maintainer)
+# Contributor: csslayer
+# Contributor: cvigano
+# Contributor: lordheavy
+# Contributor: zoqaeski (authatieventsd' patch for lightdm)
+# Contributor: zoopp
+# Contributor: solar (authatieventsd' patch s/-1/255)
+
+pkgbase=catalyst-utils
+pkgname=('catalyst-utils' 'catalyst-libgl' 'opencl-catalyst')
+
+pkgver=15.5
+pkgrel=1
+#_amdver=15.101.1001
+arch=('i686' 'x86_64')
+url="http://www.amd.com"
+license=('custom')
+options=('staticlibs' 'libtool' '!strip' '!upx')
+
+url_ref="http://support.amd.com/en-us/download/desktop?os=Linux+x86"
+DLAGENTS="http::/usr/bin/curl --referer ${url_ref} -o %o %u"
+
+source=(
+ http://www2.ati.com/drivers/linux/amd-catalyst-omega-${pkgver}-linux-run-installers.zip
+ catalyst.sh
+ atieventsd.sh
+ atieventsd.service
+ catalyst.conf
+ arch-fglrx-authatieventsd_new.patch
+ switchlibGL
+ switchlibglx
+ pxp_switch_catalyst
+ temp_links_catalyst
+ temp-links-catalyst.service)
+
+md5sums=('979f9f2e0948fa6e92ff0125f5c6b575'
+ 'bdafe749e046bfddee2d1c5e90eabd83'
+ '9d9ea496eadf7e883d56723d65e96edf'
+ '90a37e010f4e5f45e270cd000894d553'
+ '3e19c2285c76f4cb92108435a1e9c302'
+ 'b3ceefeb97c609037845f65d0956c4f0'
+ '394bc493fdf493a5093f9e2095096d02'
+ '3226230592fa3c91ff22389114fc5dc7'
+ '9e706c272feb167be55ba7201dfa8d51'
+ '0e6d963436dd23dbb45ae0f4fc9b661c'
+ '2c22bb4d4f828cb8b024f670c1ae7e45')
+
+build() {
+ /bin/sh ./amd-catalyst-omega-${pkgver}-linux-run-installers.run --extract archive_files
+}
+
+package_catalyst-libgl() {
+ pkgdesc="AMD/ATI drivers. Catalyst drivers libraries symlinks + experimental powerXpress support."
+ depends=('catalyst-utils' 'mesa>=10.1.0-4')
+ conflicts=('libgl' 'mesa-libgl' 'mesa-libgl-git')
+ provides=('libgl' 'mesa-libgl' 'mesa-libgl-git')
+ install=catalyst-libgl.install
+
+ install -m755 -d ${pkgdir}/usr/lib/xorg/modules/extensions
+ ln -snf /usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so ${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so
+
+ install -m755 -d ${pkgdir}/usr/lib/fglrx
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/fglrx/libGL.so.1.2.0
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/fglrx/libGL.so.1
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/fglrx/libGL.so
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/libGL.so.1.2.0
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/libGL.so.1
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/libGL.so
+
+
+ # We have to provide symlinks to mesa, as catalyst doesn't ship them
+ ln -s /usr/lib/mesa/libEGL.so.1.0.0 ${pkgdir}/usr/lib/libEGL.so.1.0.0
+ ln -s libEGL.so.1.0.0 ${pkgdir}/usr/lib/libEGL.so.1
+ ln -s libEGL.so.1.0.0 ${pkgdir}/usr/lib/libEGL.so
+
+ ln -s /usr/lib/mesa/libGLESv1_CM.so.1.1.0 ${pkgdir}/usr/lib/libGLESv1_CM.so.1.1.0
+ ln -s libGLESv1_CM.so.1.1.0 ${pkgdir}/usr/lib/libGLESv1_CM.so.1
+ ln -s libGLESv1_CM.so.1.1.0 ${pkgdir}/usr/lib/libGLESv1_CM.so
+
+ ln -s /usr/lib/mesa/libGLESv2.so.2.0.0 ${pkgdir}/usr/lib/libGLESv2.so.2.0.0
+ ln -s libGLESv2.so.2.0.0 ${pkgdir}/usr/lib/libGLESv2.so.2
+ ln -s libGLESv2.so.2.0.0 ${pkgdir}/usr/lib/libGLESv2.so
+
+
+ # powerXpress
+ install -m755 ${srcdir}/switchlibGL ${pkgdir}/usr/lib/fglrx
+ install -m755 ${srcdir}/switchlibglx ${pkgdir}/usr/lib/fglrx
+ # switching script: switch xorg.conf + aticonfig --px-Xgpu + switchlibGL + add/remove fglrx into MODULES
+ install -m755 -d ${pkgdir}/usr/bin
+ install -m755 ${srcdir}/pxp_switch_catalyst ${pkgdir}/usr/bin
+
+ # License
+ install -m755 -d ${pkgdir}/usr/share/licenses
+ ln -s catalyst-utils ${pkgdir}/usr/share/licenses/${pkgname}
+}
+
+package_opencl-catalyst() {
+ pkgdesc="AMD/ATI drivers. OpenCL implemention for AMD Catalyst"
+ provides=('libcl')
+ conflicts=('libcl')
+ depends=('gcc-libs')
+ optdepends=('opencl-headers: headers necessary for OpenCL development')
+
+ if [ "${CARCH}" = "i686" ]; then
+ cd ${srcdir}/archive_files/arch/x86
+ _arc=32
+ _lib=lib
+ elif [ "${CARCH}" = "x86_64" ]; then
+ cd ${srcdir}/archive_files/arch/x86_64
+ _arc=64
+ _lib=lib64
+ fi
+
+ install -m755 -d ${pkgdir}/etc/OpenCL/vendors
+ install -m644 etc/OpenCL/vendors/amdocl${_arc}.icd ${pkgdir}/etc/OpenCL/vendors
+
+ install -m755 -d ${pkgdir}/usr/lib
+ install -m755 usr/${_lib}/libamdocl*.so ${pkgdir}/usr/lib
+ install -m755 usr/${_lib}/libOpenCL.so.1 ${pkgdir}/usr/lib
+ ln -s libOpenCL.so.1 ${pkgdir}/usr/lib/libOpenCL.so
+
+ install -m755 -d ${pkgdir}/usr/bin
+ install -m755 usr/bin/clinfo ${pkgdir}/usr/bin
+
+ # License
+ install -m755 -d ${pkgdir}/usr/share/licenses
+ ln -s catalyst-utils ${pkgdir}/usr/share/licenses/${pkgname}
+}
+
+package_catalyst-utils() {
+ pkgdesc="AMD/ATI drivers. Utilities and libraries. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED"
+ depends=('xorg-server>=1.7.0' 'xorg-server<1.17.0' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs' 'libxinerama')
+ optdepends=('qt4: to run ATi Catalyst Control Center (amdcccle)'
+ 'libxxf86vm: to run ATi Catalyst Control Center (amdcccle)'
+ 'acpid: acpi event support / atieventsd'
+ 'catalyst-libgl: Catalyst drivers libraries symlinks.'
+ 'opencl-catalyst: OpenCL implemention for AMD Catalyst')
+ if [ "${CARCH}" = "x86_64" ]; then
+ optdepends+=('lib32-catalyst-utils: Utilities and libraries (32-bit)')
+ fi
+ conflicts=('catalyst-test' 'catalyst-total' 'catalyst-total-pxp' 'catalyst-utils-pxp')
+ provides=("libatical=${pkgver}" 'dri' 'libtxc_dxtn')
+ install=catalyst-utils.install
+
+ ## Install userspace tools and libraries
+ # Create directories
+ install -m755 -d ${pkgdir}/etc/ati
+ install -m755 -d ${pkgdir}/etc/rc.d
+ install -m755 -d ${pkgdir}/etc/profile.d
+ install -m755 -d ${pkgdir}/etc/acpi/events
+ install -m755 -d ${pkgdir}/etc/security/console.apps
+
+ install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
+ install -m755 -d ${pkgdir}/usr/lib/xorg/modules/drivers
+ install -m755 -d ${pkgdir}/usr/lib/xorg/modules/extensions/fglrx
+ install -m755 -d ${pkgdir}/usr/lib/xorg/modules/linux
+ install -m755 -d ${pkgdir}/usr/lib/dri
+ install -m755 -d ${pkgdir}/usr/lib/fglrx
+ install -m755 -d ${pkgdir}/usr/lib/systemd/system
+# install -m755 -d ${pkgdir}/usr/lib/hsa
+
+ install -m755 -d ${pkgdir}/usr/bin
+
+ install -m755 -d ${pkgdir}/usr/include/GL
+
+ install -m755 -d ${pkgdir}/usr/share/applications
+ install -m755 -d ${pkgdir}/usr/share/ati/amdcccle
+ install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+ install -m755 -d ${pkgdir}/usr/share/man/man8
+ install -m755 -d ${pkgdir}/usr/share/pixmaps
+
+ # X.org driver
+ if [ "${CARCH}" = "i686" ]; then
+ cd ${srcdir}/archive_files/xpic/usr/X11R6/lib/modules
+ elif [ "${CARCH}" = "x86_64" ]; then
+ cd ${srcdir}/archive_files/xpic_64a/usr/X11R6/lib64/modules
+ fi
+
+ install -m755 *.so ${pkgdir}/usr/lib/xorg/modules
+ install -m755 drivers/*.so ${pkgdir}/usr/lib/xorg/modules/drivers
+ install -m755 linux/*.so ${pkgdir}/usr/lib/xorg/modules/linux
+ install -m755 extensions/fglrx/fglrx-libglx.so ${pkgdir}/usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so
+
+ # Controlcenter / libraries
+ if [ "${CARCH}" = "i686" ]; then
+ cd ${srcdir}/archive_files/arch/x86/usr
+ _lib=lib
+ elif [ "${CARCH}" = "x86_64" ]; then
+ cd ${srcdir}/archive_files/arch/x86_64/usr
+ _lib=lib64
+ fi
+
+ install -m755 X11R6/bin/* ${pkgdir}/usr/bin
+ install -m755 sbin/* ${pkgdir}/usr/bin
+ install -m755 X11R6/${_lib}/fglrx/fglrx-libGL.so.1.2 ${pkgdir}/usr/lib/fglrx
+ install -m755 X11R6/${_lib}/libAMDXvBA.so.1.0 ${pkgdir}/usr/lib
+ ln -snf libAMDXvBA.so.1.0 ${pkgdir}/usr/lib/libAMDXvBA.so.1
+ ln -snf libAMDXvBA.so.1.0 ${pkgdir}/usr/lib/libAMDXvBA.so
+ install -m755 X11R6/${_lib}/libatiadlxx.so ${pkgdir}/usr/lib
+ install -m755 X11R6/${_lib}/libfglrx_dm.so.1.0 ${pkgdir}/usr/lib
+ install -m755 X11R6/${_lib}/libXvBAW.so.1.0 ${pkgdir}/usr/lib
+ ln -snf libXvBAW.so.1.0 ${pkgdir}/usr/lib/libXvBAW.so.1
+ ln -snf libXvBAW.so.1.0 ${pkgdir}/usr/lib/libXvBAW.so
+ ln -snf /usr/lib/libXvBAW.so.1.0 ${pkgdir}/usr/lib/dri/fglrx_drv_video.so #omega 14.12
+ install -m644 X11R6/${_lib}/*.a ${pkgdir}/usr/lib
+ install -m644 X11R6/${_lib}/*.cap ${pkgdir}/usr/lib
+ install -m755 X11R6/${_lib}/modules/dri/*.so ${pkgdir}/usr/lib/xorg/modules/dri
+ install -m755 ${_lib}/*.so* ${pkgdir}/usr/lib
+# install -m755 ${_lib}/hsa/* ${pkgdir}/usr/lib/hsa
+
+ ## QT libs (only 2 files) - un-comment 2 lines below if you don't want to install qt package
+# install -m755 -d ${pkgdir}/usr/share/ati/${_lib}
+# install -m755 share/ati/${_lib}/*.so* ${pkgdir}/usr/share/ati/${_lib}
+
+ ln -snf /usr/lib/xorg/modules/dri/fglrx_dri.so ${pkgdir}/usr/lib/dri/fglrx_dri.so
+ ln -snf libfglrx_dm.so.1.0 ${pkgdir}/usr/lib/libfglrx_dm.so.1
+ ln -snf libfglrx_dm.so.1.0 ${pkgdir}/usr/lib/libfglrx_dm.so
+ ln -snf libatiuki.so.1.0 ${pkgdir}/usr/lib/libatiuki.so.1
+ ln -snf libatiuki.so.1.0 ${pkgdir}/usr/lib/libatiuki.so
+
+ # provided in opencl-catalyst package
+ rm ${pkgdir}/usr/lib/lib{amdocl*,OpenCL}.so*
+
+ cd ${srcdir}/archive_files/common
+ patch -Np2 -i ${srcdir}/arch-fglrx-authatieventsd_new.patch
+ install -m644 etc/ati/* ${pkgdir}/etc/ati
+ chmod 755 ${pkgdir}/etc/ati/authatieventsd.sh
+
+ install -m644 etc/security/console.apps/amdcccle-su ${pkgdir}/etc/security/console.apps
+
+ install -m755 usr/X11R6/bin/* ${pkgdir}/usr/bin
+ install -m644 usr/include/GL/*.h ${pkgdir}/usr/include/GL
+ install -m755 usr/sbin/*.sh ${pkgdir}/usr/bin
+ install -m644 usr/share/ati/amdcccle/* ${pkgdir}/usr/share/ati/amdcccle
+ install -m644 usr/share/icons/*.xpm ${pkgdir}/usr/share/pixmaps
+ install -m644 usr/share/man/man8/*.8 ${pkgdir}/usr/share/man/man8
+ install -m644 usr/share/applications/*.desktop ${pkgdir}/usr/share/applications
+
+ # ACPI example files
+ install -m755 usr/share/doc/fglrx/examples/etc/acpi/*.sh ${pkgdir}/etc/acpi
+ sed -i -e "s/usr\/X11R6/usr/g" ${pkgdir}/etc/acpi/ati-powermode.sh
+ install -m644 usr/share/doc/fglrx/examples/etc/acpi/events/* ${pkgdir}/etc/acpi/events
+
+ # Add ATI Events Daemon launcher
+ install -m755 ${srcdir}/atieventsd.sh ${pkgdir}/etc/rc.d/atieventsd
+ install -m644 ${srcdir}/atieventsd.service ${pkgdir}/usr/lib/systemd/system
+
+ # thanks to cerebral, we dont need that damned symlink
+ install -m755 ${srcdir}/catalyst.sh ${pkgdir}/etc/profile.d
+
+ # License
+ install -m644 ${srcdir}/archive_files/LICENSE.TXT ${pkgdir}/usr/share/licenses/${pkgname}
+ install -m644 ${srcdir}/archive_files/common/usr/share/doc/amdcccle/ccc_copyrights.txt \
+ ${pkgdir}/usr/share/licenses/${pkgname}/amdcccle_copyrights.txt
+
+ install -m755 -d ${pkgdir}/etc/modules-load.d
+ install -m644 ${srcdir}/catalyst.conf ${pkgdir}/etc/modules-load.d
+
+ #workaround for the high io bug , thanks to lano1106 for finding this ugly bug! https://bbs.archlinux.org/viewtopic.php?pid=1279977#p1279977
+ install -m755 ${srcdir}/temp_links_catalyst ${pkgdir}/usr/bin
+ install -m644 ${srcdir}/temp-links-catalyst.service ${pkgdir}/usr/lib/systemd/system
+}
diff --git a/arch-fglrx-authatieventsd_new.patch b/arch-fglrx-authatieventsd_new.patch
new file mode 100644
index 000000000000..80467cf3ced5
--- /dev/null
+++ b/arch-fglrx-authatieventsd_new.patch
@@ -0,0 +1,88 @@
+--- 14.1/common/etc/ati/authatieventsd.sh 2014-01-30 15:36:26.000000000 +0100
++++ 14.1/common/etc/ati/authatieventsd.sh 2014-02-02 14:10:19.529653688 +0100
+@@ -32,7 +32,7 @@
+ # vary depending upon whether X was started via xdm/kdm, gdm or startx, so
+ # check each one in turn.
+
+- # Check xdm/kdm
++ # Check xdm
+
+ XDM_AUTH_MASK=/var/lib/xdm/authdir/authfiles/A$1*
+ XDM_AUTH_FILE=`ls -t $XDM_AUTH_MASK 2>/dev/null | head -n 1` # Choose the newest file
+@@ -42,12 +42,32 @@
+ return 0
+ fi
+
+- # Check gdm
++ # Check kdm
+
+- GDM_AUTH_FILE=/var/lib/gdm/$1.Xauth
++ KDM_AUTH_MASK=/var/run/xauth/A$1*
++ KDM_AUTH_FILE=`ls -t $KDM_AUTH_MASK 2>/dev/null | head -n 1` # Choose the newest file
++ if [ -n "$KDM_AUTH_FILE" ]; then
++ SERVER_AUTH_FILE=$KDM_AUTH_FILE
++ DISP_SEARCH_STRING="#ffff#"
++ return 0
++ fi
++
++ # Check gdm 3
++
++ GDM_AUTH_FILE=/var/run/gdm/auth-for-gdm-*/database
+ if [ -e $GDM_AUTH_FILE ]; then
+ SERVER_AUTH_FILE=$GDM_AUTH_FILE
+- DISP_SEARCH_STRING="$1"
++ DISP_SEARCH_STRING="unix$1"
++ return 0
++ fi
++
++ # Check lightdm
++ # Not sure if this will work
++ LIGHTDM_AUTH_FILE=/var/run/lightdm/root/$1
++ if [ -e $LIGHTDM_AUTH_FILE ]; then
++ SERVER_AUTH_FILE=$LIGHTDM_AUTH_FILE
++ # Not sure if this is correct
++ DISP_SEARCH_STRING="unix$1"
+ return 0
+ fi
+
+@@ -65,7 +85,7 @@
+
+ # Couldn't find the key
+
+- return -1
++ return 255
+ }
+
+ # Main part of script
+@@ -78,25 +98,25 @@
+ #
+
+ PATH=$PATH:/usr/bin:/usr/X11R6/bin
+-which xauth > /dev/null || exit -1
++which xauth > /dev/null || exit 255
+
+ case "$1" in
+ grant)
+- GetServerAuthFile $2 || exit -1
++ GetServerAuthFile $2 || exit 255
+ DISP_AUTH_KEY=`xauth -f $SERVER_AUTH_FILE list | grep $DISP_SEARCH_STRING | awk '{ print $3 }'`
+ if [ -n "$DISP_AUTH_KEY" ]; then
+- xauth -f $3 add $2 . $DISP_AUTH_KEY || exit -1
++ xauth -f $3 add $2 . $DISP_AUTH_KEY || exit 255
+ else
+- exit -1
++ exit 255
+ fi
+ ;;
+
+ revoke)
+- xauth -f $3 remove $2 || exit -1
++ xauth -f $3 remove $2 || exit 255
+ ;;
+
+ *)
+- exit -1
++ exit 255
+ ;;
+ esac
+ exit 0
diff --git a/atieventsd.service b/atieventsd.service
new file mode 100644
index 000000000000..3bbf25acb8f6
--- /dev/null
+++ b/atieventsd.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Catalyst event Daemon
+Requires=acpid.socket
+
+[Service]
+ExecStart=/usr/bin/atieventsd --nodaemon
+
+[Install]
+WantedBy=multi-user.target
diff --git a/atieventsd.sh b/atieventsd.sh
new file mode 100644
index 000000000000..35968d29b17a
--- /dev/null
+++ b/atieventsd.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+ATID_PID=`pidof -o %PPID /usr/bin/atieventsd`
+
+case "$1" in
+ start)
+ rc=0
+ stat_busy "Starting ATI Events Daemon"
+ [ -z "$ATID_PID" ] && /usr/bin/atieventsd
+ rc=$(($rc+$?))
+ if [ $rc -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon atieventsd
+ stat_done
+ fi
+ ;;
+ stop)
+ rc=0
+ stat_busy "Stopping ATI Events Daemon"
+ kill $ATID_PID &>/dev/null
+ rc=$(($rc+$?))
+ if [ $rc -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon atieventsd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/catalyst-libgl.install b/catalyst-libgl.install
new file mode 100644
index 000000000000..2f01bd355c80
--- /dev/null
+++ b/catalyst-libgl.install
@@ -0,0 +1,5 @@
+post_upgrade(){
+ echo -e "\e[0;32m--------------------------- PXP --------------------------------\e[0m"
+ echo -e "\e[0;32m@pxp_user:\e[0m I switched GL/glx links to catalyst again..."
+ echo -e "\e[0;32m----------------------------------------------------------------\e[0m"
+} \ No newline at end of file
diff --git a/catalyst-utils.install b/catalyst-utils.install
new file mode 100644
index 000000000000..6e09a9e5caf2
--- /dev/null
+++ b/catalyst-utils.install
@@ -0,0 +1,72 @@
+signa() {
+ #get rid of Testing use only watermark
+ echo "3249c5b75bccae3ce4f3a65e88154133:037beb866bf8830dd7c3956cb0746c02077cfc8e628f837db0ba8666b127700b07:027af2d53eae960ad291c066b0267157567ea68462f9985f86c3916abe767101027ef2d43daf9659d2c19e38b02676575079a7d663fa980a86c29469bf257151027e" > etc/ati/signature
+}
+
+bug_whisper(){
+ echo -e '\E[37;44m'"\033[1m---------------- I/O BUG ---------------------------------------\033[0m"
+ echo "There's a bug in fglrx found by lano1106 which generates"
+ echo "great amount of unneeded I/O operations"
+ echo ""
+ echo "To activate workaround enable systemd service:"
+ echo "systemctl enable temp-links-catalyst"
+ echo "systemctl start temp-links-catalyst"
+ echo ""
+ echo "More infos:"
+ echo "https://bbs.archlinux.org/viewtopic.php?pid=1279977#p1279977"
+ echo "https://bbs.archlinux.org/viewtopic.php?pid=1280193#p1280193"
+ echo -e '\E[37;44m'"\033[1m----------------------------------------------------------------\033[0m"
+}
+
+post_install() {
+ echo "----------------------------------------------------------------"
+ echo "PLEASE NOTE:"
+ echo "For these drivers to work, you must install kernel modules."
+ echo ""
+ echo "Simply use packages that provides auto re-compilation:"
+ echo "catalyst-hook or catalyst-daemon"
+ echo ""
+ echo "OR use catalyst-generator package to generate catalyst-{kernver}"
+ echo "packages"
+ echo "----------------------------------------------------------------"
+ echo "You can use the tool 'aticonfig' to generate an xorg.conf file."
+ echo "--------------------- ^^^^^^^^^ --------------------------------"
+ echo "Add nomodeset to your kernel line in /boot/grub/menu.lst , ie.:"
+ echo "kernel /boot/vmlinuz-linux root=/dev/sda1 ro nomodeset"
+ echo "----------------------------------------------------------------"
+ echo "IMPORTANT:"
+ echo "fglrx was added into /etc/modules-load.d/catalyst.conf"
+ echo "----------------------------------------------------------------"
+ echo " atieventsd (needs acpid pkg) on systemd:"
+ echo "systemctl enable atieventsd"
+ echo "systemctl start atieventsd"
+ echo "----------------------------------------------------------------"
+ echo "For more info and troubleshooting visit:"
+ echo "http://wiki.archlinux.org/index.php/ATI_Catalyst"
+ echo "----------------------------------------------------------------"
+ echo -e "\e[1;31m-------------------------- SPLIT -------------------------------\e[0m"
+ echo "catalyst-utils is now splitted into:"
+ echo "catalyst-utils"
+ echo "catalyst-libgl"
+ echo "opencl-catalyst"
+ echo ""
+ echo -e "You MOST probably want to also install \e[1;31mcatalyst-libgl\e[0m"
+ echo -e "\e[1;31m----------------------------------------------------------------\e[0m"
+# bug_whisper
+# signa
+}
+
+post_upgrade(){
+ echo -e "\e[1;31m-------------------------- SPLIT -------------------------------\e[0m"
+ echo "catalyst-utils is now splitted into:"
+ echo "catalyst-utils"
+ echo "catalyst-libgl"
+ echo "opencl-catalyst"
+ echo -e "\e[1;31m----------------------------------------------------------------\e[0m"
+# bug_whisper
+# signa
+}
+
+post_remove() {
+ echo "NOTE: Don't forget to recover your original xorg.conf file."
+} \ No newline at end of file
diff --git a/catalyst.conf b/catalyst.conf
new file mode 100644
index 000000000000..17f9ce9168c5
--- /dev/null
+++ b/catalyst.conf
@@ -0,0 +1 @@
+fglrx \ No newline at end of file
diff --git a/catalyst.sh b/catalyst.sh
new file mode 100644
index 000000000000..7aedd4f526cf
--- /dev/null
+++ b/catalyst.sh
@@ -0,0 +1,11 @@
+if [ $LIBGL_DRIVERS_PATH ]
+then
+ if ! set | grep LIBGL_DRIVERS_PATH | grep /usr/lib/xorg/modules/dri/ > /dev/null
+ then
+ LIBGL_DRIVERS_PATH=$LIBGL_DRIVERS_PATH:/usr/lib/xorg/modules/dri/
+ export LIBGL_DRIVERS_PATH
+ fi
+else
+ LIBGL_DRIVERS_PATH=/usr/lib/xorg/modules/dri/
+ export LIBGL_DRIVERS_PATH
+fi
diff --git a/pxp_switch_catalyst b/pxp_switch_catalyst
new file mode 100755
index 000000000000..0b1a0fafaebf
--- /dev/null
+++ b/pxp_switch_catalyst
@@ -0,0 +1,152 @@
+#!/bin/sh
+
+# Vi0L0: it's my switching script, version 2.1:
+# * switching xorg.conf - it will rename xorg.conf into xorg.conf.cat
+# (if there's fglrx inside) or xorg.conf.oth (if there's intel or radeon inside).
+# And then it will create link to xorg.conf depending on what did you choose
+# * running aticonfig --px-Xgpu
+# * running switchlibGL
+# * adding/removing fglrx into/from /etc/modules-load.d/catalyst.conf
+#
+# You can do with it whatever you want :P
+# NO WARRANTY OF ANY KIND
+
+# Set local language always to C
+export LC_ALL=C
+export LANG=C
+
+if [ "$(whoami)" != "root" ]; then
+ echo "Must be root to run this script." 1>&2
+ exit 1
+fi
+
+if [ $# -ge 2 ]; then
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ echo "Please choose one parameter" 1>&2
+ exit 1
+fi
+
+
+
+function check_xorg_conf() {
+
+ if [ ! -e /etc/X11/xorg.conf.cat ];then
+ if [ -e /etc/X11/xorg.conf ] && [[ `cat /etc/X11/xorg.conf | grep -c fglrx` != 0 ]]; then
+ mv /etc/X11/xorg.conf /etc/X11/xorg.conf.cat
+ echo "/etc/X11/xorg.conf renamed to /etc/X11/xorg.conf.cat"
+ fi
+ fi
+ if [ ! -e /etc/X11/xorg.conf.oth ]; then
+ if [ -e /etc/X11/xorg.conf ];then
+ if [[ `cat /etc/X11/xorg.conf | grep -c radeon` != 0 ]] || [[ `cat /etc/X11/xorg.conf | grep -c intel` != 0 ]]; then
+ mv /etc/X11/xorg.conf /etc/X11/xorg.conf.oth
+ echo "/etc/X11/xorg.conf renamed to /etc/X11/xorg.conf.oth (radeon or intel inside)"
+ fi
+ fi
+ fi
+ if [ -e /etc/X11/xorg.conf ] && [[ `cat /etc/X11/xorg.conf | grep -c fglrx` = 0 ]] && [[ `cat /etc/X11/xorg.conf | grep -c radeon` = 0 ]] && [[ `cat /etc/X11/xorg.conf | grep -c intel` = 0 ]]; then
+ mv /etc/X11/xorg.conf /etc/X11/xorg.conf.wth
+ echo "/etc/X11/xorg.conf have no fglrx or radeon or intel inside!"
+ echo "/etc/X11/xorg.conf renamed to /etc/X11/xorg.conf.wth"
+ fi
+}
+
+function switch_to_amd() {
+
+ #switching xorg.conf
+ echo -e '\E[37;44m'"\033[1mSwitching xorg.conf ...\033[0m"
+ check_xorg_conf
+ if [ -e /etc/X11/xorg.conf.cat ]; then
+ ln -snf /etc/X11/xorg.conf.cat /etc/X11/xorg.conf
+ echo "/etc/X11/xorg.conf.cat linked to /etc/X11/xorg.conf"
+ fi
+
+ #linking!
+ echo -e '\E[37;44m'"\033[1mRunning aticonfig --px-dgpu ...\033[0m"
+ aticonfig --px-dgpu
+ echo -e '\E[37;44m'"\033[1mRunning /usr/lib/fglrx/switchlibGL amd ...\033[0m"
+ /usr/lib/fglrx/switchlibGL amd
+ echo -e '\E[37;44m'"\033[1mRunning /usr/lib/fglrx/switchlibglx amd ...\033[0m"
+ /usr/lib/fglrx/switchlibglx amd
+
+ #checking MODULES for fglrx
+ echo -e '\E[37;44m'"\033[1mChecking /etc/modules-load.d/catalyst.conf for fglrx ...\033[0m"
+ check1=$(grep fglrx /etc/modules-load.d/catalyst.conf)
+ if [ "$check1" != "fglrx" ]; then
+ echo fglrx > /etc/modules-load.d/catalyst.conf
+ echo "fglrx was added into /etc/modules-load.d/catalyst.conf"
+ fi
+
+}
+
+function switch_to_intel() {
+
+ #switching xorg.conf part 1
+ echo -e '\E[37;44m'"\033[1mSwitching xorg.conf (part 1) ...\033[0m"
+ check_xorg_conf
+ if [ -e /etc/X11/xorg.conf.cat ]; then
+ ln -snf /etc/X11/xorg.conf.cat /etc/X11/xorg.conf
+ echo "/etc/X11/xorg.conf.cat linked to /etc/X11/xorg.conf"
+ fi
+
+ #linking!
+ echo -e '\E[37;44m'"\033[1mRunning aticonfig --px-igpu ...\033[0m"
+ aticonfig --px-igpu
+ echo -e '\E[37;44m'"\033[1mRunning /usr/lib/fglrx/switchlibGL intel ...\033[0m"
+ /usr/lib/fglrx/switchlibGL intel
+ echo -e '\E[37;44m'"\033[1mRunning /usr/lib/fglrx/switchlibglx intel ...\033[0m"
+ /usr/lib/fglrx/switchlibglx intel
+
+ #switching xorg.conf part 2
+ echo -e '\E[37;44m'"\033[1mSwitching xorg.conf (part 2) ...\033[0m"
+ if [ -e /etc/X11/xorg.conf.oth ]; then
+ ln -snf /etc/X11/xorg.conf.oth /etc/X11/xorg.conf
+ echo "/etc/X11/xorg.conf.oth linked to /etc/X11/xorg.conf"
+ else
+ rm /etc/X11/xorg.conf
+ echo "/etc/X11/xorg.conf was removed"
+ fi
+
+ #checking MODULES for fglrx
+ echo -e '\E[37;44m'"\033[1mChecking /etc/modules-load.d/catalyst.conf for fglrx ...\033[0m"
+ check=$(grep fglrx /etc/modules-load.d/catalyst.conf)
+ if [[ "$check" != "" ]]; then
+ sed 's/fglrx//' -i /etc/modules-load.d/catalyst.conf
+ echo "fglrx was removed from /etc/modules-load.d/catalyst.conf"
+ fi
+
+}
+
+function get_current_driver() {
+
+ LIB_LINK="`readlink /usr/lib/libGL.so 2>/dev/null`"
+ if [[ "${LIB_LINK}" = "/usr/lib/fglrx/fglrx-libGL.so.1.2" || "${LIB_LINK}" = "fglrx/fglrx-libGL.so.1.2" ]]; then
+ echo "amd (catalyst)"
+ elif [[ "${LIB_LINK}" = "/usr/lib/mesa/libGL.so.1" || "${LIB_LINK}" = "/usr/lib/mesa/libGL.so.1.2.0" || "${LIB_LINK}" = "/usr/lib/mesa/libGL.so" ]]; then
+ echo "intel (or oss radeon)"
+ else
+ echo "unknown"
+ fi
+
+}
+
+
+case "$1" in
+ amd)
+ switch_to_amd
+ echo -e '\E[37;44m'"\033[1mSwitched to Catalyst\033[0m" 1>&2
+ ;;
+ intel)
+ switch_to_intel
+ echo -e '\E[37;44m'"\033[1mSwitched to Intel (or Radeon)\033[0m" 1>&2
+ ;;
+ query)
+ get_current_driver
+ ;;
+ *)
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/switchlibGL b/switchlibGL
new file mode 100755
index 000000000000..1d72e35f4b7f
--- /dev/null
+++ b/switchlibGL
@@ -0,0 +1,110 @@
+#!/bin/sh
+#
+# Vi0L0: i modified it a bit and added lib32 switch, version 2.1
+#
+# Copyright (c) 2010-2011 Sebastian Siebert (freespacer@gmx.de)
+# All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person
+# obtaining a copy of this software and associated documentation
+# files (the "Software"), to deal in the Software without
+# restriction, including without limitation the rights to use,
+# copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following
+# conditions:
+#
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+# OTHER DEALINGS IN THE SOFTWARE.
+
+# Set local language always to C
+export LC_ALL=C
+export LANG=C
+
+if [ "$(whoami)" != "root" ]; then
+ echo "Must be root to run this script." 1>&2
+ exit 1
+fi
+
+if [ $# -ge 2 ]; then
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ echo "Please choose one parameter" 1>&2
+ exit 1
+fi
+
+
+function switch_to_amd() {
+
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 /usr/lib/libGL.so
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 /usr/lib/libGL.so.1
+ ln -snf /usr/lib/fglrx/fglrx-libGL.so.1.2 /usr/lib/libGL.so.1.2.0
+ ldconfig /usr/lib
+
+ #lib32 switch
+ if [ -e /usr/lib32/fglrx/fglrx-libGL.so.1.2 ]; then
+ ln -snf /usr/lib32/fglrx/fglrx-libGL.so.1.2 /usr/lib32/libGL.so
+ ln -snf /usr/lib32/fglrx/fglrx-libGL.so.1.2 /usr/lib32/libGL.so.1
+ ln -snf /usr/lib32/fglrx/fglrx-libGL.so.1.2 /usr/lib32/libGL.so.1.2.0
+ ldconfig /usr/lib32
+ fi
+
+}
+
+function switch_to_intel() {
+
+ ln -snf /usr/lib/mesa/libGL.so.1.2.0 /usr/lib/libGL.so
+ ln -snf /usr/lib/mesa/libGL.so.1.2.0 /usr/lib/libGL.so.1
+ ln -snf /usr/lib/mesa/libGL.so.1.2.0 /usr/lib/libGL.so.1.2.0
+ ldconfig /usr/lib
+
+ #lib32 switch
+ if [ -e /usr/lib32/mesa/libGL.so.1.2.0 ]; then
+ ln -snf /usr/lib32/mesa/libGL.so.1.2.0 /usr/lib32/libGL.so
+ ln -snf /usr/lib32/mesa/libGL.so.1.2.0 /usr/lib32/libGL.so.1
+ ln -snf /usr/lib32/mesa/libGL.so.1.2.0 /usr/lib32/libGL.so.1.2.0
+ ldconfig /usr/lib32
+ fi
+
+}
+
+function get_current_driver() {
+
+ LIB_LINK="`readlink /usr/lib/libGL.so 2>/dev/null`"
+ if [[ "${LIB_LINK}" = "/usr/lib/fglrx/fglrx-libGL.so.1.2" || "${LIB_LINK}" = "fglrx/fglrx-libGL.so.1.2" ]]; then
+ echo "amd"
+ elif [[ "${LIB_LINK}" = "/usr/lib/mesa/libGL.so.1.2.0" || "${LIB_LINK}" = "/usr/lib/mesa/libGL.so.1" || "${LIB_LINK}" = "/usr/lib/mesa/libGL.so" ]]; then
+ echo "intel"
+ else
+ echo "unknown"
+ fi
+
+}
+
+case "$1" in
+ amd)
+ echo "Switch to AMD" 1>&2
+ switch_to_amd
+ ;;
+ intel)
+ echo "Switch to Intel" 1>&2
+ switch_to_intel
+ ;;
+ query)
+ get_current_driver
+ ;;
+ *)
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/switchlibglx b/switchlibglx
new file mode 100755
index 000000000000..36b641923dd2
--- /dev/null
+++ b/switchlibglx
@@ -0,0 +1,90 @@
+#!/bin/sh
+#
+# Vi0L0: i modified it a bit, version 2.1
+#
+# Copyright (c) 2010-2011 Sebastian Siebert (freespacer@gmx.de)
+# All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person
+# obtaining a copy of this software and associated documentation
+# files (the "Software"), to deal in the Software without
+# restriction, including without limitation the rights to use,
+# copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following
+# conditions:
+#
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+# OTHER DEALINGS IN THE SOFTWARE.
+
+# Set local language always to C
+export LC_ALL=C
+export LANG=C
+
+if [ "$(whoami)" != "root" ]; then
+ echo "Must be root to run this script." 1>&2
+ exit 1
+fi
+
+if [ $# -ge 2 ]; then
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ echo "Please choose one parameter" 1>&2
+ exit 1
+fi
+
+
+function switch_to_amd() {
+
+ ln -snf /usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so \
+ /usr/lib/xorg/modules/extensions/libglx.so
+
+}
+
+function switch_to_intel() {
+
+ ln -snf /usr/lib/xorg/modules/extensions/libglx.xorg \
+ /usr/lib/xorg/modules/extensions/libglx.so
+
+}
+
+function get_current_driver() {
+
+ LIB_LINK="`readlink /usr/lib/xorg/modules/extensions/libglx.so 2>/dev/null`"
+ if [[ "${LIB_LINK}" = "/usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so" || "${LIB_LINK}" = "fglrx/fglrx-libglx.so" ]]; then
+ echo "amd"
+ elif [ "${LIB_LINK}" = "/usr/lib/xorg/modules/extensions/libglx.xorg" ]; then
+ echo "intel"
+ else
+ echo "unknown"
+ fi
+
+}
+
+case "$1" in
+ amd)
+ echo "Switch to AMD" 1>&2
+ switch_to_amd
+ ;;
+ intel)
+ echo "Switch to Intel" 1>&2
+ switch_to_intel
+ ;;
+ query)
+ get_current_driver
+ ;;
+ *)
+ echo "Usage: $(basename $0) <amd|intel|query>" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/temp-links-catalyst.service b/temp-links-catalyst.service
new file mode 100644
index 000000000000..291bd96b8f38
--- /dev/null
+++ b/temp-links-catalyst.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=temp files linker for catalyst
+
+[Service]
+SysVStartPriority=90
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/bin/temp_links_catalyst start
+ExecStop=/usr/bin/temp_links_catalyst stop
+KillMode=none
+
+[Install]
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/temp_links_catalyst b/temp_links_catalyst
new file mode 100644
index 000000000000..93e8668a6a97
--- /dev/null
+++ b/temp_links_catalyst
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# temp files should be places on the ramdisk, feel free to change their paths
+_tempamdpcsdb=/dev/shm/amdpcsdb.current
+_tempatiapfxx=/dev/shm/atiapfxx.blb.current
+
+start_links(){
+if [ ! -e /etc/ati/amdpcsdb.current ]; then
+ if [ -e /etc/ati/amdpcsdb ]; then
+ cp /etc/ati/amdpcsdb /etc/ati/amdpcsdb.current
+ else
+ cp /etc/ati/amdpcsdb.default /etc/ati/amdpcsdb.current
+ fi
+fi
+
+if [ ! -e /etc/ati/atiapfxx.blb.current ]; then
+ cp /etc/ati/atiapfxx.blb /etc/ati/atiapfxx.blb.current
+fi
+
+cp /etc/ati/amdpcsdb.current ${_tempamdpcsdb}
+cp /etc/ati/atiapfxx.blb.current ${_tempatiapfxx}
+ln -sf ${_tempamdpcsdb} /etc/ati/amdpcsdb
+ln -sf ${_tempatiapfxx} /etc/ati/atiapfxx.blb
+}
+
+stop_links(){
+cp ${_tempamdpcsdb} /etc/ati/amdpcsdb.current
+cp ${_tempatiapfxx} /etc/ati/atiapfxx.blb.current
+}
+
+case "$1" in
+ start)
+ start_links
+ ;;
+ stop)
+ stop_links
+ ;;
+esac \ No newline at end of file