← recipes

Commit 5d8eb8be

0
files
+0
added
-0
deleted
@@ -1,6 +1,6 @@
1 1 pkgname: nvidia-dkms
2 2 pkgver: '610.57.04'
3 -pkgrel: '7'
3 +pkgrel: '8'
4 4 pkgdesc: NVIDIA userspace drivers (libGLX, libEGL, Vulkan ICD, nvidia-smi) + DKMS kernel module sources, Xorg config and udev rules
5 5 url: https://www.nvidia.com/en-us/drivers/unix/
6 6 arch: x86_64
@@ -119,33 +119,44 @@ build: |
119 119
120 120 # ═══ CZĘŚĆ 2/3: ŹRÓDŁA DKMS ═══
121 121 # Zawartość ${_nvdir}/kernel/ (Makefile, Kbuild oraz katalogi nvidia/,
122 - # nvidia-modeset/, nvidia-uvm/, nvidia-drm/) kopiujemy DO ${_srcdir}/, dlatego
123 - # BUILT_MODULE_LOCATION w dkms.conf to "." (katalog główny drzewa DKMS), a NIE
124 - # "kernel" – taki katalog w rozwiązanym drzewie nie istnieje.
122 + # nvidia-uvm/, nvidia-modeset/, nvidia-drm/) kopiujemy DO ${_srcdir}/, więc
123 + # Makefile leży w katalogu głównym drzewa DKMS – dlatego BUILT_MODULE_LOCATION
124 + # to "." (a NIE "kernel"; taki katalog w rozwiązanym drzewie nie istnieje).
125 125 _srcdir="${PKGDIR}/usr/src/nvidia-${pkgver}"
126 126 install -dm0755 "${_srcdir}"
127 127 cp -r "${_nvdir}"/kernel/* "${_srcdir}/"
128 128
129 - cat > "${_srcdir}/dkms.conf" << EOF
129 + # UWAGA: MAKE[0] jest OBOWIĄZKOWE. Bez niego DKMS dokłada `KERNELRELEASE=...`
130 + # do polecenia make, a Makefile NVIDII wybiera wtedy gałąź "budowane przez
131 + # Kbuild" (`ifneq ($(KERNELRELEASE),)` → include $(src)/Kbuild) i NIE tworzy
132 + # żadnego .ko. DKMS kończy to błędem:
133 + # Error! Build of ./nvidia.ko failed ... name and location of the generated
134 + # module ...
135 + # Cudzysłowy wokół 'make' tłumią dodawanie KERNELRELEASE, a KERNEL_UNAME=
136 + # ${kernelver} wskazuje jądro DOCELOWE (a nie to, na którym działa DKMS).
137 + # Wzorzec z autorytatywnego kernel/dkms.conf z instalatora NVIDII.
138 + cat > "${_srcdir}/dkms.conf" << 'EOF'
130 139 PACKAGE_NAME="nvidia"
131 - PACKAGE_VERSION="${pkgver}"
140 + PACKAGE_VERSION="610.57.04"
132 141 AUTOINSTALL="yes"
133 142
143 + MAKE[0]="'make' -j4 NV_EXCLUDE_BUILD_MODULES='nvidia-peermem' NV_EXCLUDE_KERNEL_MODULES='nvidia-peermem nvidia-vgpu-vfio' KERNEL_UNAME=${kernelver} modules"
144 +
134 145 BUILT_MODULE_NAME[0]="nvidia"
135 146 BUILT_MODULE_LOCATION[0]="."
136 - DEST_MODULE_LOCATION[0]="/kernel/drivers/video/nvidia"
147 + DEST_MODULE_LOCATION[0]="/kernel/drivers/video"
137 148
138 - BUILT_MODULE_NAME[1]="nvidia-modeset"
149 + BUILT_MODULE_NAME[1]="nvidia-uvm"
139 150 BUILT_MODULE_LOCATION[1]="."
140 - DEST_MODULE_LOCATION[1]="/kernel/drivers/video/nvidia"
151 + DEST_MODULE_LOCATION[1]="/kernel/drivers/video"
141 152
142 - BUILT_MODULE_NAME[2]="nvidia-uvm"
153 + BUILT_MODULE_NAME[2]="nvidia-modeset"
143 154 BUILT_MODULE_LOCATION[2]="."
144 - DEST_MODULE_LOCATION[2]="/kernel/drivers/video/nvidia"
155 + DEST_MODULE_LOCATION[2]="/kernel/drivers/video"
145 156
146 157 BUILT_MODULE_NAME[3]="nvidia-drm"
147 158 BUILT_MODULE_LOCATION[3]="."
148 - DEST_MODULE_LOCATION[3]="/kernel/drivers/video/nvidia"
159 + DEST_MODULE_LOCATION[3]="/kernel/drivers/video"
149 160 EOF
150 161
151 162 # ═══ CZĘŚĆ 3/3: KONFIGURACJA SYSTEMOWA ═══