Skip to content
Snippets Groups Projects
PKGBUILD 2.47 KiB
Newer Older
Philip Müller's avatar
Philip Müller committed
# Maintainer: Philip Müller <philm[at]manjaro[dot]org>
# Maintainer: Helmut Stult <helmut[at]manjaro[dot]org>

# Arch credits:
# Maintainer : Thomas Baechler <thomas@archlinux.org>
Philip Müller's avatar
Philip Müller committed
# Contributor: Alonso Rodriguez <alonsorodi20 (at) gmail (dot) com>
# Contributor: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Felix Yan <felixonmars@archlinux.org>
# Contributor: loqs
# Contributor: Dede Dindin Qudsy <xtrymind+gmail+com>
# Contributor: Ike Devolder <ike.devolder+gmail+com>
Philip Müller's avatar
Philip Müller committed

_linuxprefix=linux510
_extramodules=extramodules-5.10-MANJARO
# don't edit here
Helmut Stult's avatar
Helmut Stult committed
pkgver=390.144
Philip Müller's avatar
Philip Müller committed

_nver=390
# edit here for new version
Helmut Stult's avatar
Helmut Stult committed
_sver=144
Philip Müller's avatar
Philip Müller committed
# edit here for new build
Helmut Stult's avatar
Helmut Stult committed
pkgrel=4
Philip Müller's avatar
Philip Müller committed
pkgname=$_linuxprefix-nvidia-${_nver}xx
_pkgname=nvidia
_pkgver="${_nver}.${_sver}"
pkgdesc="NVIDIA drivers for linux."
arch=('x86_64')
url="http://www.nvidia.com/"
depends=("$_linuxprefix" "nvidia-390xx-utils=${_pkgver}")
makedepends=("$_linuxprefix-headers")
groups=("$_linuxprefix-extramodules")
provides=("nvidia=$pkgver")
conflicts=("$_linuxprefix-nvidia-340xx" "$_linuxprefix-nvidia-418xx" "$_linuxprefix-nvidia-430xx"
Helmut Stult's avatar
Helmut Stult committed
           "$_linuxprefix-nvidia-435xx" "$_linuxprefix-nvidia-440xx" "$_linuxprefix-nvidia-450xx"
Helmut Stult's avatar
Helmut Stult committed
           "$_linuxprefix-nvidia-455xx" "$_linuxprefix-nvidia-460xx")
Philip Müller's avatar
Philip Müller committed
license=('custom')
install=nvidia.install
options=(!strip)
durl="http://us.download.nvidia.com/XFree86/Linux-x86"
Helmut Stult's avatar
Helmut Stult committed
source=("${durl}_64/${_pkgver}/NVIDIA-Linux-x86_64-${_pkgver}-no-compat32.run")
Helmut Stult's avatar
Helmut Stult committed
sha256sums=('d9b36e51253592d7aeecb9758ebccf30348ab364c88f95aa5ba33c767470949c')
Philip Müller's avatar
Philip Müller committed

_pkg="NVIDIA-Linux-x86_64-${_pkgver}-no-compat32"

pkgver() {
  printf '%s' "${_pkgver}"
}

prepare() {
    sh "${_pkg}.run" --extract-only
    cd "${_pkg}"
    # patches here
}

build() {
    _kernver="$(cat /usr/lib/modules/${_extramodules}/version)"
    cd "${_pkg}"/kernel
    make SYSSRC=/usr/lib/modules/"${_kernver}/build" module
}

package() {
Helmut Stult's avatar
Helmut Stult committed
    install -D -m644 "${_pkg}/kernel/nvidia.ko" \
Philip Müller's avatar
Philip Müller committed
        "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko"
Helmut Stult's avatar
Helmut Stult committed
    install -D -m644 "${_pkg}/kernel/nvidia-modeset.ko" \
Philip Müller's avatar
Philip Müller committed
         "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia-modeset.ko"
Helmut Stult's avatar
Helmut Stult committed
    install -D -m644 "${_pkg}/kernel/nvidia-drm.ko" \
Philip Müller's avatar
Philip Müller committed
         "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia-drm.ko"
Helmut Stult's avatar
Helmut Stult committed
    install -D -m644 "${_pkg}/kernel/nvidia-uvm.ko" \
         "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia-uvm.ko"
Philip Müller's avatar
Philip Müller committed
    gzip "${pkgdir}/usr/lib/modules/${_extramodules}/"*.ko
    sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install"
}