# Maintainer: Neophytos Kolokotronis source ../linux.conf pkgbase=nvidia-304xx pkgname=('nvidia-304xx' 'chd-nvidia-304xx' 'nvidia-304xx-dkms') pkgver=304.137 pkgrel=6 arch=('x86_64') url="http://www.nvidia.com/" makedepends=("linux-headers=${_kernelver}") license=('custom') _pkg="NVIDIA-Linux-${arch}-${pkgver}-no-compat32" source=("https://code.chakralinux.org/tools/chakra-hardware-detection/raw/master/hwdb/nvidia_supported" "http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run" 'kernel-4.14.patch' 'kernel-4.15.patch') md5sums=('62d0cdb856cfae64753c0f3acf729d47' '485506ee6a7c54780488dacddf1d56b1' 'cf9259b845e53903586c29a27de29ddb' '3b824306e7d5193587c80b19b1b56ef2') prepare() { cd "${srcdir}" sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install" sh "${_pkg}.run" --extract-only cd "${_pkg}" # patches here patch -Np1 --no-backup-if-mismatch < "${srcdir}/kernel-4.14.patch" patch -Np1 --no-backup-if-mismatch < "${srcdir}/kernel-4.15.patch" cp -a kernel kernel-dkms } build() { cd "${_pkg}/kernel" make SYSSRC=/usr/lib/modules/"${_kver}/build" module } package_nvidia-304xx() { pkgdesc="NVIDIA drivers for linux." depends=("linux=${_kernelver}" "nvidia-304xx-libgl" "nvidia-304xx-utils=${pkgver}") conflicts=('nvidia-96xx' 'nvidia-173xx' 'nvidia') install=nvidia.install 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/nouveau_blacklist.conf" gzip "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" } package_nvidia-304xx-dkms() { pkgdesc="NVIDIA driver sources for linux, 304xx legacy branch" depends=('dkms' "nvidia-304xx-utils=$pkgver") optdepends=('linux-headers: Build the module for Arch kernel' 'linux-lts-headers: Build the module for LTS Arch kernel') conflicts+=('nvidia-304xx') cd "${srcdir}/${_pkg}" make -C kernel clean install -dm 755 "${pkgdir}"/usr/{lib/modprobe.d,src} cp -dr --no-preserve='ownership' kernel-dkms "${pkgdir}"/usr/src/nvidia-${pkgver} echo 'blacklist nouveau' > "${pkgdir}"/usr/lib/modprobe.d/nvidia.conf } package_chd-nvidia-304xx() { pkgdesc="CHD ids for nvidia $pkgver" arch=('x86_64') cd "${srcdir}/${_pkg}" install -dm755 "${pkgdir}/opt/chakra/hwdb" sh -e "${srcdir}/nvidia_supported" README.txt kernel/nv-kernel.o \ > "${pkgdir}/opt/chakra/hwdb/hw_nvidia304xx_hwdb" }