diff options
Diffstat (limited to 'extra/nvidia/PKGBUILD')
-rw-r--r-- | extra/nvidia/PKGBUILD | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/extra/nvidia/PKGBUILD b/extra/nvidia/PKGBUILD new file mode 100644 index 000000000..574df67df --- /dev/null +++ b/extra/nvidia/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 171241 2012-11-16 21:41:41Z ibiru $ +# Maintainer : Thomas Baechler <thomas@archlinux.org> + +pkgname=nvidia +pkgver=310.19 +_extramodules=extramodules-3.6-ARCH +pkgrel=2 +pkgdesc="NVIDIA drivers for linux." +arch=('i686' 'x86_64') +url="http://www.nvidia.com/" +depends=('linux>=3.6' 'linux<3.7' "nvidia-utils=${pkgver}") +makedepends=('linux-headers>=3.6' 'linux-headers<3.7') +conflicts=('nvidia-96xx' 'nvidia-173xx') +license=('custom') +install=nvidia.install +options=(!strip) + +if [ "$CARCH" = "i686" ]; then + _arch='x86' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}" + source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums=('2adbdd38540b3a8955714760e05f575d') +elif [ "$CARCH" = "x86_64" ]; then + _arch='x86_64' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32" + source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums=('0ba08d32852e442ebba5ba22c7abed36') +fi + +build() { + _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" + cd "${srcdir}" + sh "${_pkg}.run" --extract-only + cd "${_pkg}/kernel" + make SYSSRC=/usr/lib/modules/"${_kernver}/build" module +} + +package() { + install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia.ko" \ + "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" + install -d -m755 "${pkgdir}/usr/lib/modprobe.d" + echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia.conf" + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install" + gzip "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" +} |