# Maintainer : Luca Bennati <lucak3 AT gmail DOT com>
pkgname=nvidia-pf
pkgver=310.19
pkgrel=1
_goodkver=3.6
_badkver=3.7
_kernver=${_goodkver}-pf
_extramodules=extramodules-${_kernver}
_SYSSRC="/usr/lib/modules/${_kernver}/build"
_pf_kernel=$(pacman -Qqo /boot/vmlinuz-linux-pf)
#_pf_headers=$(pacman -Qqo ${_SYSSRC})
_cpu=$(sed -e "s/linux-pf//" <<<${_pf_kernel})
pkgdesc="NVIDIA drivers for linux-pf."
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
makedepends=("linux-pf-headers>=${_goodkver}" "linux-pf-headers<${_badkver}")
depends=("linux-pf>=${_goodkver}" "linux-pf<${_badkver}" "nvidia-utils=${pkgver}")
if [[ ${_cpu} ]]; then
true && pkgdesc="NVIDIA drivers for linux-pf${_cpu}."
true && makedepends=("linux-pf-headers${_cpu}>=${_goodkver}" "linux-pf-headers${_cpu}<${_badkver}")
true && depends=("linux-pf${_cpu}>=${_goodkver}" "linux-pf${_cpu}<${_badkver}" "nvidia-utils=${pkgver}")
fi
conflicts=( 'nvidia-96xx' 'nvidia-173xx' 'nvidia-pf-core2' 'nvidia-pf-k8'
'nvidia-pf-atom' 'nvidia-pf-psc' 'nvidia-pf-p4' 'nvidia-pf-p3'
'nvidia-pf-pm' 'nvidia-pf-k7')
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() {
cd "${srcdir}"
[[ -d "${_pkg}" ]] && rm -rf "${_pkg}"
sh "${_pkg}.run" --extract-only
cd "${_pkg}/kernel"
[[ ${_cpu} ]] && msg "Found optimized linux-pf${_cpu}, building ${pkgname}${_cpu}."
make SYSSRC=${_SYSSRC} module
}
package() {
if [[ ${_cpu} ]]; then
true && pkgname=${pkgname}${_cpu}
true && conflicts=(${conflicts[@]/nvidia-pf${_cpu}/} 'nvidia-pf')
fi
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-pf.conf"
echo "blacklist nvidiafb" >> "${pkgdir}/usr/lib/modprobe.d/nvidia-pf.conf"
sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" \
-e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install"
gzip -9 "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko"
install -D -m644 "${srcdir}/${_pkg}/LICENSE" \
"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}