1 |
commit: dd8dd30e8e767b6d6846735b57e33c4f0cc7a01b |
2 |
Author: Ionen Wolkens <sudinave <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Apr 21 12:19:51 2021 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Apr 21 12:19:51 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd8dd30e |
7 |
|
8 |
x11-drivers/nvidia-drivers: drop 460.56 |
9 |
|
10 |
Also removes remaining support files/metadata for old style ebuilds. |
11 |
|
12 |
Signed-off-by: Ionen Wolkens <sudinave <AT> gmail.com> |
13 |
Signed-off-by: David Seifert <soap <AT> gentoo.org> |
14 |
|
15 |
x11-drivers/nvidia-drivers/Manifest | 2 - |
16 |
.../files/nvidia-drivers-440.26-locale.patch | 13 - |
17 |
.../nvidia-drivers/files/nvidia-persistenced.conf | 8 - |
18 |
.../nvidia-drivers/files/nvidia-persistenced.init | 24 - |
19 |
.../files/nvidia-settings-linker.patch | 22 - |
20 |
.../nvidia-drivers/files/nvidia-settings.desktop | 7 - |
21 |
x11-drivers/nvidia-drivers/files/nvidia-smi.init | 24 - |
22 |
x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1 | 20 - |
23 |
.../nvidia-drivers/files/nvidia-uvm.udev-rule | 1 - |
24 |
x11-drivers/nvidia-drivers/files/nvidia.udev-rule | 6 - |
25 |
x11-drivers/nvidia-drivers/metadata.xml | 3 - |
26 |
.../nvidia-drivers/nvidia-drivers-460.56.ebuild | 485 --------------------- |
27 |
12 files changed, 615 deletions(-) |
28 |
|
29 |
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest |
30 |
index 524020e0b4a..f2cd533cb7d 100644 |
31 |
--- a/x11-drivers/nvidia-drivers/Manifest |
32 |
+++ b/x11-drivers/nvidia-drivers/Manifest |
33 |
@@ -4,7 +4,6 @@ DIST NVIDIA-Linux-aarch64-465.19.01.run 174150951 BLAKE2B 7344404cff1ee5fce5368d |
34 |
DIST NVIDIA-Linux-x86-390.141.run 49589744 BLAKE2B 304672806b89885adbf8459ea99ca872769e44a42ff041a5b79ef05d113d7717f505f543441e7a2fc6c569f6d66391f0380a4f23f3e68108c8de817bf251f850 SHA512 6dfde3b54520070954b45f6bc071251084e1741f55e582b1abd806eb367e4b9ce0015615bf6a887fa784d075b3db08b6940da4163b960969773d1bdc52b4961e |
35 |
DIST NVIDIA-Linux-x86_64-390.141.run 85330901 BLAKE2B 7759d8cf6c9a75607b9a3ecd53cdd6f6a93f2f372d740a5a87d4d3f41a22f3bd953cc7dd6a0dc0e23a829ec86df8d65b9de499a76cfd4266a13b0aa3288aceb5 SHA512 5448d70e6e64a6403e61a004d83c69a442dd8ed0d61da3a31d3e3b7943c06c559a66b0f8d135982868ecbf209a965f60dae1a633367630b4d9287f725bbaa53c |
36 |
DIST NVIDIA-Linux-x86_64-450.102.04.run 141391114 BLAKE2B 019f928464b23d2a86bfdd255b7651e3cfe2b0b6ebf58d1b4a6ba1f27990e1d050d1e2429ba4aa60b966b04e775939084a04d82d1dd3482a10b39375b17b1c31 SHA512 1d13de540da36274a360ea6bcd1ce01eaae103fe417b42aa8f9ac757c382b06da455a78cf6798310179f90e2afeadf3a8c9f3398186490c3c0f9079021e850ed |
37 |
-DIST NVIDIA-Linux-x86_64-460.56.run 178496173 BLAKE2B 8f84a403ccaa9a92186cac9fb2dee9600cd29915cdacf475b6a1105772ffd52c671ef217a1201fbcd9192e858ec17796fd77b817887c79c43c266d32671fe7d0 SHA512 a61855576a27cdd2e48906ecb49cd1e9f88d14a8358aa4bdc57d59e2dfa64b394b2dcee45184d75e889fac6ebedcaaff902a07428c7f9eb011cf265228c6eb4e |
38 |
DIST NVIDIA-Linux-x86_64-460.67.run 177691692 BLAKE2B 25a7d87cc128933a98100d7c5ef37f93c3a870c096eea3228a28ef79d712ce104608f9422221cc1eadc21dccbbc8bc41ab1832795cfee75e217600ed0d76489e SHA512 80fdc023a8ce80e3a103896f28a5564bb43903af6bfc719f755c48eb225e79ec6abf219ab20eb80ada5808ef932ef5fa0fe710c6e0a07dd8a248daff2ba3b898 |
39 |
DIST NVIDIA-Linux-x86_64-465.19.01.run 259853124 BLAKE2B 04d5d738a99e313d9c0c8aa074b28ff744b3d16893f26d4837d7440e7fa51c3182101f7cadedcb7b13f01d0e6dd612c931f2357e87003966cfc5b2c7f4398079 SHA512 b4ececb6069ec961a4bf6b50c3bb0d7ca94add13e04f9dcceaddc6d3267f6dfc5f020d14e49f37e6c09ec3b47b3f44f0f44620e1ab4d25f7739514a07769a67d |
40 |
DIST nvidia-installer-390.141.tar.gz 205299 BLAKE2B b95ddcf9a8d61247572d73faa04558564962782b0eb222601315d741d1ee71fa0636fa87d31105ecc5ec61328d3174a3ed646046e02b6b5f29f071215a0e8bdd SHA512 3848a4ec17510bf4d3060e5ef8aafa1ad921215ec39d26c54b3bbdd8a5867c46e01d247b24b05ad6906fed7fb4ae6dc37346a7da6e5aae88b5b47584c0b07a02 |
41 |
@@ -21,7 +20,6 @@ DIST nvidia-persistenced-460.67.tar.gz 53334 BLAKE2B 1354ec98fd2b95d264fd7df6219 |
42 |
DIST nvidia-persistenced-465.19.01.tar.gz 53555 BLAKE2B 0b163a2cf37c9180512f9d3af442f52d4417f1ca0b286bafc154cd3c235bc8ff82380fbb92633f9dc0e010c9cc4e36ab3b5f6aad726b5357dc368edafe737146 SHA512 ebe8a8eff5770605e751665f325a82cbe24b20395684d124558838553a2815f6cf2804cb58a9624105a99442fea91d774ad4978bcd2ad13a52f55e777ae13c5d |
43 |
DIST nvidia-settings-390.141.tar.gz 1297261 BLAKE2B 452870df1ba598692f5da47444eb2daf4db40c79cac98c10b1c994c0ff39fc7936909b9d7788cbfe784999e68a2bdbbc12e85d63c3bc02ac872e6b3c46834697 SHA512 dbf7c389bbdc94291a1b974adfa33414148b1ab752aa7d948a27e91ee1bceb3b8435aceb6b7ef3cb806333572db11b5524667045ef7686b119d7955d2699cb04 |
44 |
DIST nvidia-settings-450.102.04.tar.gz 1229675 BLAKE2B 166b73a0e9fe1cc1c16f83128aa94f3b9ef44fc71004e80c2681299dd564df6b458b52bedfd60eaaecf6142d0ea7d5147cb9c509d4db4e6b85bc72dd4dc75751 SHA512 c514bb3cc72954a52f4821674f9b783ebc0bd8c7294a296716619ddad15f2b63f50ada47797dee1386709deb7d407cb1d6c04532b7ca6e03d84234555751c9a9 |
45 |
-DIST nvidia-settings-460.56.tar.bz2 1060604 BLAKE2B cd1480e42ab2b25b399f19b458a1d5252d1b77d263ddecbad2d61f0445ba9f0ddf81fc944ac1136c273dfd1d21d06385bcfac9bdd7a7dc02f75302a6b8276df4 SHA512 018eb3cb7f25b926aa620201979b0efaaa82e7f036c4870a1e1234f5aac3ab9cfd48846d7eedd7ed38c3035eface3f2afe1a0d5de7a67e53e6bea760aa99fa72 |
46 |
DIST nvidia-settings-460.67.tar.gz 1233189 BLAKE2B 33ffceefea4e184cb1873cdce97db26637e87cd20c82bcabcbfe88bcb084ac3d833ac5688cafa33a5a89383040d5c1c5d46de9c3f9a8ba6174574aa57aea2e46 SHA512 d1828379aa477394747ae3e5d3505e864d38a349dd159a04cb263613380afea9aea2081300b0d2b8ae205b800bfe6e8ba504e612989da394d757f00e4399b617 |
47 |
DIST nvidia-settings-465.19.01.tar.gz 1233866 BLAKE2B 297ffe66639bd4221f5b780abb784f640553f0f7d4f9bcc254cdf54fa6dcc98ac197fa76178f66b626bcef8c4fc6c2c83c3c2474f81a2c5124df0a651f878663 SHA512 90f2786941ee062f4f8e7f80e0174620d8aedca17164e7e466c77733f29e891ffce9b08a09a75c25a219546efc816ca2fbb26b3b142522e89e495b7b90bd65d1 |
48 |
DIST nvidia-xconfig-390.141.tar.gz 140293 BLAKE2B 08ee93be953f75dbe078c557af7c062092ce8a3b53af0735d43b7feabe6d1c99390b9533027fbc5017d207a70dfa5aecf88d211905bf8f0e846f769a6ea16c2b SHA512 9fedee2f720d86bd24e393328249bf970a1f242b9e750543e757eb13ca30f6ecfda6c63441093ab96ae28d5f38d4e55cc6de6316eb82d2a2f33074144a1eef2f |
49 |
|
50 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-440.26-locale.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-440.26-locale.patch |
51 |
deleted file mode 100644 |
52 |
index aa2a74349f2..00000000000 |
53 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-drivers-440.26-locale.patch |
54 |
+++ /dev/null |
55 |
@@ -1,13 +0,0 @@ |
56 |
---- a/kernel/conftest.sh |
57 |
-+++ b/kernel/conftest.sh |
58 |
-@@ -6,6 +6,10 @@ |
59 |
- SCRIPTDIR=`dirname $0` |
60 |
- cd $SCRIPTDIR |
61 |
- |
62 |
-+# translate_and_compile_header_files() expects the default locale |
63 |
-+# https://bugs.gentoo.org/698238 |
64 |
-+export LC_ALL=C |
65 |
-+ |
66 |
- CC="$1" |
67 |
- ARCH=$2 |
68 |
- ISYSTEM=`$CC -print-file-name=include 2> /dev/null` |
69 |
|
70 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf |
71 |
deleted file mode 100644 |
72 |
index 637ac1afb41..00000000000 |
73 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf |
74 |
+++ /dev/null |
75 |
@@ -1,8 +0,0 @@ |
76 |
-# run-time configuration file for /etc/init.d/nvidia-persistenced |
77 |
- |
78 |
-# NVPD_USER: The user nvidia-persistenced is intended to run for |
79 |
-NVPD_USER="" |
80 |
- |
81 |
-# ARGS: Additional arguments to set the default persistence mode |
82 |
-# (see nvidia-persistenced(1)) |
83 |
-ARGS="" |
84 |
|
85 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init |
86 |
deleted file mode 100644 |
87 |
index f80456d1603..00000000000 |
88 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init |
89 |
+++ /dev/null |
90 |
@@ -1,24 +0,0 @@ |
91 |
-#!/sbin/openrc-run |
92 |
-# Copyright 1999-2014 Gentoo Foundation |
93 |
-# Distributed under the terms of the GNU General Public License v2 |
94 |
- |
95 |
-pidfile="/var/run/nvidia-persistenced/nvidia-persistenced.pid" |
96 |
- |
97 |
-start() { |
98 |
- if ! [ "${NVPD_USER}x" = x ]; then |
99 |
- ebegin "Starting nvidia-persistenced for ${NVPD_USER}" |
100 |
- NVPD_USER_ARG="--user ${NVPD_USER}" |
101 |
- else |
102 |
- ebegin "Starting nvidia-persistenced" |
103 |
- fi |
104 |
- start-stop-daemon --start --quiet --pidfile ${pidfile} \ |
105 |
- --background --exec /opt/bin/nvidia-persistenced \ |
106 |
- -- ${NVPD_USER_ARG} ${ARGS} |
107 |
- eend $? |
108 |
-} |
109 |
- |
110 |
-stop() { |
111 |
- ebegin "Stopping nvidia-persistenced" |
112 |
- start-stop-daemon --stop --quiet --pidfile ${pidfile} |
113 |
- eend $? |
114 |
-} |
115 |
|
116 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-settings-linker.patch b/x11-drivers/nvidia-drivers/files/nvidia-settings-linker.patch |
117 |
deleted file mode 100644 |
118 |
index fe9d336413f..00000000000 |
119 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-settings-linker.patch |
120 |
+++ /dev/null |
121 |
@@ -1,22 +0,0 @@ |
122 |
---- a/nvidia-settings-@PV@/utils.mk |
123 |
-+++ b/nvidia-settings-@PV@/utils.mk |
124 |
-@@ -475,7 +475,7 @@ |
125 |
- define READ_ONLY_OBJECT_FROM_FILE_RULE |
126 |
- $$(OUTPUTDIR)/$$(notdir $(1)).o: $(1) |
127 |
- $(at_if_quiet)cd $$(dir $(1)); \ |
128 |
-- $$(call quiet_cmd_no_at,LD) -r -z noexecstack --format=binary \ |
129 |
-+ $$(call quiet_cmd_no_at,NVLD) -r -z noexecstack --format=binary \ |
130 |
- $$(notdir $(1)) -o $$(OUTPUTDIR_ABSOLUTE)/$$(notdir $$@) |
131 |
- $$(call quiet_cmd,OBJCOPY) \ |
132 |
- --rename-section .data=.rodata,contents,alloc,load,data,readonly \ |
133 |
---- a/nvidia-settings-@PV@/src/libXNVCtrl/utils.mk |
134 |
-+++ b/nvidia-settings-@PV@/src/libXNVCtrl/utils.mk |
135 |
-@@ -475,7 +475,7 @@ |
136 |
- define READ_ONLY_OBJECT_FROM_FILE_RULE |
137 |
- $$(OUTPUTDIR)/$$(notdir $(1)).o: $(1) |
138 |
- $(at_if_quiet)cd $$(dir $(1)); \ |
139 |
-- $$(call quiet_cmd_no_at,LD) -r -z noexecstack --format=binary \ |
140 |
-+ $$(call quiet_cmd_no_at,NVLD) -r -z noexecstack --format=binary \ |
141 |
- $$(notdir $(1)) -o $$(OUTPUTDIR_ABSOLUTE)/$$(notdir $$@) |
142 |
- $$(call quiet_cmd,OBJCOPY) \ |
143 |
- --rename-section .data=.rodata,contents,alloc,load,data,readonly \ |
144 |
|
145 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-settings.desktop b/x11-drivers/nvidia-drivers/files/nvidia-settings.desktop |
146 |
deleted file mode 100644 |
147 |
index b4b452ec829..00000000000 |
148 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-settings.desktop |
149 |
+++ /dev/null |
150 |
@@ -1,7 +0,0 @@ |
151 |
-[Desktop Entry] |
152 |
-Type=Application |
153 |
-Name=NVIDIA X Server Settings |
154 |
-Comment=Configure NVIDIA X Server Settings |
155 |
-Exec=/usr/bin/nvidia-settings |
156 |
-Icon=nvidia-settings |
157 |
-Categories=System;Settings; |
158 |
|
159 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-smi.init b/x11-drivers/nvidia-drivers/files/nvidia-smi.init |
160 |
deleted file mode 100644 |
161 |
index 8ee51e34893..00000000000 |
162 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-smi.init |
163 |
+++ /dev/null |
164 |
@@ -1,24 +0,0 @@ |
165 |
-#!/sbin/openrc-run |
166 |
-# Copyright 1999-2013 Gentoo Foundation |
167 |
-# Distributed under the terms of the GNU General Public License v2 |
168 |
- |
169 |
-pidfile="/run/nvidia-smi.pid" |
170 |
- |
171 |
-depend() { |
172 |
- after modules |
173 |
-} |
174 |
- |
175 |
-start() { |
176 |
- ebegin "Starting NVIDIA System Management Interface" |
177 |
- rm -f ${pidfile} |
178 |
- start-stop-daemon --start --quiet --pidfile ${pidfile} \ |
179 |
- --make-pidfile --background --exec /opt/bin/nvidia-smi -- \ |
180 |
- -q -l 300 |
181 |
- eend $? |
182 |
-} |
183 |
- |
184 |
-stop() { |
185 |
- ebegin "Stopping NVIDIA System Management Interface" |
186 |
- start-stop-daemon --stop --quiet --pidfile ${pidfile} |
187 |
- eend $? |
188 |
-} |
189 |
|
190 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1 b/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1 |
191 |
deleted file mode 100644 |
192 |
index 6579bf74adb..00000000000 |
193 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1 |
194 |
+++ /dev/null |
195 |
@@ -1,20 +0,0 @@ |
196 |
-#!/bin/sh |
197 |
- |
198 |
-if [ $# -ne 1 ]; then |
199 |
- echo "Invalid args" >&2 |
200 |
- exit 1 |
201 |
-fi |
202 |
- |
203 |
-case $1 in |
204 |
- add|ADD) |
205 |
- #hopefully this prevents infinite loops like bug #454740 |
206 |
- if lsmod | grep -iq nvidia; then |
207 |
- /opt/bin/nvidia-smi > /dev/null |
208 |
- fi |
209 |
- ;; |
210 |
- remove|REMOVE) |
211 |
- rm -f /dev/nvidia* |
212 |
- ;; |
213 |
-esac |
214 |
- |
215 |
-exit 0 |
216 |
|
217 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-uvm.udev-rule b/x11-drivers/nvidia-drivers/files/nvidia-uvm.udev-rule |
218 |
deleted file mode 100644 |
219 |
index 0602a4353fe..00000000000 |
220 |
--- a/x11-drivers/nvidia-drivers/files/nvidia-uvm.udev-rule |
221 |
+++ /dev/null |
222 |
@@ -1 +0,0 @@ |
223 |
-KERNEL=="nvidia_uvm", RUN+="/bin/bash -c '/bin/mknod -m 660 /dev/nvidia-uvm c $$(grep nvidia-uvm /proc/devices | cut -d \ -f 1) 0; /bin/chgrp video /dev/nvidia-uvm'" |
224 |
|
225 |
diff --git a/x11-drivers/nvidia-drivers/files/nvidia.udev-rule b/x11-drivers/nvidia-drivers/files/nvidia.udev-rule |
226 |
deleted file mode 100644 |
227 |
index 2eb30bb0eba..00000000000 |
228 |
--- a/x11-drivers/nvidia-drivers/files/nvidia.udev-rule |
229 |
+++ /dev/null |
230 |
@@ -1,6 +0,0 @@ |
231 |
-ACTION=="add", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}" |
232 |
-# Previously the ACTION was "add|remove" but one user on bug #376527 had a |
233 |
-# problem until he recompiled udev-171-r5, which is one of the versions I |
234 |
-# tested with and it was fine. I'm breaking the rules out just to be safe |
235 |
-# so someone else doesn't have an issue |
236 |
-ACTION=="remove", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}" |
237 |
|
238 |
diff --git a/x11-drivers/nvidia-drivers/metadata.xml b/x11-drivers/nvidia-drivers/metadata.xml |
239 |
index 294430ee9cf..107804d69d1 100644 |
240 |
--- a/x11-drivers/nvidia-drivers/metadata.xml |
241 |
+++ b/x11-drivers/nvidia-drivers/metadata.xml |
242 |
@@ -9,11 +9,8 @@ |
243 |
<email>soap@g.o</email> |
244 |
</maintainer> |
245 |
<use> |
246 |
- <flag name="compat">Install non-GLVND libGL for backwards compatibility</flag> |
247 |
<flag name="driver">Install kernel driver modules</flag> |
248 |
- <flag name="kms">Enable support for kernel mode setting (KMS)</flag> |
249 |
<flag name="tools">Install additional tools such as nvidia-settings</flag> |
250 |
- <flag name="uvm">Install the Unified Memory kernel module (nvidia-uvm) for sharing memory between CPU and GPU in CUDA programs</flag> |
251 |
</use> |
252 |
<upstream> |
253 |
<remote-id type="cpe">cpe:/a:nvidia:gpu_driver</remote-id> |
254 |
|
255 |
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-460.56.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-460.56.ebuild |
256 |
deleted file mode 100644 |
257 |
index 17311c655c7..00000000000 |
258 |
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-460.56.ebuild |
259 |
+++ /dev/null |
260 |
@@ -1,485 +0,0 @@ |
261 |
-# Copyright 1999-2021 Gentoo Authors |
262 |
-# Distributed under the terms of the GNU General Public License v2 |
263 |
- |
264 |
-EAPI=7 |
265 |
- |
266 |
-inherit desktop flag-o-matic linux-info linux-mod multilib-minimal \ |
267 |
- nvidia-driver systemd toolchain-funcs unpacker udev |
268 |
- |
269 |
-AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" |
270 |
-ARM64_NV_PACKAGE="NVIDIA-Linux-aarch64-${PV}" |
271 |
- |
272 |
-NV_URI="https://us.download.nvidia.com/XFree86/" |
273 |
-SRC_URI=" |
274 |
- amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) |
275 |
- tools? ( |
276 |
- https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2 |
277 |
- )" |
278 |
- |
279 |
-EMULTILIB_PKG="true" |
280 |
- |
281 |
-LICENSE="GPL-2 NVIDIA-r2" |
282 |
-SLOT="0/${PV%%.*}" |
283 |
-# TODO: for arm64, keyword virtual/opencl on arm64 |
284 |
-KEYWORDS="-* amd64" |
285 |
-IUSE="compat +driver +kms multilib static-libs +tools uvm wayland +X" |
286 |
-REQUIRED_USE=" |
287 |
- tools? ( X ) |
288 |
- static-libs? ( tools )" |
289 |
- |
290 |
-COMMON=" |
291 |
- driver? ( acct-group/video ) |
292 |
- tools? ( |
293 |
- dev-libs/atk |
294 |
- dev-libs/glib:2 |
295 |
- dev-libs/jansson |
296 |
- x11-libs/cairo |
297 |
- x11-libs/gdk-pixbuf |
298 |
- x11-libs/gtk+:3 |
299 |
- x11-libs/libX11 |
300 |
- x11-libs/libXext |
301 |
- x11-libs/libXrandr |
302 |
- x11-libs/libXv |
303 |
- x11-libs/libXxf86vm |
304 |
- x11-libs/pango[X] |
305 |
- ) |
306 |
- X? ( |
307 |
- app-misc/pax-utils |
308 |
- media-libs/libglvnd[X,${MULTILIB_USEDEP}] |
309 |
- >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}] |
310 |
- )" |
311 |
-DEPEND=" |
312 |
- ${COMMON} |
313 |
- virtual/linux-sources |
314 |
- tools? ( sys-apps/dbus )" |
315 |
-RDEPEND=" |
316 |
- ${COMMON} |
317 |
- net-libs/libtirpc |
318 |
- uvm? ( >=virtual/opencl-3 ) |
319 |
- wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) |
320 |
- X? ( |
321 |
- <x11-base/xorg-server-1.20.99:= |
322 |
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] |
323 |
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] |
324 |
- sys-libs/zlib[${MULTILIB_USEDEP}] |
325 |
- )" |
326 |
- |
327 |
-QA_PREBUILT="opt/* usr/lib*" |
328 |
-S="${WORKDIR}" |
329 |
-NV_KV_MAX_PLUS="5.12" |
330 |
-CONFIG_CHECK=" |
331 |
- !DEBUG_MUTEXES |
332 |
- ~!I2C_NVIDIA_GPU |
333 |
- ~!LOCKDEP |
334 |
- ~DRM |
335 |
- ~DRM_KMS_HELPER |
336 |
- ~SYSVIPC" |
337 |
- |
338 |
-PATCHES=( "${FILESDIR}"/${PN}-440.26-locale.patch ) |
339 |
- |
340 |
-pkg_pretend() { |
341 |
- nvidia-driver_check |
342 |
-} |
343 |
- |
344 |
-pkg_setup() { |
345 |
- nvidia-driver_check |
346 |
- |
347 |
- # try to turn off distcc and ccache for people that have a problem with it |
348 |
- export DISTCC_DISABLE=1 |
349 |
- export CCACHE_DISABLE=1 |
350 |
- |
351 |
- if use driver; then |
352 |
- MODULE_NAMES="nvidia(video:${S}/kernel)" |
353 |
- use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)" |
354 |
- use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)" |
355 |
- |
356 |
- # This needs to run after MODULE_NAMES (so that the eclass checks |
357 |
- # whether the kernel supports loadable modules) but before BUILD_PARAMS |
358 |
- # is set (so that KV_DIR is populated). |
359 |
- linux-mod_pkg_setup |
360 |
- |
361 |
- BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ |
362 |
- SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1" |
363 |
- |
364 |
- # linux-mod_src_compile calls set_arch_to_kernel, which |
365 |
- # sets the ARCH to x86 but NVIDIA's wrapping Makefile |
366 |
- # expects x86_64 or i386 and then converts it to x86 |
367 |
- # later on in the build process |
368 |
- BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" |
369 |
- fi |
370 |
-} |
371 |
- |
372 |
-src_prepare() { |
373 |
- gunzip *1.gz || die |
374 |
- |
375 |
- if use tools; then |
376 |
- cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die |
377 |
- sed -i \ |
378 |
- -e "s:@PV@:${PV}:g" \ |
379 |
- "${WORKDIR}"/nvidia-settings-linker.patch \ |
380 |
- || die |
381 |
- eapply "${WORKDIR}"/nvidia-settings-linker.patch |
382 |
- |
383 |
- # remove GTK2 support entirely (#592730) |
384 |
- sed -i \ |
385 |
- -e '/^GTK2LIB = /d;/INSTALL.*GTK2LIB/,+1d' \ |
386 |
- nvidia-settings-${PV}/src/Makefile || die |
387 |
- fi |
388 |
- |
389 |
- default |
390 |
- |
391 |
- if ! [[ -f nvidia_icd.json ]]; then |
392 |
- cp nvidia_icd.json.template nvidia_icd.json || die |
393 |
- sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die |
394 |
- fi |
395 |
-} |
396 |
- |
397 |
-src_configure() { |
398 |
- tc-export AR CC LD OBJCOPY |
399 |
- default |
400 |
-} |
401 |
- |
402 |
-src_compile() { |
403 |
- pushd kernel >/dev/null || die |
404 |
- if use driver; then |
405 |
- BUILD_TARGETS=module linux-mod_src_compile \ |
406 |
- KERNELRELEASE="${KV_FULL}" \ |
407 |
- src="${KERNEL_DIR}" |
408 |
- fi |
409 |
- popd >/dev/null || die |
410 |
- |
411 |
- if use tools; then |
412 |
- emake -C nvidia-settings-${PV}/src/libXNVCtrl \ |
413 |
- DO_STRIP= \ |
414 |
- LIBDIR="$(get_libdir)" \ |
415 |
- NVLD="$(tc-getLD)" \ |
416 |
- NV_VERBOSE=1 \ |
417 |
- OUTPUTDIR=. \ |
418 |
- RANLIB="$(tc-getRANLIB)" |
419 |
- |
420 |
- emake -C nvidia-settings-${PV}/src \ |
421 |
- DO_STRIP= \ |
422 |
- GTK3_AVAILABLE=1 \ |
423 |
- LIBDIR="$(get_libdir)" \ |
424 |
- NVLD="$(tc-getLD)" \ |
425 |
- NVML_ENABLED=0 \ |
426 |
- NV_USE_BUNDLED_LIBJANSSON=0 \ |
427 |
- NV_VERBOSE=1 \ |
428 |
- OUTPUTDIR=. |
429 |
- fi |
430 |
-} |
431 |
- |
432 |
-# Install nvidia library: |
433 |
-# the first parameter is the library to install |
434 |
-# the second parameter is the provided soversion |
435 |
-# the third parameter is the target directory if it is not /usr/lib |
436 |
-donvidia() { |
437 |
- # Full path to library |
438 |
- nv_LIB="${1}" |
439 |
- |
440 |
- # SOVER to use |
441 |
- nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})" |
442 |
- |
443 |
- # Where to install |
444 |
- nv_DEST="${2}" |
445 |
- |
446 |
- # Get just the library name |
447 |
- nv_LIBNAME=$(basename "${nv_LIB}") |
448 |
- |
449 |
- if [[ -n ${nv_DEST} ]]; then |
450 |
- exeinto ${nv_DEST} |
451 |
- action="doexe" |
452 |
- else |
453 |
- nv_DEST="/usr/$(get_libdir)" |
454 |
- action="dolib.so" |
455 |
- fi |
456 |
- |
457 |
- # Install the library |
458 |
- ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}" |
459 |
- |
460 |
- # If the library has a SONAME and SONAME does not match the library name, |
461 |
- # then we need to create a symlink |
462 |
- if [[ -n ${nv_SOVER} && ${nv_SOVER} != ${nv_LIBNAME} ]]; then |
463 |
- dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} |
464 |
- fi |
465 |
- |
466 |
- dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} |
467 |
-} |
468 |
- |
469 |
-src_install() { |
470 |
- if use driver; then |
471 |
- linux-mod_src_install |
472 |
- |
473 |
- # Add the aliases |
474 |
- # This file is tweaked with the appropriate video group in |
475 |
- # pkg_preinst, see bug #491414 |
476 |
- insinto /etc/modprobe.d |
477 |
- newins "${FILESDIR}"/nvidia-460.conf nvidia.conf |
478 |
- |
479 |
- if use uvm; then |
480 |
- doins "${FILESDIR}"/nvidia-rmmod.conf |
481 |
- udev_newrules "${FILESDIR}"/nvidia-uvm.udev-rule 99-nvidia-uvm.rules |
482 |
- else |
483 |
- sed -e 's|nvidia-uvm ||g' "${FILESDIR}"/nvidia-rmmod.conf \ |
484 |
- > "${T}"/nvidia-rmmod.conf || die |
485 |
- doins "${T}"/nvidia-rmmod.conf |
486 |
- fi |
487 |
- |
488 |
- # Ensures that our device nodes are created when not using X |
489 |
- exeinto "$(get_udevdir)" |
490 |
- newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh |
491 |
- udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules |
492 |
- fi |
493 |
- |
494 |
- # NVIDIA kernel <-> userspace driver config lib |
495 |
- donvidia libnvidia-cfg.so.${PV} |
496 |
- |
497 |
- # NVIDIA framebuffer capture library |
498 |
- donvidia libnvidia-fbc.so.${PV} |
499 |
- |
500 |
- # NVIDIA video encode/decode <-> CUDA |
501 |
- donvidia libnvcuvid.so.${PV} |
502 |
- donvidia libnvidia-encode.so.${PV} |
503 |
- |
504 |
- if use X; then |
505 |
- # Xorg DDX driver |
506 |
- exeinto /usr/$(get_libdir)/xorg/modules/drivers |
507 |
- doexe nvidia_drv.so |
508 |
- |
509 |
- # Xorg GLX driver |
510 |
- donvidia libglxserver_nvidia.so.${PV} \ |
511 |
- /usr/$(get_libdir)/xorg/modules/extensions |
512 |
- |
513 |
- # Xorg nvidia.conf |
514 |
- insinto /usr/share/X11/xorg.conf.d |
515 |
- newins {,50-}nvidia-drm-outputclass.conf |
516 |
- |
517 |
- insinto /usr/share/glvnd/egl_vendor.d |
518 |
- doins 10_nvidia.json |
519 |
- fi |
520 |
- |
521 |
- if use wayland; then |
522 |
- insinto /usr/share/egl/egl_external_platform.d |
523 |
- doins 10_nvidia_wayland.json |
524 |
- fi |
525 |
- |
526 |
- insinto /etc/vulkan/icd.d |
527 |
- doins nvidia_icd.json |
528 |
- |
529 |
- insinto /etc/vulkan/implicit_layer.d |
530 |
- doins nvidia_layers.json |
531 |
- |
532 |
- # OpenCL ICD for NVIDIA |
533 |
- insinto /etc/OpenCL/vendors |
534 |
- doins nvidia.icd |
535 |
- |
536 |
- # Helper Apps |
537 |
- exeinto /opt/bin/ |
538 |
- |
539 |
- use X && doexe nvidia-xconfig |
540 |
- |
541 |
- doexe nvidia-cuda-mps-control |
542 |
- doexe nvidia-cuda-mps-server |
543 |
- doexe nvidia-debugdump |
544 |
- doexe nvidia-persistenced |
545 |
- doexe nvidia-smi |
546 |
- |
547 |
- # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092) |
548 |
- doexe nvidia-modprobe |
549 |
- fowners root:video /opt/bin/nvidia-modprobe |
550 |
- fperms 4710 /opt/bin/nvidia-modprobe |
551 |
- dosym ../../opt/bin/nvidia-modprobe /usr/bin/nvidia-modprobe |
552 |
- |
553 |
- doman nvidia-cuda-mps-control.1 |
554 |
- doman nvidia-modprobe.1 |
555 |
- doman nvidia-persistenced.1 |
556 |
- newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi |
557 |
- newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced |
558 |
- newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced |
559 |
- |
560 |
- if use tools; then |
561 |
- emake -C nvidia-settings-${PV}/src/ \ |
562 |
- DESTDIR="${ED}" \ |
563 |
- DO_STRIP= \ |
564 |
- GTK3_AVAILABLE=1 \ |
565 |
- LIBDIR="${ED}/usr/$(get_libdir)" \ |
566 |
- NV_USE_BUNDLED_LIBJANSSON=0 \ |
567 |
- NV_VERBOSE=1 \ |
568 |
- OUTPUTDIR=. \ |
569 |
- PREFIX=/usr \ |
570 |
- install |
571 |
- |
572 |
- if use static-libs; then |
573 |
- dolib.a nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a |
574 |
- |
575 |
- insinto /usr/include/NVCtrl |
576 |
- doins nvidia-settings-${PV}/src/libXNVCtrl/*.h |
577 |
- fi |
578 |
- |
579 |
- insinto /usr/share/nvidia/ |
580 |
- doins nvidia-application-profiles-${PV}-key-documentation |
581 |
- |
582 |
- insinto /etc/nvidia |
583 |
- newins \ |
584 |
- nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc |
585 |
- |
586 |
- doicon nvidia-settings.png |
587 |
- domenu "${FILESDIR}"/nvidia-settings.desktop |
588 |
- |
589 |
- exeinto /etc/X11/xinit/xinitrc.d |
590 |
- newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings |
591 |
- fi |
592 |
- |
593 |
- dobin nvidia-bug-report.sh |
594 |
- |
595 |
- systemd_dounit *.service |
596 |
- dobin nvidia-sleep.sh |
597 |
- exeinto /lib/systemd/system-sleep |
598 |
- doexe nvidia |
599 |
- |
600 |
- if has_multilib_profile && use multilib; then |
601 |
- local OABI=${ABI} |
602 |
- for ABI in $(multilib_get_enabled_abis); do |
603 |
- src_install-libs |
604 |
- done |
605 |
- ABI=${OABI} |
606 |
- unset OABI |
607 |
- else |
608 |
- src_install-libs |
609 |
- fi |
610 |
- |
611 |
- is_final_abi || die "failed to iterate through all ABIs" |
612 |
- |
613 |
- # Documentation |
614 |
- newdoc README.txt README |
615 |
- dodoc NVIDIA_Changelog |
616 |
- doman nvidia-smi.1 |
617 |
- use X && doman nvidia-xconfig.1 |
618 |
- use tools && doman nvidia-settings.1 |
619 |
- doman nvidia-cuda-mps-control.1 |
620 |
- |
621 |
- readme.gentoo_create_doc |
622 |
- |
623 |
- dodoc -r supported-gpus |
624 |
- |
625 |
- docinto html |
626 |
- dodoc -r html/. |
627 |
-} |
628 |
- |
629 |
-src_install-libs() { |
630 |
- local inslibdir=$(get_libdir) |
631 |
- local GL_ROOT="/usr/$(get_libdir)" |
632 |
- local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" |
633 |
- local nv_libdir="${S}" |
634 |
- |
635 |
- if has_multilib_profile && [[ ${ABI} == "x86" ]]; then |
636 |
- nv_libdir="${S}"/32 |
637 |
- fi |
638 |
- |
639 |
- if use X; then |
640 |
- NV_GLX_LIBRARIES=( |
641 |
- "libEGL_nvidia.so.${PV} ${GL_ROOT}" |
642 |
- "libGLESv1_CM_nvidia.so.${PV} ${GL_ROOT}" |
643 |
- "libGLESv2_nvidia.so.${PV} ${GL_ROOT}" |
644 |
- "libGLX_nvidia.so.${PV} ${GL_ROOT}" |
645 |
- "libOpenCL.so.1.0.0 ${CL_ROOT}" |
646 |
- "libcuda.so.${PV}" |
647 |
- "libnvcuvid.so.${PV}" |
648 |
- "libnvidia-compiler.so.${PV}" |
649 |
- "libnvidia-eglcore.so.${PV}" |
650 |
- "libnvidia-encode.so.${PV}" |
651 |
- "libnvidia-fbc.so.${PV}" |
652 |
- "libnvidia-glcore.so.${PV}" |
653 |
- "libnvidia-glsi.so.${PV}" |
654 |
- "libnvidia-glvkspirv.so.${PV}" |
655 |
- "libnvidia-ifr.so.${PV}" |
656 |
- "libnvidia-opencl.so.${PV}" |
657 |
- "libnvidia-ptxjitcompiler.so.${PV}" |
658 |
- "libvdpau_nvidia.so.${PV}" |
659 |
- ) |
660 |
- |
661 |
- if use wayland && [[ ${ABI} == "amd64" ]]; then |
662 |
- NV_GLX_LIBRARIES+=( |
663 |
- "libnvidia-egl-wayland.so.1.1.5" |
664 |
- ) |
665 |
- fi |
666 |
- |
667 |
- NV_GLX_LIBRARIES+=( |
668 |
- "libnvidia-ml.so.${PV}" |
669 |
- "libnvidia-tls.so.${PV}" |
670 |
- ) |
671 |
- |
672 |
- if [[ ${ABI} == "amd64" ]]; then |
673 |
- NV_GLX_LIBRARIES+=( |
674 |
- "libnvidia-cbl.so.${PV}" |
675 |
- "libnvidia-ngx.so.${PV}" |
676 |
- "libnvidia-rtcore.so.${PV}" |
677 |
- "libnvoptix.so.${PV}" |
678 |
- ) |
679 |
- fi |
680 |
- |
681 |
- local nv_lib |
682 |
- for nv_lib in "${NV_GLX_LIBRARIES[@]}"; do |
683 |
- donvidia "${nv_libdir}"/${nv_lib} |
684 |
- done |
685 |
- fi |
686 |
-} |
687 |
- |
688 |
-pkg_preinst() { |
689 |
- if use driver; then |
690 |
- linux-mod_pkg_preinst |
691 |
- |
692 |
- local videogroup="$(getent group video | cut -d ':' -f 3)" |
693 |
- if [[ -z ${videogroup} ]]; then |
694 |
- eerror "Failed to determine the video group gid" |
695 |
- die "Failed to determine the video group gid" |
696 |
- else |
697 |
- sed -i \ |
698 |
- -e "s:PACKAGE:${PF}:g" \ |
699 |
- -e "s:VIDEOGID:${videogroup}:" \ |
700 |
- "${ED}"/etc/modprobe.d/nvidia.conf || die |
701 |
- fi |
702 |
- fi |
703 |
- |
704 |
- # Clean the dynamic libGL stuff's home to ensure |
705 |
- # we dont have stale libs floating around |
706 |
- rm -rf "${EROOT}"/usr/lib/opengl/nvidia/* || die |
707 |
- # Make sure we nuke the old nvidia-glx's env.d file |
708 |
- rm -f "${EROOT}"/etc/env.d/09nvidia || die |
709 |
-} |
710 |
- |
711 |
-pkg_postinst() { |
712 |
- use driver && linux-mod_pkg_postinst |
713 |
- |
714 |
- readme.gentoo_print_elog |
715 |
- |
716 |
- if ! use X; then |
717 |
- elog "You have elected to not install the X.org driver. Along with" |
718 |
- elog "this the OpenGL libraries and VDPAU libraries were not" |
719 |
- elog "installed. Additionally, once the driver is loaded your card" |
720 |
- elog "and fan will run at max speed which may not be desirable." |
721 |
- elog "Use the 'nvidia-smi' init script to have your card and fan" |
722 |
- elog "speed scale appropriately." |
723 |
- elog |
724 |
- fi |
725 |
- if ! use tools; then |
726 |
- elog "USE=tools controls whether the nvidia-settings application" |
727 |
- elog "is installed. If you would like to use it, enable that" |
728 |
- elog "flag and re-emerge this ebuild. Optionally you can install" |
729 |
- elog "media-video/nvidia-settings" |
730 |
- elog |
731 |
- fi |
732 |
- |
733 |
- elog "To enable nvidia sleep services under systemd, run these commands:" |
734 |
- elog " systemctl enable nvidia-suspend.service" |
735 |
- elog " systemctl enable nvidia-hibernate.service" |
736 |
- elog " systemctl enable nvidia-resume.service" |
737 |
- elog "Set the NVreg_TemporaryFilePath kernel module parameter to a" |
738 |
- elog "suitable path in case the default of /tmp does not work for you" |
739 |
- elog "For more information see:" |
740 |
- elog "${EROOT}/usr/share/doc/${PF}/html/powermanagement.html" |
741 |
-} |
742 |
- |
743 |
-pkg_postrm() { |
744 |
- use driver && linux-mod_pkg_postrm |
745 |
-} |