updated on Tue Jan 10 04:01:21 UTC 2012
[aur-mirror.git] / dkms-nvidia-beta / PKGBUILD
bloba1d993ceb34cb3ffd9e5ce7fe6553dc61cfa0d9f
1 # Maintainer: Gustavo Alvarez <sl1pkn07@gmail.com>
3 pkgname=dkms-nvidia-beta
4 _modname=nvidia
5 pkgver=295.09
6 pkgrel=2
7 pkgdesc="NVIDIA Dynamic Kernel Module (DKMS) drivers, utilities and libraries. BETA DRIVERS"
8 arch=('i686' 'x86_64')
9 url="http://www.nvidia.com/"
10 license=('custom:NVIDIA')
11 depends=('libxvmc' 'gcc-libs' 'xorg-server' 'dkms' 'gtk2')
12 conflicts=('nvidia' 'nvidia-utils'
13            'nvidia-beta' 'nvidia-275xx' 'nvidia-173xx' 'nvidia-96xx' 'nvidia-71xx'
14            'dkms-nvidia' 'dkms-nvidia-275xx' 'dkms-nvidia-173xx' 'dkms-nvidia-96xx' 'dkms-nvidia-71xx' 
15            'opencl-nvidia' 'libgl' 'libcl')
16 provides=("nvidia="${pkgver}"" "nvidia-utils="${pkgver}"" 'libgl' 'libcl' 'opencl-nvidia')
17 install="${pkgname}".install
18 optdepends=('lib32-nvidia-utils-beta: Nvidia 32bit libs')
19 backup=('etc/X11/xorg.conf.d/20-nvidia.conf')
20 options=('!strip')
21 source=(dkms.conf
22         "${pkgname}".install
23         20-nvidia.conf)
24 md5sums=('ad2270210a4d281339d7fa6e2da5ad37'
25          'e3e937e1b8e8a9b39698e26fb4bf4b00'
26          '646e64d99c44eb24b02b28defe182317')
28 if [ "$CARCH" = "i686" ]; then
29     _pkg="NVIDIA-Linux-x86-"${pkgver}""
30     source+=(ftp://download.nvidia.com/XFree86/Linux-x86/"${pkgver}"/"${_pkg}".run)
31     md5sums+=('cd0a20afd4d891adb884b9ad054fa2b6')
32 elif [ "$CARCH" = "x86_64" ]; then
33     _pkg="NVIDIA-Linux-x86_64-"${pkgver}"-no-compat32"
34     source+=(ftp://download.nvidia.com/XFree86/Linux-x86_64/"${pkgver}"/"${_pkg}".run)
35     md5sums+=('d3746ccbfdffed6dc984703c5163a0e9')
38 build() {
39     cd "${srcdir}"
40     if [ -d "${_pkg}" ]; then
41        rm -rf "${_pkg}"
42     fi
43     sh "${_pkg}".run --extract-only
46 package() {
47     cd "${srcdir}"/"${_pkg}"
49 # Create install dirs
50     install -d "${pkgdir}"/usr/{bin,lib/{vdpau,xorg/modules/{extensions,drivers}},share/{applications,pixmaps,man/man1,licenses/nvidia,doc/nvidia/html},src/${_modname}-${pkgver}}
51     install -d "${pkgdir}"/etc/{OpenCL/vendors,modprobe.d,X11/xorg.conf.d}
53 # Copy header in DKMS makepath
54     install -Dm755 kernel/* "${pkgdir}"/usr/src/"${_modname}"-"${pkgver}"/
55     install -Dm644 "${srcdir}"/dkms.conf "${pkgdir}"/usr/src/"${_modname}"-"${pkgver}"/
57 # Add Noveau Blacklist
58     echo "blacklist nouveau" >> "${pkgdir}"/etc/modprobe.d/nouveau_blacklist.conf
60 # Install OpenCL configuration
61     install -Dm644 nvidia.icd "${pkgdir}"/etc/OpenCL/vendors/
63 # Install libraries
64     install -Dm755 {libGL,libnvidia-{cfg,compiler,glcore,ml},libcuda,tls/libnvidia-tls,libnvcuvid,libXvMCNVIDIA}.so.${pkgver} "${pkgdir}"/usr/lib/
65     install -Dm755 libvdpau_nvidia.so."${pkgver}" "${pkgdir}"/usr/lib/vdpau/
66     install -Dm755 libOpenCL.so.1.0.0 "${pkgdir}"/usr/lib/
67     install -Dm644 libXvMCNVIDIA.a "${pkgdir}"/usr/lib/
68     install -Dm755 nvidia_drv.so "${pkgdir}"/usr/lib/xorg/modules/drivers/
69     install -Dm755 libglx.so."${pkgver}" "${pkgdir}"/usr/lib/xorg/modules/extensions/
70     ln -s libglx.so."${pkgver}" "${pkgdir}"/usr/lib/xorg/modules/extensions/libglx.so
72 # Install manpages
73     install -Dm644 nvidia-{settings,xconfig,smi}.1.gz "${pkgdir}"/usr/share/man/man1/
75 # Install license
76     install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/nvidia/
77     ln -s nvidia "${pkgdir}"/usr/share/licenses/nvidia-utils
79 # Install readme
80     install -Dm644 README.txt "${pkgdir}"/usr/share/doc/nvidia/README
81     install -Dm644 NVIDIA_Changelog "${pkgdir}"/usr/share/doc/nvidia/
82     install -Dm644 html/* "${pkgdir}"/usr/share/doc/nvidia/html/
84 # Install .desktop file
85     install -Dm644 nvidia-settings.desktop "${pkgdir}"/usr/share/applications/
87 # Fix nvidia .desktop file
88     sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i "${pkgdir}"/usr/share/applications/nvidia-settings.desktop
90 # Install pixmaps
91     install -Dm644 nvidia-settings.png "${pkgdir}"/usr/share/pixmaps/
93 # Install binaries
94     install -Dm755 nvidia-{settings,xconfig,smi,bug-report.sh} "${pkgdir}"/usr/bin/
96 # Create soname links
97     while read -d '' _lib; do
98         _soname="$(dirname "${_lib}")/$(readelf -d "${_lib}" | sed -nr 's/.*Library soname: \[(.*)\].*/\1/p')"
99         [[ -e "${_soname}" ]] || ln -s "$(basename "${_lib}")" "${_soname}"
100         [[ -e "${_soname/.[0-9]*/}" ]] || ln -s "$(basename "${_soname}")" "${_soname/.[0-9]*/}"
101     done < <(find "${pkgdir}" -type f -name '*.so*' -print0)
103 # Install nvidia file for xorg autodection
104     install -Dm644 "${srcdir}"/20-nvidia.conf "${pkgdir}"/etc/X11/xorg.conf.d/