summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Bermond2020-01-28 18:17:44 +0000
committerDaniel Bermond2020-01-28 18:17:44 +0000
commitaee870ef69070d5cef3aefd21a3316c12625c8d8 (patch)
tree5362506165d883a7f7f210dbdd3fa75ad475a58c
parent92d3382601e1e9c7ae8e733f9663b9b4fd0cb047 (diff)
downloadaur-aee870ef69070d5cef3aefd21a3316c12625c8d8.tar.gz
Add fixes for linux 5.5, prime and FS#64317
- add patch to fix build for linux 5.5 (https://devtalk.nvidia.com/default/topic/1068332/linux/nvidia-driver-does-not-build-on-linux-v5-5-release-candidate-kernel/) - add patch to fix prime for linux 5.4 (https://devtalk.nvidia.com/default/topic/1068045/5-4-kernel-breaks-prime-synchronization-/) - remove patch for FS#62142 as reported by FS#64317
-rw-r--r--.SRCINFO12
-rw-r--r--110-nvidia-beta-dkms-change-dkms-conf.patch (renamed from 0001-nvidia-beta-dkms-change-dkms-conf.patch)0
-rw-r--r--120-nvidia-beta-dkms-linux-rt-gift.patch (renamed from 0002-nvidia-beta-dkms-linux-rt-gift.patch)0
-rw-r--r--FS62142.patch12
-rw-r--r--PKGBUILD36
5 files changed, 21 insertions, 39 deletions
diff --git a/.SRCINFO b/.SRCINFO
index bdae70751acc..74d2e8337c10 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = nvidia-beta-dkms
pkgdesc = NVIDIA driver sources for linux (beta version)
pkgver = 440.44
- pkgrel = 1
+ pkgrel = 2
url = https://www.nvidia.com/
arch = x86_64
license = custom
@@ -16,11 +16,13 @@ pkgbase = nvidia-beta-dkms
provides = nvidia-beta=440.44
conflicts = nvidia
source = https://us.download.nvidia.com/XFree86/Linux-x86_64/440.44/NVIDIA-Linux-x86_64-440.44-no-compat32.run
- source = FS62142.patch
- source = 0001-nvidia-beta-dkms-change-dkms-conf.patch
- source = 0002-nvidia-beta-dkms-linux-rt-gift.patch
+ source = 010-nvidia-prime-kernel-5.4.patch::https://gitlab.com/snippets/1929174/raw
+ source = 020-nvidia-kernel-5.5.patch::https://gitlab.com/snippets/1923197/raw
+ source = 110-nvidia-beta-dkms-change-dkms-conf.patch
+ source = 120-nvidia-beta-dkms-linux-rt-gift.patch
sha256sums = 794fdfc8e65c203ae482f59df7e55050ddcf0a11af2a95eaa1a10c7d48ec7e0f
- sha256sums = c961006882afb691410c017c239e2c2ef61badb88f15735d37112b513ef0a99d
+ sha256sums = bedd55074771222bad8391c66b7022a266c135ff51d478710f7dda8708c3e9aa
+ sha256sums = 7dcd609e85720cb812d7b41320d845931d8ea3e8529c700231372e0da66e5804
sha256sums = eb2bdea01f430a493a40b5fa77f762d09fd5fa450517070b4d7f429cb75e2089
sha256sums = 25e29ee166552523366278d94ba69a7895cd50321cf402a9f69598b16a9e2827
diff --git a/0001-nvidia-beta-dkms-change-dkms-conf.patch b/110-nvidia-beta-dkms-change-dkms-conf.patch
index a9d40e6ccd8d..a9d40e6ccd8d 100644
--- a/0001-nvidia-beta-dkms-change-dkms-conf.patch
+++ b/110-nvidia-beta-dkms-change-dkms-conf.patch
diff --git a/0002-nvidia-beta-dkms-linux-rt-gift.patch b/120-nvidia-beta-dkms-linux-rt-gift.patch
index 55cca8a03665..55cca8a03665 100644
--- a/0002-nvidia-beta-dkms-linux-rt-gift.patch
+++ b/120-nvidia-beta-dkms-linux-rt-gift.patch
diff --git a/FS62142.patch b/FS62142.patch
deleted file mode 100644
index 887f3366723e..000000000000
--- a/FS62142.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naurp a/kernel/nvidia/nv-dma.c b/kernel/nvidia/nv-dma.c
---- a/kernel/nvidia/nv-dma.c 2019-05-08 01:37:30.000000000 +0000
-+++ b/kernel/nvidia/nv-dma.c 2019-06-08 18:33:00.000000000 +0000
-@@ -613,7 +613,7 @@ static NvBool nv_dma_is_map_resource_imp
- #endif
- }
-
-- return (ops->map_resource != NULL);
-+ return (ops && ops->map_resource);
- #else
- return NV_FALSE;
- #endif
diff --git a/PKGBUILD b/PKGBUILD
index 6508213e955d..7fd42841b3b2 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,4 +1,4 @@
-# Maintainer : Daniel Bermond < gmail-com: danielbermond >
+# Maintainer : Daniel Bermond <dbermond@archlinux.org>
# Contributor: Sibren Vasse <arch at sibrenvasse dot nl>
# Contributor: Matt Welch <matt dot welch at gmail dot com>
# Contributor: Anish Bhatt <anish at gatech dot edu>
@@ -10,7 +10,7 @@
pkgname=nvidia-beta-dkms
pkgver=440.44
-pkgrel=1
+pkgrel=2
pkgdesc='NVIDIA driver sources for linux (beta version)'
arch=('x86_64')
url='https://www.nvidia.com/'
@@ -23,11 +23,13 @@ provides=("nvidia=${pkgver}" "nvidia-dkms=${pkgver}" "nvidia-beta=${pkgver}")
conflicts=('nvidia')
_pkg="NVIDIA-Linux-${CARCH}-${pkgver}-no-compat32"
source=("https://us.download.nvidia.com/XFree86/Linux-${CARCH}/${pkgver}/${_pkg}.run"
- 'FS62142.patch'
- '0001-nvidia-beta-dkms-change-dkms-conf.patch'
- '0002-nvidia-beta-dkms-linux-rt-gift.patch')
+ '010-nvidia-prime-kernel-5.4.patch::https://gitlab.com/snippets/1929174/raw'
+ '020-nvidia-kernel-5.5.patch::https://gitlab.com/snippets/1923197/raw'
+ '110-nvidia-beta-dkms-change-dkms-conf.patch'
+ '120-nvidia-beta-dkms-linux-rt-gift.patch')
sha256sums=('794fdfc8e65c203ae482f59df7e55050ddcf0a11af2a95eaa1a10c7d48ec7e0f'
- 'c961006882afb691410c017c239e2c2ef61badb88f15735d37112b513ef0a99d'
+ 'bedd55074771222bad8391c66b7022a266c135ff51d478710f7dda8708c3e9aa'
+ '7dcd609e85720cb812d7b41320d845931d8ea3e8529c700231372e0da66e5804'
'eb2bdea01f430a493a40b5fa77f762d09fd5fa450517070b4d7f429cb75e2089'
'25e29ee166552523366278d94ba69a7895cd50321cf402a9f69598b16a9e2827')
@@ -37,25 +39,15 @@ prepare() {
printf '%s\n' " -> Self-Extracting ${_pkg}.run..."
sh "${_pkg}.run" --extract-only
- cd "$_pkg"
- patch -Np1 -i "${srcdir}/0001-nvidia-beta-dkms-change-dkms-conf.patch"
- patch -Np1 -i "${srcdir}/0002-nvidia-beta-dkms-linux-rt-gift.patch"
-
- # fix https://bugs.archlinux.org/task/62142
- patch -Np1 -i "${srcdir}/FS62142.patch"
+ patch -d "$_pkg" -Np1 -i "${srcdir}/010-nvidia-prime-kernel-5.4.patch"
+ patch -d "$_pkg" -Np1 -i "${srcdir}/020-nvidia-kernel-5.5.patch"
+ patch -d "$_pkg" -Np1 -i "${srcdir}/110-nvidia-beta-dkms-change-dkms-conf.patch"
+ patch -d "$_pkg" -Np1 -i "${srcdir}/120-nvidia-beta-dkms-linux-rt-gift.patch"
}
package() {
- cd "$_pkg"
-
mkdir -p "${pkgdir}/usr/src"
-
- # install
- cp -dr --no-preserve='ownership' kernel "${pkgdir}/usr/src/nvidia-${pkgver}"
-
- # blacklist nouveau driver
+ cp -dr --no-preserve='ownership' "${_pkg}/kernel" "${pkgdir}/usr/src/nvidia-${pkgver}"
printf '%s\n' 'blacklist nouveau' | install -D -m644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
-
- # license
- install -D -m644 "${srcdir}/${_pkg}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -D -m644 "${_pkg}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}