Commit 31928873
0
files
+0
added
-0
deleted
@@ -1,120 +1,121 @@
1
-pkgname: nvidia-utils
2
-pkgver: '610.57.04'
3
-pkgrel: '1'
4
-pkgdesc: NVIDIA userspace drivers: libGLX, libEGL, Vulkan ICD, nvidia-smi
5
-url: https://www.nvidia.com/en-us/drivers/unix/
6
-arch: x86_64
7
-license:
8
-- custom
9
-
10
-depends:
11
-- nvidia-dkms
12
-
13
-source:
14
-- https://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}.run
15
-sha256sums:
16
-- SKIP
17
-
18
-build: |
19
- sh NVIDIA-Linux-x86_64-${pkgver}.run --extract-only
20
- cd NVIDIA-Linux-x86_64-${pkgver}
21
-
22
- # --- Biblioteki ---
23
- install -dm0755 ${PKGDIR}/usr/lib
24
- install -dm0755 ${PKGDIR}/usr/bin
25
- install -dm0755 ${PKGDIR}/usr/share/{applications,pixmaps,man/man1,doc/nvidia}
26
- install -dm0755 ${PKGDIR}/usr/share/glvnd/egl_vendor.d
27
- install -dm0755 ${PKGDIR}/usr/share/vulkan/icd.d
28
- install -dm0755 ${PKGDIR}/usr/lib/xorg/modules/{drivers,extensions}
29
-
30
- # Wszystkie biblioteki .so.${pkgver}
31
- for _lib in *.so.${pkgver} *.so.${pkgver%.*.*}; do
32
- [ -f "$_lib" ] && install -m 0755 "$_lib" ${PKGDIR}/usr/lib/
33
- done
34
-
35
- # nvidia-smi, nvidia-settings, nvidia-xconfig, nvidia-modprobe
36
- for _bin in nvidia-smi nvidia-settings nvidia-xconfig nvidia-modprobe nvidia-persistenced; do
37
- [ -f "$_bin" ] && install -m 0755 "$_bin" ${PKGDIR}/usr/bin/
38
- done
39
-
40
- # Man pages
41
- for _man in nvidia-smi nvidia-settings nvidia-xconfig nvidia-modprobe nvidia-persistenced; do
42
- [ -f "${_man}.1.gz" ] && install -m 0644 "${_man}.1.gz" ${PKGDIR}/usr/share/man/man1/
43
- done
44
-
45
- # Desktop entry + ikona
46
- if [ -f nvidia-settings.desktop ]; then
47
- sed -e "s@__UTILS_PATH__/@/usr/bin/@g" -e "s@__PIXMAP_PATH__/@/usr/share/pixmaps/@g" \
48
- nvidia-settings.desktop > ${PKGDIR}/usr/share/applications/nvidia-settings.desktop
49
- fi
50
- [ -f nvidia-settings.png ] && install -m 0644 nvidia-settings.png ${PKGDIR}/usr/share/pixmaps/
51
-
52
- # Xorg DDX + rozszerzenie GLX
53
- [ -f nvidia_drv.so ] && install -m 0755 nvidia_drv.so ${PKGDIR}/usr/lib/xorg/modules/drivers/
54
- if [ -f libglxserver_nvidia.so.${pkgver} ]; then
55
- install -m 0755 libglxserver_nvidia.so.${pkgver} ${PKGDIR}/usr/lib/xorg/modules/extensions/
56
- ln -sf libglxserver_nvidia.so.${pkgver} ${PKGDIR}/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
57
- fi
58
-
59
- # EGL vendor (GLVND)
60
- if [ -f 10_nvidia.json ]; then
61
- install -m 0644 10_nvidia.json ${PKGDIR}/usr/share/glvnd/egl_vendor.d/
62
- fi
63
-
64
- # --- KLUCZOWE: Vulkan ICD do icd.d, NIE implicit_layer.d ---
65
- if [ -f nvidia_icd.json ]; then
66
- install -m 0644 nvidia_icd.json ${PKGDIR}/usr/share/vulkan/icd.d/
67
- fi
68
- # Warstwa pośrednia (jeśli jest)
69
- if [ -f nvidia_layers.json ]; then
70
- install -dm0755 ${PKGDIR}/usr/share/vulkan/explicit_layer.d
71
- install -m 0644 nvidia_layers.json ${PKGDIR}/usr/share/vulkan/explicit_layer.d/
72
- fi
73
-
74
- # --- Symlinki SONAME ---
75
- cd ${PKGDIR}/usr/lib
76
- for _lib in *.so.${pkgver}; do
77
- [ -f "$_lib" ] || continue
78
- _soname=$(readelf -d "$_lib" 2>/dev/null | awk -F'[][]' '/SONAME/{print $2}')
79
- if [ -n "$_soname" ] && [ ! -e "$_soname" ]; then
80
- ln -sf "$_lib" "$_soname"
81
- fi
82
- _base=$(echo "$_lib" | sed -E 's/\.so\.[0-9.]+$/.so/')
83
- if [ ! -e "$_base" ]; then
84
- ln -sf "$_lib" "$_base"
85
- fi
86
- done
87
-
88
- # Ręczne symlinki dla kluczowych bibliotek (na wypadek gdyby readelf zawiódł)
89
- for _pair in \
90
- "libGLX_nvidia.so.${pkgver}:libGLX_nvidia.so.0" \
91
- "libEGL_nvidia.so.${pkgver}:libEGL_nvidia.so.0" \
92
- "libGLESv2_nvidia.so.${pkgver}:libGLESv2_nvidia.so.0" \
93
- "libGLESv1_CM_nvidia.so.${pkgver}:libGLESv1_CM_nvidia.so.0" \
94
- "libnvidia-glcore.so.${pkgver}:libnvidia-glcore.so.${pkgver%.*.*}" \
95
- "libnvidia-eglcore.so.${pkgver}:libnvidia-eglcore.so.${pkgver%.*.*}" \
96
- "libnvidia-glsi.so.${pkgver}:libnvidia-glsi.so.${pkgver%.*.*}" \
97
- "libnvidia-rtcore.so.${pkgver}:libnvidia-rtcore.so.${pkgver%.*.*}" \
98
- "libnvidia-allocator.so.${pkgver}:libnvidia-allocator.so.1" \
99
- "libnvidia-egl-gbm.so.${pkgver}:libnvidia-egl-gbm.so.1" \
100
- "libnvidia-egl-wayland.so.${pkgver}:libnvidia-egl-wayland.so.1" \
101
- "libnvidia-vulkan-producer.so.${pkgver}:libnvidia-vulkan-producer.so" \
102
- "libnvidia-api.so.${pkgver}:libnvidia-api.so.1" \
103
- ; do
104
- _src="${_pair%%:*}"; _dst="${_pair##*:}"
105
- [ -f "${_src}" ] && [ ! -e "${_dst}" ] && ln -sf "${_src}" "${_dst}"
106
- done
107
-
108
- # Dokumentacja
109
- if [ -d html ]; then
110
- cp -r html/* ${PKGDIR}/usr/share/doc/nvidia/
111
- fi
112
-
113
-package: |
114
- true
115
-
116
-hooks:
117
- post-install: |
118
- ldconfig
119
- # Zarejestruj EGL Wayland/GBM jeśli używasz Waylanda
1
+pkgname: nvidia-utils
2
+pkgver: '610.57.04'
3
+pkgrel: '1'
4
+pkgdesc: NVIDIA userspace drivers: libGLX, libEGL, Vulkan ICD, nvidia-smi
5
+url: https://www.nvidia.com/en-us/drivers/unix/
6
+arch: x86_64
7
+license:
8
+- custom
9
+
10
+depends:
11
+- nvidia-dkms
12
+- linux-headers
13
+
14
+source:
15
+- https://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}.run
16
+sha256sums:
17
+- SKIP
18
+
19
+build: |
20
+ sh NVIDIA-Linux-x86_64-${pkgver}.run --extract-only
21
+ cd NVIDIA-Linux-x86_64-${pkgver}
22
+
23
+ # --- Biblioteki ---
24
+ install -dm0755 ${PKGDIR}/usr/lib
25
+ install -dm0755 ${PKGDIR}/usr/bin
26
+ install -dm0755 ${PKGDIR}/usr/share/{applications,pixmaps,man/man1,doc/nvidia}
27
+ install -dm0755 ${PKGDIR}/usr/share/glvnd/egl_vendor.d
28
+ install -dm0755 ${PKGDIR}/usr/share/vulkan/icd.d
29
+ install -dm0755 ${PKGDIR}/usr/lib/xorg/modules/{drivers,extensions}
30
+
31
+ # Wszystkie biblioteki .so.${pkgver}
32
+ for _lib in *.so.${pkgver} *.so.${pkgver%.*.*}; do
33
+ [ -f "$_lib" ] && install -m 0755 "$_lib" ${PKGDIR}/usr/lib/
34
+ done
35
+
36
+ # nvidia-smi, nvidia-settings, nvidia-xconfig, nvidia-modprobe
37
+ for _bin in nvidia-smi nvidia-settings nvidia-xconfig nvidia-modprobe nvidia-persistenced; do
38
+ [ -f "$_bin" ] && install -m 0755 "$_bin" ${PKGDIR}/usr/bin/
39
+ done
40
+
41
+ # Man pages
42
+ for _man in nvidia-smi nvidia-settings nvidia-xconfig nvidia-modprobe nvidia-persistenced; do
43
+ [ -f "${_man}.1.gz" ] && install -m 0644 "${_man}.1.gz" ${PKGDIR}/usr/share/man/man1/
44
+ done
45
+
46
+ # Desktop entry + ikona
47
+ if [ -f nvidia-settings.desktop ]; then
48
+ sed -e "s@__UTILS_PATH__/@/usr/bin/@g" -e "s@__PIXMAP_PATH__/@/usr/share/pixmaps/@g" \
49
+ nvidia-settings.desktop > ${PKGDIR}/usr/share/applications/nvidia-settings.desktop
50
+ fi
51
+ [ -f nvidia-settings.png ] && install -m 0644 nvidia-settings.png ${PKGDIR}/usr/share/pixmaps/
52
+
53
+ # Xorg DDX + rozszerzenie GLX
54
+ [ -f nvidia_drv.so ] && install -m 0755 nvidia_drv.so ${PKGDIR}/usr/lib/xorg/modules/drivers/
55
+ if [ -f libglxserver_nvidia.so.${pkgver} ]; then
56
+ install -m 0755 libglxserver_nvidia.so.${pkgver} ${PKGDIR}/usr/lib/xorg/modules/extensions/
57
+ ln -sf libglxserver_nvidia.so.${pkgver} ${PKGDIR}/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
58
+ fi
59
+
60
+ # EGL vendor (GLVND)
61
+ if [ -f 10_nvidia.json ]; then
62
+ install -m 0644 10_nvidia.json ${PKGDIR}/usr/share/glvnd/egl_vendor.d/
63
+ fi
64
+
65
+ # --- KLUCZOWE: Vulkan ICD do icd.d, NIE implicit_layer.d ---
66
+ if [ -f nvidia_icd.json ]; then
67
+ install -m 0644 nvidia_icd.json ${PKGDIR}/usr/share/vulkan/icd.d/
68
+ fi
69
+ # Warstwa pośrednia (jeśli jest)
70
+ if [ -f nvidia_layers.json ]; then
71
+ install -dm0755 ${PKGDIR}/usr/share/vulkan/explicit_layer.d
72
+ install -m 0644 nvidia_layers.json ${PKGDIR}/usr/share/vulkan/explicit_layer.d/
73
+ fi
74
+
75
+ # --- Symlinki SONAME ---
76
+ cd ${PKGDIR}/usr/lib
77
+ for _lib in *.so.${pkgver}; do
78
+ [ -f "$_lib" ] || continue
79
+ _soname=$(readelf -d "$_lib" 2>/dev/null | awk -F'[][]' '/SONAME/{print $2}')
80
+ if [ -n "$_soname" ] && [ ! -e "$_soname" ]; then
81
+ ln -sf "$_lib" "$_soname"
82
+ fi
83
+ _base=$(echo "$_lib" | sed -E 's/\.so\.[0-9.]+$/.so/')
84
+ if [ ! -e "$_base" ]; then
85
+ ln -sf "$_lib" "$_base"
86
+ fi
87
+ done
88
+
89
+ # Ręczne symlinki dla kluczowych bibliotek (na wypadek gdyby readelf zawiódł)
90
+ for _pair in \
91
+ "libGLX_nvidia.so.${pkgver}:libGLX_nvidia.so.0" \
92
+ "libEGL_nvidia.so.${pkgver}:libEGL_nvidia.so.0" \
93
+ "libGLESv2_nvidia.so.${pkgver}:libGLESv2_nvidia.so.0" \
94
+ "libGLESv1_CM_nvidia.so.${pkgver}:libGLESv1_CM_nvidia.so.0" \
95
+ "libnvidia-glcore.so.${pkgver}:libnvidia-glcore.so.${pkgver%.*.*}" \
96
+ "libnvidia-eglcore.so.${pkgver}:libnvidia-eglcore.so.${pkgver%.*.*}" \
97
+ "libnvidia-glsi.so.${pkgver}:libnvidia-glsi.so.${pkgver%.*.*}" \
98
+ "libnvidia-rtcore.so.${pkgver}:libnvidia-rtcore.so.${pkgver%.*.*}" \
99
+ "libnvidia-allocator.so.${pkgver}:libnvidia-allocator.so.1" \
100
+ "libnvidia-egl-gbm.so.${pkgver}:libnvidia-egl-gbm.so.1" \
101
+ "libnvidia-egl-wayland.so.${pkgver}:libnvidia-egl-wayland.so.1" \
102
+ "libnvidia-vulkan-producer.so.${pkgver}:libnvidia-vulkan-producer.so" \
103
+ "libnvidia-api.so.${pkgver}:libnvidia-api.so.1" \
104
+ ; do
105
+ _src="${_pair%%:*}"; _dst="${_pair##*:}"
106
+ [ -f "${_src}" ] && [ ! -e "${_dst}" ] && ln -sf "${_src}" "${_dst}"
107
+ done
108
+
109
+ # Dokumentacja
110
+ if [ -d html ]; then
111
+ cp -r html/* ${PKGDIR}/usr/share/doc/nvidia/
112
+ fi
113
+
114
+package: |
115
+ true
116
+
117
+hooks:
118
+ post-install: |
119
+ ldconfig
120
+ # Zarejestruj EGL Wayland/GBM jeśli używasz Waylanda
120
121
udevadm control --reload-rules || true