Gentoo Archives: gentoo-commits

From: Jeroen Roovers <jer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-drivers/nvidia-drivers/
Date: Tue, 26 Feb 2019 16:50:34
Message-Id: 1551199824.6dcc091f6aa74a598a015d62d9e576d75626f8c6.jer@gentoo
1 commit: 6dcc091f6aa74a598a015d62d9e576d75626f8c6
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 26 16:46:00 2019 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 26 16:50:24 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6dcc091f
7
8 x11-drivers/nvidia-drivers: Old
9
10 Package-Manager: Portage-2.3.62, Repoman-2.3.12
11 Bug: https://bugs.gentoo.org/678844
12 Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
13
14 x11-drivers/nvidia-drivers/Manifest | 12 -
15 .../nvidia-drivers/nvidia-drivers-390.87.ebuild | 582 --------------------
16 .../nvidia-drivers/nvidia-drivers-410.93.ebuild | 585 ---------------------
17 .../nvidia-drivers/nvidia-drivers-418.30.ebuild | 578 --------------------
18 4 files changed, 1757 deletions(-)
19
20 diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
21 index 5976a883c49..d88c7f17f17 100644
22 --- a/x11-drivers/nvidia-drivers/Manifest
23 +++ b/x11-drivers/nvidia-drivers/Manifest
24 @@ -1,32 +1,20 @@
25 DIST NVIDIA-FreeBSD-x86-340.107.tar.gz 60305952 BLAKE2B b634bfd610653f1c546b68e87d934c5d0e25a2e5be6df15e0cb6016793274b4cf08577669e61c35976f3482da2221b05797459b2814965bcfdbf519c8a6d2681 SHA512 fe09e1b3dd870a07b4edd163d302e2d98f00e139d05a8fa627c292182b61d2bd9b37eb746d639ba592dcf90fecedc57430cf1ef76b6522785ffcb3fd46fe9ba0
26 DIST NVIDIA-FreeBSD-x86-390.116.tar.gz 64325348 BLAKE2B 67312ba0f5b1e94a540a90e3787c339b023e36ef3da0deb6ddd2e0aaa22610b1a399be8ee5bdb35f6ca7cc5d1927b6f1e4d8c2e19353af863826f031cd0ab7bc SHA512 8494efa8c2e2dbc2295bb0fd150e72ca851504172da2456c2ed6c311ed952f62e9b2352817e6afdb94012d0881728f9320b056da8876076490076e07c3f7f6a1
27 -DIST NVIDIA-FreeBSD-x86-390.87.tar.gz 64326801 BLAKE2B 91cf9e77040d8c710a0fef58f9bae685a86962f8460a5d55e2c0733dc7bd2050c910bbd0732bb89efb8550d501b08c02e0587118ea767ba768dcf1c356e0e872 SHA512 b7ff9f4e61de08c0626e5e55c1f51e3451640043066944d791f79f4c0b57f39211c0648a2551c0b5ed1622809d7c9579e24b8ee9a46a7988319e25ab709c1400
28 DIST NVIDIA-FreeBSD-x86_64-340.107.tar.gz 61179967 BLAKE2B c12c7c07c090fd7bca78a30082890d0b0330dde07ce9beacdb94fad97d40e9ff9e1413fc36fd94116821137e74076d99a82ab85ecd0a8e16d52b47abeb747802 SHA512 661a4cc79a0adc9a1abebfb3567c26e69628266794b5b539c112112a0989760ea1ea2d8c35a5fe7539b579d4e9cef2685e3e1d12fc7031cd6d1b743c23eadc52
29 DIST NVIDIA-FreeBSD-x86_64-390.116.tar.gz 63651658 BLAKE2B ae1714b5b279dd6f552ed11b8dee0b4ac322903a7c9f4b7b7906dea8c5847e34950d9c4c6f616337408b42100b84c1aaaf66ee445db2d1795ccdb8762d2088fb SHA512 022fa558cd2a8014bc67ba86deba603505000cca3f99d91a664db81cfe93ae88b667af74989b40b04cb8cd086c5dcb8bf0858170f92e464bbe13fc4c7fb307aa
30 -DIST NVIDIA-FreeBSD-x86_64-390.87.tar.gz 63648591 BLAKE2B 88aa38b11b64b2ad91f723ec84a2adb6829571136aabb1441a9119418395d5f143736487902f0c60b49ebc1284f3100fbd089e4c941cdd3519ab8511cc1d3261 SHA512 0865fef8b8a3be8f6d9fc81908b162fd6062ba0ea81fd00200e7b2a1e3149ef62408b46bc4ccb7a77f1ac943557a22b13a10cfdde084f0b76cf2b23432e57540
31 DIST NVIDIA-FreeBSD-x86_64-410.104.tar.gz 61995820 BLAKE2B 281b7567fcba6e7457bcaf5a91759670ca6f5f041efbd407237852a31dbd6d13f1df18d54cede17b0f8acd4a66fdded123de91691938dee03be077f1cf50e29d SHA512 77097ec2bc446a18f98a8da93964033054cab2e79759d296f12d1392fd65aec51c279c2823e3bebf0ccb3bb1130c5f03998f71ea1d6b245af1daf890ec8f3304
32 -DIST NVIDIA-FreeBSD-x86_64-410.93.tar.gz 61977979 BLAKE2B a662fa13866cfb36ef61a0b9dd459519e26ea93a6ad6ae7bf34075fae8e7622a91707d88cec8de0660513cb959c3596e8b6169357891c83e847870ecffd72928 SHA512 ecdd5270f9d5f32117d83cd3e3cf0376f0b37c748fe164e702c4230d225c6b28bdbbea4334555b6928d05f1a7cfaf87caf20dd2e7e06e1259c526f6bd50e4d0e
33 DIST NVIDIA-FreeBSD-x86_64-415.27.tar.gz 62389955 BLAKE2B 39ac5970ef1a6ffbb03abe8b758a6f5d7eaca787231845fa4b4bff5f26aa770fb7c695bbd5585d919c934c65b9ed0cfe42f9674bcaabd796c9bd8b89cea87ee6 SHA512 857d1523bad2fca21c75b45c29066be0f530afa8ca124806bcaa36509ac5135df1c4037e6b09e5718c701f085b3608925e2b1fea45d0681e69a99ef709c307d0
34 -DIST NVIDIA-FreeBSD-x86_64-418.30.tar.gz 61657913 BLAKE2B b6e5219dbdacf889a55a9c411f16d1b5a0ccb3a7e8e97b013df5b57ddaa5a89a9079a6fa55d69b4fcdb667dfbd7d1313590af5e24813510c8d411af7744cac7d SHA512 7cd95299fe5244c359bd2ae90a5dc30b014ae4ebc6a08e9f616b0c6c8d015b2832f174c68dc1ac1d905eab355092dd5c6ff1de2f7f2d24cb184ac49fb7ef6777
35 DIST NVIDIA-FreeBSD-x86_64-418.43.tar.gz 61479168 BLAKE2B 7ed91e8ba7c93ab69f45a916fb200c40b6d4ee66018d11f1216fc64828a5c402bdf45cc34a44444a19abd2af59d6844c7a9e0d1b858e9c0c3cdd49b3abbbb3e7 SHA512 1ceed9548be7a0ef9b5f4094e60a7c0c9f707d152f5f7d41d161e5e008b0266b0e178c4c9252b073e2cc440fdb6b0952ccce87dcbf4d5d13a86b4dcd790589f5
36 DIST NVIDIA-Linux-armv7l-gnueabihf-390.116.run 28852021 BLAKE2B 82eb44ea1bd50610218c9ffe4f7e586d2541cb7d0ca6692feeb7a26ea323d7304e2d09e77a20e02fb529b19d2ca75f0819df07c3cd27d72a5b6d9ceac6984fa8 SHA512 7aa93f42a36aa910388f901879659e0b03ec8a272cee3caac553b960603417e5b23f1bd88d9dd5892f3509d7a029a29c067200c8ed577ed98aa24f034dd66475
37 -DIST NVIDIA-Linux-armv7l-gnueabihf-390.87.run 29078256 BLAKE2B a7ce24bcaf82e6c2c95cd11a0d9e0e2aa69c717b8455d4ce0a79a9c03c92f5f6b84107dea6347dedc5c4f8fe076e616fc7a36053c6a5f571af9d794bada6cb1f SHA512 3f8ef4eabc7275685bd5d887c6b7dc20786baab1f4a89bfb23ae6c8d837188d93369c777915d3ea010b08e578c4fb7318d9428811971470e31a8b8b4f51e240f
38 DIST NVIDIA-Linux-x86-340.107.run 39016798 BLAKE2B 2632c8f257d0cf7c5b9294eb2c0b763eee6feb60eacc316024655971e4d067c4af6548aab3b7b2b295792b064f3f3ac3e6403a2ecfa096761d308dfb6b2569b8 SHA512 0add713942bcdb639d19b5c36f5e0cea14f9e07490191d46dfeba0515ede7700fd8e9467ec531d38329fe1e76bf45905e70e0d440e7bc2dc79c1d767eab03338
39 DIST NVIDIA-Linux-x86-390.116.run 47707973 BLAKE2B 33b58fb600df83d7e132b428de952f583f1d300af45ff00c4302b48625af370baddab0ef34974dbe26e284cd907e27c024c80f9453abdfc6296bd2575c6481df SHA512 be9aa735d2d0a3e14b4a7dddcbe74ef156740365e93eefe853a03ecae392af6875add41307b889e59d62516f7efe292b12c0a9a29916e8b4ce144b817eed2c39
40 -DIST NVIDIA-Linux-x86-390.87.run 47959124 BLAKE2B bb799a53b6d25ecd0e6013cea544402c25332efcedf0db5c490dc7ebfa064f97a31427d529f0453092e0f6495a996acb8ffcdd29dc1fed5fc8af31514d959c80 SHA512 18c5ef058098c0f055bada06888ee07da4d1455d90d393357483c289eab27969d49a593318d28e535941e7ebacde33e349f3a1cb2f7c627366ba5c6b7835ccbd
41 DIST NVIDIA-Linux-x86_64-340.107.run 70233686 BLAKE2B 821a2672dcc3b546fbb3f826230fb06741503d75b06f72cb407dd3c9de4f2cbd150bff34e554dca8aa86e7f6bf64ce4f7f9b52976799a477c6c2659aaa5bb4d3 SHA512 51df9370526732db099a8a925d35cdf1317ae2b0ab2c130eaf82373f25186165b4af7d44f71e51e2a68f7d07c7ae3f441a6c6c4be8467003b15dc770c4f4e89b
42 DIST NVIDIA-Linux-x86_64-390.116.run 82282245 BLAKE2B 4dc5a1455eca985be5831e8670f461a11af28a31b07a266b633e5547751871da2cbe5753bc5f11f8a109bda50387b422984d2afff2d7284d8564edb4405421b6 SHA512 6afad9db6c56d475e34f6f4ee7a8a8351e132aab69fd3ad467a5f559a70cebda09dbd3ecfddd699b59c50903b81450b00c9197d05e149c759c2bb5d0a72d6fe8
43 -DIST NVIDIA-Linux-x86_64-390.87.run 82690871 BLAKE2B b43a45a7d48160a72185417360a4ff4238922f6d77c7b58c0562f0e01c8aa33e89057e8a5d354e8d3c8e6fa86acf8908a6c2eab81e06158a92908eec18a9b02e SHA512 f4883744f5e07150677918669eed03c7b87774f752112aabd52d903a09ae16351b34105075da2ff0fcb7a847cf66ec17e9797826859fcaecc44fdcd464a61805
44 DIST NVIDIA-Linux-x86_64-410.104.run 106042115 BLAKE2B 2f977d6afd5484fb630e2eeeca3c7394f9e4c65e471ad426ee450cfb61eeed149938735107f166e10acae320fd71c020fcb74662fb350fa6f9dc384fe68744dc SHA512 fe21a4d89f4ed74fb597c529d45964b9b5aca6ac58729a0a5bb8d6a3a00eb8f44a20807d12ad778989a7cb120943c8ee537dcfaa63881d121d96df110cc3b419
45 -DIST NVIDIA-Linux-x86_64-410.93.run 107257681 BLAKE2B 56e9b6a17ab4d2fe2f18d90b4e209fe048c53dc43846ee9c8bd0960999a06ef9d9b6ba7e4c242f77cc35cfc5b9a0e2ae24aa5f07f68cb7662bd5010de41a9b36 SHA512 1132884210e447d20768c4ae84ff572c9f6886fb9a082da4d229a03c13932a5c6ccc518cad3311a9302b6a0d9e9675e3a53199e7183e07c81282d46883d26105
46 DIST NVIDIA-Linux-x86_64-415.27.run 108399659 BLAKE2B 05fb81a4ab8626d0170a30b70ed114c639ba7f0e5ac260d2f38cb5042a4d6052e40ada51cf2feff6bae0f394781d77cb70014f390873a715b7d9495b86918bf1 SHA512 5919333136042a227ff36c850d0c57898fb428a77d88633d205a269db4b844356a87f5b1e5c3042f40feaf083d4f82d32df5366820375b601f9d69d98cada0b6
47 -DIST NVIDIA-Linux-x86_64-418.30.run 107191408 BLAKE2B 2d6d2b6da26e7d17f568f65a91ee5a339b54d023595dd381da20df4d27ccf0cce190dda5241290db8c3c231654f36276dfd07628d00d13c8960d63a68337fa4f SHA512 f227923528d54e66d9f79bfaf7239a0e7dd6d59cfa7a7766b36c9a91be091ac0702874f9ed460d4171fb6b67d88adbe2415c70e4f82ff87c8baebd045a493831
48 DIST NVIDIA-Linux-x86_64-418.43.run 106650554 BLAKE2B 296516f37857dbb13490dfa14b94a2dfe7b1becadb9668422879f0d271ecf5d755716dc79f0e647d2ea860436a5bac6e520ffa93a9d8c57aec2307667a1b029e SHA512 bfd43bec59de7523e879354224f2a678b6bcce53136f10d139882d9ea5d100c034fce2a15100607cb4622a3d158dbbfb41aacc528b04307c989c915b78298045
49 DIST nvidia-settings-340.107.tar.bz2 1549413 BLAKE2B 127442ee2c35ceec47ab4f103bdd2d0278c621fcb9be47051111f6f8728ef5699bdc95fe33a3812a807c38c4868b04c2176e2ed218a422171d2a88ac0c00de96 SHA512 593e7e83aa350a3a7beaaa32aca8660d7e203f6f2e460a6e6eabcdc092087f9917ee4e6d141e37ad4e3b0a1b9908c085e4a71d2f579e481a03bbd1c6f75ca776
50 DIST nvidia-settings-390.116.tar.bz2 1109033 BLAKE2B ddcb74c9ecd2134ae39b6d08a81f0d6e454e00274a28d85cc7946961ab361a97cb1e7f94c1771cdab4b2d1b20f0da070ab4ae6acb906d407aa6fb22e9e5de1db SHA512 7ae0d326b4704986b17a53c5278219e3496c11ad0ee38a50bffbb56c70412f68c135354fc13d390737131a9df4c0fbeeb3bea7effcceac1f3b71016c60d760c5
51 -DIST nvidia-settings-390.87.tar.bz2 1109274 BLAKE2B 20eb809ceeade932e89592ac91071e6d3311f4a075812225d68342806b7ab1f9f8ed0399ea7a47241b7974311794852fd932fd8e824065589de6c124a3c81ef3 SHA512 cafdf2bfefac187409dfcffd593ff23eaba5ab7ab8dd85a9f14a4b6a47ffb3649af770bd2615887af9d30de3ef8fedaad7afc2ebe9f60a8ba7355a9004702959
52 DIST nvidia-settings-410.104.tar.bz2 1120639 BLAKE2B 75554b0cca7c022a0f1cc02091f81ccd930e30e1dd5f674cf35b0cfed83c5e235c360b0f28701d39d42017b35b816f975ff177398eb9f59280851c0b8bfd57d3 SHA512 08d938117fca4d471bdff451219e6772fdd1e9c37c0ed623be8506c1cb5ce7ccde4d073848ade9f5bfca14b1a3cf9eb90b4b4bf44375bff43d023815b622b424
53 -DIST nvidia-settings-410.93.tar.bz2 1115704 BLAKE2B 1119181feb2704711593c19a43dce5feb58778d0251cb2dcb8647de7bfb1abe3a7f374bddd62e4c983b07a207bca7c1d99a7ac51cba3ae41f78fb97c4d1e9666 SHA512 4e5a5babae382dbe9f6899e51d3b1081fd7123f9ba5e147f7d5cc1899904892ea8d953983e43643ea4355d06348db40005755a02c7c0ff6ba104eac4a9d450f2
54 DIST nvidia-settings-415.27.tar.bz2 1128013 BLAKE2B 36513252ff3d5f2036c80250e012d79bebfc14daff56fdaabb032856f5f78ce77cf4ce32d6eaee5fe4c1a18db63d5c69d6848517f025c711f133e28b3e509396 SHA512 5ac3b673c41194a1952ec10cd3c961aefd281bb044ecae5c9d11cb55d4555fed44e6056b5a2e97b5b87687743cd7f702f33ce7e0f841f04c8175d63693a24594
55 -DIST nvidia-settings-418.30.tar.bz2 1127071 BLAKE2B 2ff35de4d05a8d1a5f5528a7bc65cb8dfc0a7c67a555b20df5be95e2bb5378018a90007f220db12956ab7b108b77b67bca2e03640613287af5afca927cf303e2 SHA512 4c8de5bc7452083c8999c44a6fd4278d3915eaf1fb2146e05805e141a472c5e13fc6de46c28d28a21ee6215ba21de76d2ab21233a3d220409483f4b36442cfa9
56 DIST nvidia-settings-418.43.tar.bz2 1127336 BLAKE2B 622507f841da051a14bbbbb44b1364310d4224d54b5b00f09a9a2706fdf5900b0a2ccd9be4c94d8d4793158f3ed9cff40706795f29c314312470f0b420dc5104 SHA512 f2750684ad261b820414b78b20f9bcfe2a68f95283a646c75bf488c2dc4b78f3e3732df2839c8bdb45619a53df3712bc6dc575a22fbdcb8edff3c8aacf570a3f
57
58 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.87.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.87.ebuild
59 deleted file mode 100644
60 index a7f8f326d16..00000000000
61 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.87.ebuild
62 +++ /dev/null
63 @@ -1,582 +0,0 @@
64 -# Copyright 1999-2019 Gentoo Authors
65 -# Distributed under the terms of the GNU General Public License v2
66 -
67 -EAPI=6
68 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
69 - portability toolchain-funcs unpacker user udev
70 -
71 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
72 -HOMEPAGE="http://www.nvidia.com/"
73 -
74 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
75 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
76 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
77 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
78 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
79 -
80 -NV_URI="https://us.download.nvidia.com/XFree86/"
81 -SRC_URI="
82 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
83 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
84 - arm? ( ${NV_URI}Linux-x86-ARM/${PV}/${ARM_NV_PACKAGE}.run )
85 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
86 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
87 - tools? (
88 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
89 - )
90 -"
91 -
92 -LICENSE="GPL-2 NVIDIA-r2"
93 -SLOT="0/${PV%.*}"
94 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
95 -RESTRICT="bindist mirror"
96 -EMULTILIB_PKG="true"
97 -
98 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib static-libs +tools uvm wayland +X"
99 -REQUIRED_USE="
100 - tools? ( X )
101 - static-libs? ( tools )
102 -"
103 -
104 -COMMON="
105 - app-eselect/eselect-opencl
106 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
107 - tools? (
108 - dev-libs/atk
109 - dev-libs/glib:2
110 - dev-libs/jansson
111 - gtk3? (
112 - x11-libs/gtk+:3
113 - )
114 - x11-libs/cairo
115 - x11-libs/gdk-pixbuf[X]
116 - x11-libs/gtk+:2
117 - x11-libs/libX11
118 - x11-libs/libXext
119 - x11-libs/libXrandr
120 - x11-libs/libXv
121 - x11-libs/libXxf86vm
122 - x11-libs/pango[X]
123 - )
124 - X? (
125 - >=app-eselect/eselect-opengl-1.0.9
126 - app-misc/pax-utils
127 - )
128 -"
129 -DEPEND="
130 - ${COMMON}
131 - kernel_linux? ( virtual/linux-sources )
132 - tools? ( sys-apps/dbus )
133 -"
134 -RDEPEND="
135 - ${COMMON}
136 - acpi? ( sys-power/acpid )
137 - tools? ( !media-video/nvidia-settings )
138 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
139 - X? (
140 - <x11-base/xorg-server-1.20.99:=
141 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
142 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
143 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
144 - sys-libs/zlib[${MULTILIB_USEDEP}]
145 - )
146 -"
147 -QA_PREBUILT="opt/* usr/lib*"
148 -S=${WORKDIR}/
149 -
150 -nvidia_drivers_versions_check() {
151 - if use amd64 && has_multilib_profile && \
152 - [ "${DEFAULT_ABI}" != "amd64" ]; then
153 - eerror "This ebuild doesn't currently support changing your default ABI"
154 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
155 - fi
156 -
157 - if use kernel_linux && kernel_is ge 4 19; then
158 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
159 - ewarn "which are limited to the following kernels:"
160 - ewarn "<sys-kernel/gentoo-sources-4.19"
161 - ewarn "<sys-kernel/vanilla-sources-4.19"
162 - ewarn ""
163 - ewarn "You are free to utilize epatch_user to provide whatever"
164 - ewarn "support you feel is appropriate, but will not receive"
165 - ewarn "support as a result of those changes."
166 - ewarn ""
167 - ewarn "Do not file a bug report about this."
168 - ewarn ""
169 - fi
170 -
171 - # Since Nvidia ships many different series of drivers, we need to give the user
172 - # some kind of guidance as to what version they should install. This tries
173 - # to point the user in the right direction but can't be perfect. check
174 - # nvidia-driver.eclass
175 - nvidia-driver-check-warning
176 -
177 - # Kernel features/options to check for
178 - CONFIG_CHECK="!DEBUG_MUTEXES ~!LOCKDEP ~MTRR ~SYSVIPC ~ZONE_DMA"
179 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
180 -
181 - # Now do the above checks
182 - use kernel_linux && check_extra_config
183 -}
184 -
185 -pkg_pretend() {
186 - nvidia_drivers_versions_check
187 -}
188 -
189 -pkg_setup() {
190 - nvidia_drivers_versions_check
191 -
192 - # try to turn off distcc and ccache for people that have a problem with it
193 - export DISTCC_DISABLE=1
194 - export CCACHE_DISABLE=1
195 -
196 - if use driver && use kernel_linux; then
197 - MODULE_NAMES="nvidia(video:${S}/kernel)"
198 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
199 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
200 -
201 - # This needs to run after MODULE_NAMES (so that the eclass checks
202 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
203 - # is set (so that KV_DIR is populated).
204 - linux-mod_pkg_setup
205 -
206 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
207 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
208 -
209 - # linux-mod_src_compile calls set_arch_to_kernel, which
210 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
211 - # expects x86_64 or i386 and then converts it to x86
212 - # later on in the build process
213 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
214 - fi
215 -
216 - if use kernel_linux && kernel_is lt 2 6 9; then
217 - eerror "You must build this against 2.6.9 or higher kernels."
218 - fi
219 -
220 - # set variables to where files are in the package structure
221 - if use kernel_FreeBSD; then
222 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
223 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
224 - NV_DOC="${S}/doc"
225 - NV_OBJ="${S}/obj"
226 - NV_SRC="${S}/src"
227 - NV_MAN="${S}/x11/man"
228 - NV_X11="${S}/obj"
229 - NV_SOVER=1
230 - elif use kernel_linux; then
231 - NV_DOC="${S}"
232 - NV_OBJ="${S}"
233 - NV_SRC="${S}/kernel"
234 - NV_MAN="${S}"
235 - NV_X11="${S}"
236 - NV_SOVER=${PV}
237 - else
238 - die "Could not determine proper NVIDIA package"
239 - fi
240 -}
241 -
242 -src_prepare() {
243 - local man_file
244 - for man_file in "${NV_MAN}"/*1.gz; do
245 - gunzip $man_file || die
246 - done
247 -
248 - if use tools; then
249 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
250 - sed -i \
251 - -e "s:@PV@:${PV}:g" \
252 - "${WORKDIR}"/nvidia-settings-linker.patch || die
253 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
254 - fi
255 -
256 - default
257 -
258 - if ! [ -f nvidia_icd.json ]; then
259 - cp nvidia_icd.json.template nvidia_icd.json || die
260 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
261 - fi
262 -}
263 -
264 -src_compile() {
265 - # This is already the default on Linux, as there's no toplevel Makefile, but
266 - # on FreeBSD there's one and triggers the kernel module build, as we install
267 - # it by itself, pass this.
268 -
269 - cd "${NV_SRC}"
270 - if use kernel_FreeBSD; then
271 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
272 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
273 - elif use driver && use kernel_linux; then
274 - BUILD_TARGETS=module linux-mod_src_compile \
275 - KERNELRELEASE="${KV_FULL}" \
276 - src="${KERNEL_DIR}"
277 - fi
278 -
279 - if use tools; then
280 - emake -C "${S}"/nvidia-settings-${PV}/src \
281 - AR="$(tc-getAR)" \
282 - CC="$(tc-getCC)" \
283 - DO_STRIP= \
284 - LD="$(tc-getCC)" \
285 - LIBDIR="$(get_libdir)" \
286 - NVLD="$(tc-getLD)" \
287 - NV_VERBOSE=1 \
288 - RANLIB="$(tc-getRANLIB)" \
289 - build-xnvctrl
290 -
291 - emake -C "${S}"/nvidia-settings-${PV}/src \
292 - CC="$(tc-getCC)" \
293 - DO_STRIP= \
294 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
295 - LD="$(tc-getCC)" \
296 - LIBDIR="$(get_libdir)" \
297 - NVLD="$(tc-getLD)" \
298 - NVML_ENABLED=0 \
299 - NV_USE_BUNDLED_LIBJANSSON=0 \
300 - NV_VERBOSE=1
301 - fi
302 -}
303 -
304 -# Install nvidia library:
305 -# the first parameter is the library to install
306 -# the second parameter is the provided soversion
307 -# the third parameter is the target directory if it is not /usr/lib
308 -donvidia() {
309 - # Full path to library
310 - nv_LIB="${1}"
311 -
312 - # SOVER to use
313 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
314 -
315 - # Where to install
316 - nv_DEST="${2}"
317 -
318 - # Get just the library name
319 - nv_LIBNAME=$(basename "${nv_LIB}")
320 -
321 - if [[ "${nv_DEST}" ]]; then
322 - exeinto ${nv_DEST}
323 - action="doexe"
324 - else
325 - nv_DEST="/usr/$(get_libdir)"
326 - action="dolib.so"
327 - fi
328 -
329 - # Install the library
330 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
331 -
332 - # If the library has a SONAME and SONAME does not match the library name,
333 - # then we need to create a symlink
334 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
335 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
336 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
337 - fi
338 -
339 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
340 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
341 -}
342 -
343 -src_install() {
344 - if use driver && use kernel_linux; then
345 - linux-mod_src_install
346 -
347 - # Add the aliases
348 - # This file is tweaked with the appropriate video group in
349 - # pkg_preinst, see bug #491414
350 - insinto /etc/modprobe.d
351 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
352 - doins "${FILESDIR}"/nvidia-rmmod.conf
353 -
354 - # Ensures that our device nodes are created when not using X
355 - exeinto "$(get_udevdir)"
356 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
357 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
358 - elif use kernel_FreeBSD; then
359 - if use x86-fbsd; then
360 - insinto /boot/modules
361 - doins "${S}/src/nvidia.kld"
362 - fi
363 -
364 - exeinto /boot/modules
365 - doexe "${S}/src/nvidia.ko"
366 - fi
367 -
368 - # NVIDIA kernel <-> userspace driver config lib
369 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
370 -
371 - # NVIDIA framebuffer capture library
372 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
373 -
374 - # NVIDIA video encode/decode <-> CUDA
375 - if use kernel_linux; then
376 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
377 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
378 - fi
379 -
380 - if use X; then
381 - # Xorg DDX driver
382 - insinto /usr/$(get_libdir)/xorg/modules/drivers
383 - doins ${NV_X11}/nvidia_drv.so
384 -
385 - # Xorg GLX driver
386 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
387 - /usr/$(get_libdir)/opengl/nvidia/extensions
388 -
389 - # Xorg nvidia.conf
390 - if has_version '>=x11-base/xorg-server-1.16'; then
391 - insinto /usr/share/X11/xorg.conf.d
392 - newins {,50-}nvidia-drm-outputclass.conf
393 - fi
394 -
395 - insinto /usr/share/glvnd/egl_vendor.d
396 - doins ${NV_X11}/10_nvidia.json
397 - fi
398 -
399 - if use wayland; then
400 - insinto /usr/share/egl/egl_external_platform.d
401 - doins ${NV_X11}/10_nvidia_wayland.json
402 - fi
403 -
404 - # OpenCL ICD for NVIDIA
405 - if use kernel_linux; then
406 - insinto /etc/OpenCL/vendors
407 - doins ${NV_OBJ}/nvidia.icd
408 - fi
409 -
410 - # Documentation
411 - if use kernel_FreeBSD; then
412 - dodoc "${NV_DOC}/README"
413 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
414 - use tools && doman "${NV_MAN}"/nvidia-settings.1
415 - else
416 - # Docs
417 - newdoc "${NV_DOC}/README.txt" README
418 - dodoc "${NV_DOC}/NVIDIA_Changelog"
419 - doman "${NV_MAN}"/nvidia-smi.1
420 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
421 - use tools && doman "${NV_MAN}"/nvidia-settings.1
422 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
423 - fi
424 -
425 - docinto html
426 - dodoc -r ${NV_DOC}/html/*
427 -
428 - # Helper Apps
429 - exeinto /opt/bin/
430 -
431 - if use X; then
432 - doexe ${NV_OBJ}/nvidia-xconfig
433 -
434 - insinto /etc/vulkan/icd.d
435 - doins nvidia_icd.json
436 - fi
437 -
438 - if use kernel_linux; then
439 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
440 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
441 - doexe ${NV_OBJ}/nvidia-debugdump
442 - doexe ${NV_OBJ}/nvidia-persistenced
443 - doexe ${NV_OBJ}/nvidia-smi
444 -
445 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
446 - doexe ${NV_OBJ}/nvidia-modprobe
447 - fowners root:video /opt/bin/nvidia-modprobe
448 - fperms 4710 /opt/bin/nvidia-modprobe
449 - dosym /{opt,usr}/bin/nvidia-modprobe
450 -
451 - doman nvidia-cuda-mps-control.1
452 - doman nvidia-modprobe.1
453 - doman nvidia-persistenced.1
454 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
455 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
456 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
457 - fi
458 -
459 - if use tools; then
460 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
461 - DESTDIR="${D}" \
462 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
463 - LIBDIR="${D}/usr/$(get_libdir)" \
464 - NV_USE_BUNDLED_LIBJANSSON=0 \
465 - NV_VERBOSE=1 \
466 - PREFIX=/usr \
467 - DO_STRIP= \
468 - install
469 -
470 - if use static-libs; then
471 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
472 -
473 - insinto /usr/include/NVCtrl
474 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
475 - fi
476 -
477 - insinto /usr/share/nvidia/
478 - doins nvidia-application-profiles-${PV}-key-documentation
479 -
480 - insinto /etc/nvidia
481 - newins \
482 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
483 -
484 - # There is no icon in the FreeBSD tarball.
485 - use kernel_FreeBSD || \
486 - doicon ${NV_OBJ}/nvidia-settings.png
487 -
488 - domenu "${FILESDIR}"/nvidia-settings.desktop
489 -
490 - exeinto /etc/X11/xinit/xinitrc.d
491 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
492 - fi
493 -
494 - dobin ${NV_OBJ}/nvidia-bug-report.sh
495 -
496 - if has_multilib_profile && use multilib; then
497 - local OABI=${ABI}
498 - for ABI in $(get_install_abis); do
499 - src_install-libs
500 - done
501 - ABI=${OABI}
502 - unset OABI
503 - else
504 - src_install-libs
505 - fi
506 -
507 - is_final_abi || die "failed to iterate through all ABIs"
508 -
509 - readme.gentoo_create_doc
510 -}
511 -
512 -src_install-libs() {
513 - local inslibdir=$(get_libdir)
514 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
515 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
516 - local nv_libdir="${NV_OBJ}"
517 -
518 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
519 - nv_libdir="${NV_OBJ}"/32
520 - fi
521 -
522 - if use X; then
523 - NV_GLX_LIBRARIES=(
524 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
525 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
526 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
527 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
528 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
529 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
530 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
531 - "libGLX.so.0 ${GL_ROOT}"
532 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
533 - "libGLdispatch.so.0 ${GL_ROOT}"
534 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
535 - "libOpenGL.so.0 ${GL_ROOT}"
536 - "libcuda.so.${NV_SOVER}"
537 - "libnvcuvid.so.${NV_SOVER}"
538 - "libnvidia-compiler.so.${NV_SOVER}"
539 - "libnvidia-eglcore.so.${NV_SOVER}"
540 - "libnvidia-encode.so.${NV_SOVER}"
541 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
542 - "libnvidia-fbc.so.${NV_SOVER}"
543 - "libnvidia-glcore.so.${NV_SOVER}"
544 - "libnvidia-glsi.so.${NV_SOVER}"
545 - "libnvidia-ifr.so.${NV_SOVER}"
546 - "libnvidia-opencl.so.${NV_SOVER}"
547 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
548 - "libvdpau_nvidia.so.${NV_SOVER}"
549 - )
550 -
551 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
552 - then
553 - NV_GLX_LIBRARIES+=(
554 - "libnvidia-egl-wayland.so.1.0.2"
555 - )
556 - fi
557 -
558 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
559 - then
560 - NV_GLX_LIBRARIES+=(
561 - "libnvidia-wfb.so.${NV_SOVER}"
562 - )
563 - fi
564 -
565 - if use kernel_FreeBSD; then
566 - NV_GLX_LIBRARIES+=(
567 - "libnvidia-tls.so.${NV_SOVER}"
568 - )
569 - fi
570 -
571 - if use kernel_linux; then
572 - NV_GLX_LIBRARIES+=(
573 - "libnvidia-ml.so.${NV_SOVER}"
574 - "tls/libnvidia-tls.so.${NV_SOVER}"
575 - )
576 - fi
577 -
578 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
579 - donvidia "${nv_libdir}"/${NV_LIB}
580 - done
581 - fi
582 -}
583 -
584 -pkg_preinst() {
585 - if use driver && use kernel_linux; then
586 - linux-mod_pkg_preinst
587 -
588 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
589 - if [ -z "${videogroup}" ]; then
590 - eerror "Failed to determine the video group gid"
591 - die "Failed to determine the video group gid"
592 - else
593 - sed -i \
594 - -e "s:PACKAGE:${PF}:g" \
595 - -e "s:VIDEOGID:${videogroup}:" \
596 - "${D}"/etc/modprobe.d/nvidia.conf || die
597 - fi
598 - fi
599 -
600 - # Clean the dynamic libGL stuff's home to ensure
601 - # we dont have stale libs floating around
602 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
603 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
604 - fi
605 - # Make sure we nuke the old nvidia-glx's env.d file
606 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
607 - rm -f "${ROOT}"/etc/env.d/09nvidia
608 - fi
609 -}
610 -
611 -pkg_postinst() {
612 - use driver && use kernel_linux && linux-mod_pkg_postinst
613 -
614 - # Switch to the nvidia implementation
615 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
616 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
617 -
618 - readme.gentoo_print_elog
619 -
620 - if ! use X; then
621 - elog "You have elected to not install the X.org driver. Along with"
622 - elog "this the OpenGL libraries and VDPAU libraries were not"
623 - elog "installed. Additionally, once the driver is loaded your card"
624 - elog "and fan will run at max speed which may not be desirable."
625 - elog "Use the 'nvidia-smi' init script to have your card and fan"
626 - elog "speed scale appropriately."
627 - elog
628 - fi
629 - if ! use tools; then
630 - elog "USE=tools controls whether the nvidia-settings application"
631 - elog "is installed. If you would like to use it, enable that"
632 - elog "flag and re-emerge this ebuild. Optionally you can install"
633 - elog "media-video/nvidia-settings"
634 - elog
635 - fi
636 -}
637 -
638 -pkg_prerm() {
639 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
640 -}
641 -
642 -pkg_postrm() {
643 - use driver && use kernel_linux && linux-mod_pkg_postrm
644 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
645 -}
646
647 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-410.93.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-410.93.ebuild
648 deleted file mode 100644
649 index d19a89c0ca9..00000000000
650 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-410.93.ebuild
651 +++ /dev/null
652 @@ -1,585 +0,0 @@
653 -# Copyright 1999-2019 Gentoo Authors
654 -# Distributed under the terms of the GNU General Public License v2
655 -
656 -EAPI=6
657 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
658 - portability toolchain-funcs unpacker user udev
659 -
660 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
661 -HOMEPAGE="http://www.nvidia.com/"
662 -
663 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
664 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
665 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
666 -
667 -NV_URI="https://us.download.nvidia.com/XFree86/"
668 -SRC_URI="
669 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
670 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
671 - tools? (
672 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
673 - )
674 -"
675 -
676 -LICENSE="GPL-2 NVIDIA-r2"
677 -SLOT="0/${PV%.*}"
678 -KEYWORDS="-* amd64 ~amd64-fbsd"
679 -RESTRICT="bindist mirror"
680 -EMULTILIB_PKG="true"
681 -
682 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib static-libs +tools uvm wayland +X"
683 -REQUIRED_USE="
684 - tools? ( X )
685 - static-libs? ( tools )
686 -"
687 -
688 -COMMON="
689 - app-eselect/eselect-opencl
690 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
691 - tools? (
692 - dev-libs/atk
693 - dev-libs/glib:2
694 - dev-libs/jansson
695 - gtk3? (
696 - x11-libs/gtk+:3
697 - )
698 - x11-libs/cairo
699 - x11-libs/gdk-pixbuf[X]
700 - x11-libs/gtk+:2
701 - x11-libs/libX11
702 - x11-libs/libXext
703 - x11-libs/libXrandr
704 - x11-libs/libXv
705 - x11-libs/libXxf86vm
706 - x11-libs/pango[X]
707 - )
708 - X? (
709 - >=app-eselect/eselect-opengl-1.0.9
710 - app-misc/pax-utils
711 - )
712 -"
713 -DEPEND="
714 - ${COMMON}
715 - kernel_linux? ( virtual/linux-sources )
716 - tools? ( sys-apps/dbus )
717 -"
718 -RDEPEND="
719 - ${COMMON}
720 - acpi? ( sys-power/acpid )
721 - tools? ( !media-video/nvidia-settings )
722 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
723 - X? (
724 - <x11-base/xorg-server-1.20.99:=
725 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
726 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
727 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
728 - sys-libs/zlib[${MULTILIB_USEDEP}]
729 - )
730 -"
731 -QA_PREBUILT="opt/* usr/lib*"
732 -S=${WORKDIR}/
733 -
734 -nvidia_drivers_versions_check() {
735 - if use amd64 && has_multilib_profile && \
736 - [ "${DEFAULT_ABI}" != "amd64" ]; then
737 - eerror "This ebuild doesn't currently support changing your default ABI"
738 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
739 - fi
740 -
741 - if use kernel_linux && kernel_is ge 4 21; then
742 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
743 - ewarn "which are limited to the following kernels:"
744 - ewarn "<sys-kernel/gentoo-sources-4.21"
745 - ewarn "<sys-kernel/vanilla-sources-4.21"
746 - ewarn ""
747 - ewarn "You are free to utilize epatch_user to provide whatever"
748 - ewarn "support you feel is appropriate, but will not receive"
749 - ewarn "support as a result of those changes."
750 - ewarn ""
751 - ewarn "Do not file a bug report about this."
752 - ewarn ""
753 - fi
754 -
755 - # Since Nvidia ships many different series of drivers, we need to give the user
756 - # some kind of guidance as to what version they should install. This tries
757 - # to point the user in the right direction but can't be perfect. check
758 - # nvidia-driver.eclass
759 - nvidia-driver-check-warning
760 -
761 - # Kernel features/options to check for
762 - CONFIG_CHECK="!DEBUG_MUTEXES ~!LOCKDEP ~MTRR ~PM ~SYSVIPC ~ZONE_DMA"
763 -
764 - # Now do the above checks
765 - use kernel_linux && check_extra_config
766 -}
767 -
768 -pkg_pretend() {
769 - nvidia_drivers_versions_check
770 -}
771 -
772 -pkg_setup() {
773 - nvidia_drivers_versions_check
774 -
775 - # try to turn off distcc and ccache for people that have a problem with it
776 - export DISTCC_DISABLE=1
777 - export CCACHE_DISABLE=1
778 -
779 - if use driver && use kernel_linux; then
780 - MODULE_NAMES="nvidia(video:${S}/kernel)"
781 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
782 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
783 -
784 - # This needs to run after MODULE_NAMES (so that the eclass checks
785 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
786 - # is set (so that KV_DIR is populated).
787 - linux-mod_pkg_setup
788 -
789 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
790 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
791 -
792 - # linux-mod_src_compile calls set_arch_to_kernel, which
793 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
794 - # expects x86_64 or i386 and then converts it to x86
795 - # later on in the build process
796 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
797 - fi
798 -
799 - if use kernel_linux && kernel_is lt 2 6 9; then
800 - eerror "You must build this against 2.6.9 or higher kernels."
801 - fi
802 -
803 - # set variables to where files are in the package structure
804 - if use kernel_FreeBSD; then
805 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
806 - NV_DOC="${S}/doc"
807 - NV_OBJ="${S}/obj"
808 - NV_SRC="${S}/src"
809 - NV_MAN="${S}/x11/man"
810 - NV_X11="${S}/obj"
811 - NV_SOVER=1
812 - elif use kernel_linux; then
813 - NV_DOC="${S}"
814 - NV_OBJ="${S}"
815 - NV_SRC="${S}/kernel"
816 - NV_MAN="${S}"
817 - NV_X11="${S}"
818 - NV_SOVER=${PV}
819 - else
820 - die "Could not determine proper NVIDIA package"
821 - fi
822 -}
823 -
824 -src_prepare() {
825 - local man_file
826 - for man_file in "${NV_MAN}"/*1.gz; do
827 - gunzip $man_file || die
828 - done
829 -
830 - if use tools; then
831 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
832 - sed -i \
833 - -e "s:@PV@:${PV}:g" \
834 - "${WORKDIR}"/nvidia-settings-linker.patch || die
835 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
836 - fi
837 -
838 - default
839 -
840 - if ! [ -f nvidia_icd.json ]; then
841 - cp nvidia_icd.json.template nvidia_icd.json || die
842 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
843 - fi
844 -}
845 -
846 -src_compile() {
847 - # This is already the default on Linux, as there's no toplevel Makefile, but
848 - # on FreeBSD there's one and triggers the kernel module build, as we install
849 - # it by itself, pass this.
850 -
851 - cd "${NV_SRC}"
852 - if use kernel_FreeBSD; then
853 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
854 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
855 - elif use driver && use kernel_linux; then
856 - BUILD_TARGETS=module linux-mod_src_compile \
857 - KERNELRELEASE="${KV_FULL}" \
858 - src="${KERNEL_DIR}"
859 - fi
860 -
861 - if use tools; then
862 - emake -C "${S}"/nvidia-settings-${PV}/src \
863 - AR="$(tc-getAR)" \
864 - CC="$(tc-getCC)" \
865 - DO_STRIP= \
866 - LD="$(tc-getCC)" \
867 - LIBDIR="$(get_libdir)" \
868 - NVLD="$(tc-getLD)" \
869 - NV_VERBOSE=1 \
870 - RANLIB="$(tc-getRANLIB)" \
871 - build-xnvctrl
872 -
873 - emake -C "${S}"/nvidia-settings-${PV}/src \
874 - CC="$(tc-getCC)" \
875 - DO_STRIP= \
876 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
877 - LD="$(tc-getCC)" \
878 - LIBDIR="$(get_libdir)" \
879 - NVLD="$(tc-getLD)" \
880 - NVML_ENABLED=0 \
881 - NV_USE_BUNDLED_LIBJANSSON=0 \
882 - NV_VERBOSE=1
883 - fi
884 -}
885 -
886 -# Install nvidia library:
887 -# the first parameter is the library to install
888 -# the second parameter is the provided soversion
889 -# the third parameter is the target directory if it is not /usr/lib
890 -donvidia() {
891 - # Full path to library
892 - nv_LIB="${1}"
893 -
894 - # SOVER to use
895 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
896 -
897 - # Where to install
898 - nv_DEST="${2}"
899 -
900 - # Get just the library name
901 - nv_LIBNAME=$(basename "${nv_LIB}")
902 -
903 - if [[ "${nv_DEST}" ]]; then
904 - exeinto ${nv_DEST}
905 - action="doexe"
906 - else
907 - nv_DEST="/usr/$(get_libdir)"
908 - action="dolib.so"
909 - fi
910 -
911 - # Install the library
912 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
913 -
914 - # If the library has a SONAME and SONAME does not match the library name,
915 - # then we need to create a symlink
916 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
917 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
918 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
919 - fi
920 -
921 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
922 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
923 -}
924 -
925 -src_install() {
926 - if use driver && use kernel_linux; then
927 - linux-mod_src_install
928 -
929 - # Add the aliases
930 - # This file is tweaked with the appropriate video group in
931 - # pkg_preinst, see bug #491414
932 - insinto /etc/modprobe.d
933 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
934 - doins "${FILESDIR}"/nvidia-rmmod.conf
935 -
936 - # Ensures that our device nodes are created when not using X
937 - exeinto "$(get_udevdir)"
938 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
939 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
940 - elif use kernel_FreeBSD; then
941 - if use x86-fbsd; then
942 - insinto /boot/modules
943 - doins "${S}/src/nvidia.kld"
944 - fi
945 -
946 - exeinto /boot/modules
947 - doexe "${S}/src/nvidia.ko"
948 - fi
949 -
950 - # NVIDIA kernel <-> userspace driver config lib
951 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
952 -
953 - # NVIDIA framebuffer capture library
954 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
955 -
956 - # NVIDIA video encode/decode <-> CUDA
957 - if use kernel_linux; then
958 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
959 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
960 - fi
961 -
962 - if use X; then
963 - # Xorg DDX driver
964 - insinto /usr/$(get_libdir)/xorg/modules/drivers
965 - doins ${NV_X11}/nvidia_drv.so
966 -
967 - # Xorg GLX driver
968 - donvidia ${NV_X11}/libglxserver_nvidia.so.${NV_SOVER} \
969 - /usr/$(get_libdir)/xorg/modules/extensions
970 -
971 - # Xorg nvidia.conf
972 - if has_version '>=x11-base/xorg-server-1.16'; then
973 - insinto /usr/share/X11/xorg.conf.d
974 - newins {,50-}nvidia-drm-outputclass.conf
975 - fi
976 -
977 - insinto /usr/share/glvnd/egl_vendor.d
978 - doins ${NV_X11}/10_nvidia.json
979 - fi
980 -
981 - if use wayland; then
982 - insinto /usr/share/egl/egl_external_platform.d
983 - doins ${NV_X11}/10_nvidia_wayland.json
984 - fi
985 -
986 - # OpenCL ICD for NVIDIA
987 - if use kernel_linux; then
988 - insinto /etc/OpenCL/vendors
989 - doins ${NV_OBJ}/nvidia.icd
990 - fi
991 -
992 - # Documentation
993 - if use kernel_FreeBSD; then
994 - dodoc "${NV_DOC}/README"
995 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
996 - use tools && doman "${NV_MAN}"/nvidia-settings.1
997 - else
998 - # Docs
999 - newdoc "${NV_DOC}/README.txt" README
1000 - dodoc "${NV_DOC}/NVIDIA_Changelog"
1001 - doman "${NV_MAN}"/nvidia-smi.1
1002 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1003 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1004 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
1005 - fi
1006 -
1007 - docinto html
1008 - dodoc -r ${NV_DOC}/html/*
1009 -
1010 - # Helper Apps
1011 - exeinto /opt/bin/
1012 -
1013 - if use X; then
1014 - doexe ${NV_OBJ}/nvidia-xconfig
1015 -
1016 - insinto /etc/vulkan/icd.d
1017 - doins nvidia_icd.json
1018 - fi
1019 -
1020 - if use kernel_linux; then
1021 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
1022 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
1023 - doexe ${NV_OBJ}/nvidia-debugdump
1024 - doexe ${NV_OBJ}/nvidia-persistenced
1025 - doexe ${NV_OBJ}/nvidia-smi
1026 -
1027 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
1028 - doexe ${NV_OBJ}/nvidia-modprobe
1029 - fowners root:video /opt/bin/nvidia-modprobe
1030 - fperms 4710 /opt/bin/nvidia-modprobe
1031 - dosym /{opt,usr}/bin/nvidia-modprobe
1032 -
1033 - doman nvidia-cuda-mps-control.1
1034 - doman nvidia-modprobe.1
1035 - doman nvidia-persistenced.1
1036 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1037 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
1038 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
1039 - fi
1040 -
1041 - if use tools; then
1042 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1043 - DESTDIR="${D}" \
1044 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1045 - LIBDIR="${D}/usr/$(get_libdir)" \
1046 - NV_USE_BUNDLED_LIBJANSSON=0 \
1047 - NV_VERBOSE=1 \
1048 - PREFIX=/usr \
1049 - DO_STRIP= \
1050 - install
1051 -
1052 - if use static-libs; then
1053 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1054 -
1055 - insinto /usr/include/NVCtrl
1056 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1057 - fi
1058 -
1059 - insinto /usr/share/nvidia/
1060 - doins nvidia-application-profiles-${PV}-key-documentation
1061 -
1062 - insinto /etc/nvidia
1063 - newins \
1064 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
1065 -
1066 - # There is no icon in the FreeBSD tarball.
1067 - use kernel_FreeBSD || \
1068 - doicon ${NV_OBJ}/nvidia-settings.png
1069 -
1070 - domenu "${FILESDIR}"/nvidia-settings.desktop
1071 -
1072 - exeinto /etc/X11/xinit/xinitrc.d
1073 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1074 - fi
1075 -
1076 - dobin ${NV_OBJ}/nvidia-bug-report.sh
1077 -
1078 - if has_multilib_profile && use multilib; then
1079 - local OABI=${ABI}
1080 - for ABI in $(get_install_abis); do
1081 - src_install-libs
1082 - done
1083 - ABI=${OABI}
1084 - unset OABI
1085 - else
1086 - src_install-libs
1087 - fi
1088 -
1089 - is_final_abi || die "failed to iterate through all ABIs"
1090 -
1091 - readme.gentoo_create_doc
1092 -}
1093 -
1094 -src_install-libs() {
1095 - local inslibdir=$(get_libdir)
1096 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1097 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1098 - local nv_libdir="${NV_OBJ}"
1099 -
1100 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
1101 - nv_libdir="${NV_OBJ}"/32
1102 - fi
1103 -
1104 - if use X; then
1105 - NV_GLX_LIBRARIES=(
1106 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
1107 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1108 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
1109 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
1110 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1111 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
1112 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1113 - "libGLX.so.0 ${GL_ROOT}"
1114 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1115 - "libGLdispatch.so.0 ${GL_ROOT}"
1116 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
1117 - "libOpenGL.so.0 ${GL_ROOT}"
1118 - "libcuda.so.${NV_SOVER}"
1119 - "libnvcuvid.so.${NV_SOVER}"
1120 - "libnvidia-compiler.so.${NV_SOVER}"
1121 - "libnvidia-eglcore.so.${NV_SOVER}"
1122 - "libnvidia-encode.so.${NV_SOVER}"
1123 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
1124 - "libnvidia-fbc.so.${NV_SOVER}"
1125 - "libnvidia-glcore.so.${NV_SOVER}"
1126 - "libnvidia-glsi.so.${NV_SOVER}"
1127 - "libnvidia-glvkspirv.so.${NV_SOVER}"
1128 - "libnvidia-ifr.so.${NV_SOVER}"
1129 - "libnvidia-opencl.so.${NV_SOVER}"
1130 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
1131 - "libvdpau_nvidia.so.${NV_SOVER}"
1132 - )
1133 -
1134 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1135 - then
1136 - NV_GLX_LIBRARIES+=(
1137 - "libnvidia-egl-wayland.so.1.1.0"
1138 - )
1139 - fi
1140 -
1141 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1142 - then
1143 - NV_GLX_LIBRARIES+=(
1144 - "libnvidia-wfb.so.${NV_SOVER}"
1145 - )
1146 - fi
1147 -
1148 - if use kernel_FreeBSD; then
1149 - NV_GLX_LIBRARIES+=(
1150 - "libnvidia-tls.so.${NV_SOVER}"
1151 - )
1152 - fi
1153 -
1154 - if use kernel_linux; then
1155 - NV_GLX_LIBRARIES+=(
1156 - "libnvidia-ml.so.${NV_SOVER}"
1157 - "tls/libnvidia-tls.so.${NV_SOVER}"
1158 - )
1159 - fi
1160 -
1161 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1162 - then
1163 - NV_GLX_LIBRARIES+=(
1164 - "libnvidia-cbl.so.${NV_SOVER}"
1165 - "libnvidia-rtcore.so.${NV_SOVER}"
1166 - "libnvoptix.so.${NV_SOVER}"
1167 - )
1168 - fi
1169 -
1170 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
1171 - donvidia "${nv_libdir}"/${NV_LIB}
1172 - done
1173 - fi
1174 -}
1175 -
1176 -pkg_preinst() {
1177 - if use driver && use kernel_linux; then
1178 - linux-mod_pkg_preinst
1179 -
1180 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1181 - if [ -z "${videogroup}" ]; then
1182 - eerror "Failed to determine the video group gid"
1183 - die "Failed to determine the video group gid"
1184 - else
1185 - sed -i \
1186 - -e "s:PACKAGE:${PF}:g" \
1187 - -e "s:VIDEOGID:${videogroup}:" \
1188 - "${D}"/etc/modprobe.d/nvidia.conf || die
1189 - fi
1190 - fi
1191 -
1192 - # Clean the dynamic libGL stuff's home to ensure
1193 - # we dont have stale libs floating around
1194 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
1195 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1196 - fi
1197 - # Make sure we nuke the old nvidia-glx's env.d file
1198 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
1199 - rm -f "${ROOT}"/etc/env.d/09nvidia
1200 - fi
1201 -}
1202 -
1203 -pkg_postinst() {
1204 - use driver && use kernel_linux && linux-mod_pkg_postinst
1205 -
1206 - # Switch to the nvidia implementation
1207 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1208 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1209 -
1210 - readme.gentoo_print_elog
1211 -
1212 - if ! use X; then
1213 - elog "You have elected to not install the X.org driver. Along with"
1214 - elog "this the OpenGL libraries and VDPAU libraries were not"
1215 - elog "installed. Additionally, once the driver is loaded your card"
1216 - elog "and fan will run at max speed which may not be desirable."
1217 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1218 - elog "speed scale appropriately."
1219 - elog
1220 - fi
1221 - if ! use tools; then
1222 - elog "USE=tools controls whether the nvidia-settings application"
1223 - elog "is installed. If you would like to use it, enable that"
1224 - elog "flag and re-emerge this ebuild. Optionally you can install"
1225 - elog "media-video/nvidia-settings"
1226 - elog
1227 - fi
1228 -}
1229 -
1230 -pkg_prerm() {
1231 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1232 -}
1233 -
1234 -pkg_postrm() {
1235 - use driver && use kernel_linux && linux-mod_pkg_postrm
1236 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1237 -}
1238
1239 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-418.30.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-418.30.ebuild
1240 deleted file mode 100644
1241 index d4ed1c7cf4d..00000000000
1242 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-418.30.ebuild
1243 +++ /dev/null
1244 @@ -1,578 +0,0 @@
1245 -# Copyright 1999-2019 Gentoo Authors
1246 -# Distributed under the terms of the GNU General Public License v2
1247 -
1248 -EAPI=6
1249 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
1250 - portability toolchain-funcs unpacker user udev
1251 -
1252 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
1253 -HOMEPAGE="http://www.nvidia.com/"
1254 -
1255 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
1256 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
1257 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
1258 -
1259 -NV_URI="https://us.download.nvidia.com/XFree86/"
1260 -SRC_URI="
1261 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
1262 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
1263 - tools? (
1264 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
1265 - )
1266 -"
1267 -
1268 -LICENSE="GPL-2 NVIDIA-r2"
1269 -SLOT="0/${PV%.*}"
1270 -KEYWORDS="-* ~amd64 ~amd64-fbsd"
1271 -RESTRICT="bindist mirror"
1272 -EMULTILIB_PKG="true"
1273 -
1274 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib static-libs +tools uvm wayland +X"
1275 -REQUIRED_USE="
1276 - tools? ( X )
1277 - static-libs? ( tools )
1278 -"
1279 -
1280 -COMMON="
1281 - app-eselect/eselect-opencl
1282 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
1283 - tools? (
1284 - dev-libs/atk
1285 - dev-libs/glib:2
1286 - dev-libs/jansson
1287 - gtk3? (
1288 - x11-libs/gtk+:3
1289 - )
1290 - x11-libs/cairo
1291 - x11-libs/gdk-pixbuf[X]
1292 - x11-libs/gtk+:2
1293 - x11-libs/libX11
1294 - x11-libs/libXext
1295 - x11-libs/libXrandr
1296 - x11-libs/libXv
1297 - x11-libs/libXxf86vm
1298 - x11-libs/pango[X]
1299 - )
1300 - X? (
1301 - >=app-eselect/eselect-opengl-1.0.9
1302 - app-misc/pax-utils
1303 - )
1304 -"
1305 -DEPEND="
1306 - ${COMMON}
1307 - kernel_linux? ( virtual/linux-sources )
1308 - tools? ( sys-apps/dbus )
1309 -"
1310 -RDEPEND="
1311 - ${COMMON}
1312 - acpi? ( sys-power/acpid )
1313 - tools? ( !media-video/nvidia-settings )
1314 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
1315 - X? (
1316 - <x11-base/xorg-server-1.20.99:=
1317 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1318 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1319 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
1320 - sys-libs/zlib[${MULTILIB_USEDEP}]
1321 - )
1322 -"
1323 -QA_PREBUILT="opt/* usr/lib*"
1324 -S=${WORKDIR}/
1325 -
1326 -nvidia_drivers_versions_check() {
1327 - if use amd64 && has_multilib_profile && \
1328 - [ "${DEFAULT_ABI}" != "amd64" ]; then
1329 - eerror "This ebuild doesn't currently support changing your default ABI"
1330 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
1331 - fi
1332 -
1333 - if use kernel_linux && kernel_is ge 4 21; then
1334 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
1335 - ewarn "which are limited to the following kernels:"
1336 - ewarn "<sys-kernel/gentoo-sources-4.21"
1337 - ewarn "<sys-kernel/vanilla-sources-4.21"
1338 - ewarn ""
1339 - ewarn "You are free to utilize epatch_user to provide whatever"
1340 - ewarn "support you feel is appropriate, but will not receive"
1341 - ewarn "support as a result of those changes."
1342 - ewarn ""
1343 - ewarn "Do not file a bug report about this."
1344 - ewarn ""
1345 - fi
1346 -
1347 - # Since Nvidia ships many different series of drivers, we need to give the user
1348 - # some kind of guidance as to what version they should install. This tries
1349 - # to point the user in the right direction but can't be perfect. check
1350 - # nvidia-driver.eclass
1351 - nvidia-driver-check-warning
1352 -
1353 - # Kernel features/options to check for
1354 - CONFIG_CHECK="!DEBUG_MUTEXES !I2C_NVIDIA_GPU ~!LOCKDEP ~MTRR ~SYSVIPC ~ZONE_DMA"
1355 -
1356 - # Now do the above checks
1357 - use kernel_linux && check_extra_config
1358 -}
1359 -
1360 -pkg_pretend() {
1361 - nvidia_drivers_versions_check
1362 -}
1363 -
1364 -pkg_setup() {
1365 - nvidia_drivers_versions_check
1366 -
1367 - # try to turn off distcc and ccache for people that have a problem with it
1368 - export DISTCC_DISABLE=1
1369 - export CCACHE_DISABLE=1
1370 -
1371 - if use driver && use kernel_linux; then
1372 - MODULE_NAMES="nvidia(video:${S}/kernel)"
1373 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
1374 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
1375 -
1376 - # This needs to run after MODULE_NAMES (so that the eclass checks
1377 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
1378 - # is set (so that KV_DIR is populated).
1379 - linux-mod_pkg_setup
1380 -
1381 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
1382 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
1383 -
1384 - # linux-mod_src_compile calls set_arch_to_kernel, which
1385 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
1386 - # expects x86_64 or i386 and then converts it to x86
1387 - # later on in the build process
1388 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
1389 - fi
1390 -
1391 - if use kernel_linux && kernel_is lt 2 6 9; then
1392 - eerror "You must build this against 2.6.9 or higher kernels."
1393 - fi
1394 -
1395 - # set variables to where files are in the package structure
1396 - if use kernel_FreeBSD; then
1397 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
1398 - NV_DOC="${S}/doc"
1399 - NV_OBJ="${S}/obj"
1400 - NV_SRC="${S}/src"
1401 - NV_MAN="${S}/x11/man"
1402 - NV_X11="${S}/obj"
1403 - NV_SOVER=1
1404 - elif use kernel_linux; then
1405 - NV_DOC="${S}"
1406 - NV_OBJ="${S}"
1407 - NV_SRC="${S}/kernel"
1408 - NV_MAN="${S}"
1409 - NV_X11="${S}"
1410 - NV_SOVER=${PV}
1411 - else
1412 - die "Could not determine proper NVIDIA package"
1413 - fi
1414 -}
1415 -
1416 -src_prepare() {
1417 - local man_file
1418 - for man_file in "${NV_MAN}"/*1.gz; do
1419 - gunzip $man_file || die
1420 - done
1421 -
1422 - if use tools; then
1423 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
1424 - sed -i \
1425 - -e "s:@PV@:${PV}:g" \
1426 - "${WORKDIR}"/nvidia-settings-linker.patch || die
1427 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
1428 - fi
1429 -
1430 - default
1431 -
1432 - if ! [ -f nvidia_icd.json ]; then
1433 - cp nvidia_icd.json.template nvidia_icd.json || die
1434 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
1435 - fi
1436 -}
1437 -
1438 -src_compile() {
1439 - # This is already the default on Linux, as there's no toplevel Makefile, but
1440 - # on FreeBSD there's one and triggers the kernel module build, as we install
1441 - # it by itself, pass this.
1442 -
1443 - cd "${NV_SRC}"
1444 - if use kernel_FreeBSD; then
1445 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
1446 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
1447 - elif use driver && use kernel_linux; then
1448 - BUILD_TARGETS=module linux-mod_src_compile \
1449 - KERNELRELEASE="${KV_FULL}" \
1450 - src="${KERNEL_DIR}"
1451 - fi
1452 -
1453 - if use tools; then
1454 - emake -C "${S}"/nvidia-settings-${PV}/src \
1455 - AR="$(tc-getAR)" \
1456 - CC="$(tc-getCC)" \
1457 - DO_STRIP= \
1458 - LD="$(tc-getCC)" \
1459 - LIBDIR="$(get_libdir)" \
1460 - NVLD="$(tc-getLD)" \
1461 - NV_VERBOSE=1 \
1462 - RANLIB="$(tc-getRANLIB)" \
1463 - build-xnvctrl
1464 -
1465 - emake -C "${S}"/nvidia-settings-${PV}/src \
1466 - CC="$(tc-getCC)" \
1467 - DO_STRIP= \
1468 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1469 - LD="$(tc-getCC)" \
1470 - LIBDIR="$(get_libdir)" \
1471 - NVLD="$(tc-getLD)" \
1472 - NVML_ENABLED=0 \
1473 - NV_USE_BUNDLED_LIBJANSSON=0 \
1474 - NV_VERBOSE=1
1475 - fi
1476 -}
1477 -
1478 -# Install nvidia library:
1479 -# the first parameter is the library to install
1480 -# the second parameter is the provided soversion
1481 -# the third parameter is the target directory if it is not /usr/lib
1482 -donvidia() {
1483 - # Full path to library
1484 - nv_LIB="${1}"
1485 -
1486 - # SOVER to use
1487 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
1488 -
1489 - # Where to install
1490 - nv_DEST="${2}"
1491 -
1492 - # Get just the library name
1493 - nv_LIBNAME=$(basename "${nv_LIB}")
1494 -
1495 - if [[ "${nv_DEST}" ]]; then
1496 - exeinto ${nv_DEST}
1497 - action="doexe"
1498 - else
1499 - nv_DEST="/usr/$(get_libdir)"
1500 - action="dolib.so"
1501 - fi
1502 -
1503 - # Install the library
1504 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
1505 -
1506 - # If the library has a SONAME and SONAME does not match the library name,
1507 - # then we need to create a symlink
1508 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
1509 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
1510 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
1511 - fi
1512 -
1513 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
1514 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
1515 -}
1516 -
1517 -src_install() {
1518 - if use driver && use kernel_linux; then
1519 - linux-mod_src_install
1520 -
1521 - # Add the aliases
1522 - # This file is tweaked with the appropriate video group in
1523 - # pkg_preinst, see bug #491414
1524 - insinto /etc/modprobe.d
1525 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
1526 - doins "${FILESDIR}"/nvidia-rmmod.conf
1527 -
1528 - # Ensures that our device nodes are created when not using X
1529 - exeinto "$(get_udevdir)"
1530 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
1531 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
1532 - elif use kernel_FreeBSD; then
1533 - if use x86-fbsd; then
1534 - insinto /boot/modules
1535 - doins "${S}/src/nvidia.kld"
1536 - fi
1537 -
1538 - exeinto /boot/modules
1539 - doexe "${S}/src/nvidia.ko"
1540 - fi
1541 -
1542 - # NVIDIA kernel <-> userspace driver config lib
1543 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
1544 -
1545 - # NVIDIA framebuffer capture library
1546 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
1547 -
1548 - # NVIDIA video encode/decode <-> CUDA
1549 - if use kernel_linux; then
1550 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
1551 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
1552 - fi
1553 -
1554 - if use X; then
1555 - # Xorg DDX driver
1556 - insinto /usr/$(get_libdir)/xorg/modules/drivers
1557 - doins ${NV_X11}/nvidia_drv.so
1558 -
1559 - # Xorg GLX driver
1560 - donvidia ${NV_X11}/libglxserver_nvidia.so.${NV_SOVER} \
1561 - /usr/$(get_libdir)/xorg/modules/extensions
1562 -
1563 - # Xorg nvidia.conf
1564 - if has_version '>=x11-base/xorg-server-1.16'; then
1565 - insinto /usr/share/X11/xorg.conf.d
1566 - newins {,50-}nvidia-drm-outputclass.conf
1567 - fi
1568 -
1569 - insinto /usr/share/glvnd/egl_vendor.d
1570 - doins ${NV_X11}/10_nvidia.json
1571 - fi
1572 -
1573 - if use wayland; then
1574 - insinto /usr/share/egl/egl_external_platform.d
1575 - doins ${NV_X11}/10_nvidia_wayland.json
1576 - fi
1577 -
1578 - # OpenCL ICD for NVIDIA
1579 - if use kernel_linux; then
1580 - insinto /etc/OpenCL/vendors
1581 - doins ${NV_OBJ}/nvidia.icd
1582 - fi
1583 -
1584 - # Documentation
1585 - if use kernel_FreeBSD; then
1586 - dodoc "${NV_DOC}/README"
1587 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1588 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1589 - else
1590 - # Docs
1591 - newdoc "${NV_DOC}/README.txt" README
1592 - dodoc "${NV_DOC}/NVIDIA_Changelog"
1593 - doman "${NV_MAN}"/nvidia-smi.1
1594 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1595 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1596 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
1597 - fi
1598 -
1599 - docinto html
1600 - dodoc -r ${NV_DOC}/html/*
1601 -
1602 - # Helper Apps
1603 - exeinto /opt/bin/
1604 -
1605 - if use X; then
1606 - doexe ${NV_OBJ}/nvidia-xconfig
1607 -
1608 - insinto /etc/vulkan/icd.d
1609 - doins nvidia_icd.json
1610 - fi
1611 -
1612 - if use kernel_linux; then
1613 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
1614 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
1615 - doexe ${NV_OBJ}/nvidia-debugdump
1616 - doexe ${NV_OBJ}/nvidia-persistenced
1617 - doexe ${NV_OBJ}/nvidia-smi
1618 -
1619 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
1620 - doexe ${NV_OBJ}/nvidia-modprobe
1621 - fowners root:video /opt/bin/nvidia-modprobe
1622 - fperms 4710 /opt/bin/nvidia-modprobe
1623 - dosym /{opt,usr}/bin/nvidia-modprobe
1624 -
1625 - doman nvidia-cuda-mps-control.1
1626 - doman nvidia-modprobe.1
1627 - doman nvidia-persistenced.1
1628 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1629 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
1630 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
1631 - fi
1632 -
1633 - if use tools; then
1634 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1635 - DESTDIR="${D}" \
1636 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1637 - LIBDIR="${D}/usr/$(get_libdir)" \
1638 - NV_USE_BUNDLED_LIBJANSSON=0 \
1639 - NV_VERBOSE=1 \
1640 - PREFIX=/usr \
1641 - DO_STRIP= \
1642 - install
1643 -
1644 - if use static-libs; then
1645 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1646 -
1647 - insinto /usr/include/NVCtrl
1648 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1649 - fi
1650 -
1651 - insinto /usr/share/nvidia/
1652 - doins nvidia-application-profiles-${PV}-key-documentation
1653 -
1654 - insinto /etc/nvidia
1655 - newins \
1656 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
1657 -
1658 - # There is no icon in the FreeBSD tarball.
1659 - use kernel_FreeBSD || \
1660 - doicon ${NV_OBJ}/nvidia-settings.png
1661 -
1662 - domenu "${FILESDIR}"/nvidia-settings.desktop
1663 -
1664 - exeinto /etc/X11/xinit/xinitrc.d
1665 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1666 - fi
1667 -
1668 - dobin ${NV_OBJ}/nvidia-bug-report.sh
1669 -
1670 - if has_multilib_profile && use multilib; then
1671 - local OABI=${ABI}
1672 - for ABI in $(get_install_abis); do
1673 - src_install-libs
1674 - done
1675 - ABI=${OABI}
1676 - unset OABI
1677 - else
1678 - src_install-libs
1679 - fi
1680 -
1681 - is_final_abi || die "failed to iterate through all ABIs"
1682 -
1683 - readme.gentoo_create_doc
1684 -}
1685 -
1686 -src_install-libs() {
1687 - local inslibdir=$(get_libdir)
1688 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1689 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1690 - local nv_libdir="${NV_OBJ}"
1691 -
1692 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
1693 - nv_libdir="${NV_OBJ}"/32
1694 - fi
1695 -
1696 - if use X; then
1697 - NV_GLX_LIBRARIES=(
1698 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
1699 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1700 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
1701 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
1702 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1703 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
1704 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1705 - "libGLX.so.0 ${GL_ROOT}"
1706 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1707 - "libGLdispatch.so.0 ${GL_ROOT}"
1708 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
1709 - "libOpenGL.so.0 ${GL_ROOT}"
1710 - "libcuda.so.${NV_SOVER}"
1711 - "libnvcuvid.so.${NV_SOVER}"
1712 - "libnvidia-compiler.so.${NV_SOVER}"
1713 - "libnvidia-eglcore.so.${NV_SOVER}"
1714 - "libnvidia-encode.so.${NV_SOVER}"
1715 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
1716 - "libnvidia-fbc.so.${NV_SOVER}"
1717 - "libnvidia-glcore.so.${NV_SOVER}"
1718 - "libnvidia-glsi.so.${NV_SOVER}"
1719 - "libnvidia-glvkspirv.so.${NV_SOVER}"
1720 - "libnvidia-ifr.so.${NV_SOVER}"
1721 - "libnvidia-opencl.so.${NV_SOVER}"
1722 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
1723 - "libvdpau_nvidia.so.${NV_SOVER}"
1724 - )
1725 -
1726 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1727 - then
1728 - NV_GLX_LIBRARIES+=(
1729 - "libnvidia-egl-wayland.so.1.1.2"
1730 - )
1731 - fi
1732 -
1733 - if use kernel_FreeBSD; then
1734 - NV_GLX_LIBRARIES+=(
1735 - "libnvidia-tls.so.${NV_SOVER}"
1736 - )
1737 - fi
1738 -
1739 - if use kernel_linux; then
1740 - NV_GLX_LIBRARIES+=(
1741 - "libnvidia-ml.so.${NV_SOVER}"
1742 - "libnvidia-tls.so.${NV_SOVER}"
1743 - )
1744 - fi
1745 -
1746 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1747 - then
1748 - NV_GLX_LIBRARIES+=(
1749 - "libnvidia-cbl.so.${NV_SOVER}"
1750 - "libnvidia-rtcore.so.${NV_SOVER}"
1751 - "libnvoptix.so.${NV_SOVER}"
1752 - )
1753 - fi
1754 -
1755 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
1756 - donvidia "${nv_libdir}"/${NV_LIB}
1757 - done
1758 - fi
1759 -}
1760 -
1761 -pkg_preinst() {
1762 - if use driver && use kernel_linux; then
1763 - linux-mod_pkg_preinst
1764 -
1765 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1766 - if [ -z "${videogroup}" ]; then
1767 - eerror "Failed to determine the video group gid"
1768 - die "Failed to determine the video group gid"
1769 - else
1770 - sed -i \
1771 - -e "s:PACKAGE:${PF}:g" \
1772 - -e "s:VIDEOGID:${videogroup}:" \
1773 - "${D}"/etc/modprobe.d/nvidia.conf || die
1774 - fi
1775 - fi
1776 -
1777 - # Clean the dynamic libGL stuff's home to ensure
1778 - # we dont have stale libs floating around
1779 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
1780 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1781 - fi
1782 - # Make sure we nuke the old nvidia-glx's env.d file
1783 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
1784 - rm -f "${ROOT}"/etc/env.d/09nvidia
1785 - fi
1786 -}
1787 -
1788 -pkg_postinst() {
1789 - use driver && use kernel_linux && linux-mod_pkg_postinst
1790 -
1791 - # Switch to the nvidia implementation
1792 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1793 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1794 -
1795 - readme.gentoo_print_elog
1796 -
1797 - if ! use X; then
1798 - elog "You have elected to not install the X.org driver. Along with"
1799 - elog "this the OpenGL libraries and VDPAU libraries were not"
1800 - elog "installed. Additionally, once the driver is loaded your card"
1801 - elog "and fan will run at max speed which may not be desirable."
1802 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1803 - elog "speed scale appropriately."
1804 - elog
1805 - fi
1806 - if ! use tools; then
1807 - elog "USE=tools controls whether the nvidia-settings application"
1808 - elog "is installed. If you would like to use it, enable that"
1809 - elog "flag and re-emerge this ebuild. Optionally you can install"
1810 - elog "media-video/nvidia-settings"
1811 - elog
1812 - fi
1813 -}
1814 -
1815 -pkg_prerm() {
1816 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1817 -}
1818 -
1819 -pkg_postrm() {
1820 - use driver && use kernel_linux && linux-mod_pkg_postrm
1821 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1822 -}