commit:     c8738bd77d20cc6a860719081f0adb51491797b2
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 21 16:10:55 2021 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Jul 21 19:42:50 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8738bd7

x11-drivers/nvidia-drivers: add 390.144

Adds support for kernel >=5.13.0

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 x11-drivers/nvidia-drivers/Manifest                |   7 +
 .../nvidia-drivers/nvidia-drivers-390.144.ebuild   | 405 +++++++++++++++++++++
 2 files changed, 412 insertions(+)

diff --git a/x11-drivers/nvidia-drivers/Manifest 
b/x11-drivers/nvidia-drivers/Manifest
index e71cb34fe97..e91d229321c 100644
--- a/x11-drivers/nvidia-drivers/Manifest
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -4,37 +4,44 @@ DIST NVIDIA-Linux-aarch64-460.84.run 112602151 BLAKE2B 
7c8fee69c61f94d461286b2e9
 DIST NVIDIA-Linux-aarch64-470.42.01.run 184108907 BLAKE2B 
ce2e35d90d7dbcecb6a3fd2e00e3d44de729cb61b5c8cbd707d6e304f9c41a5e0d8d97c80ff3428fcb121e6b993d96bf78cd28ac2edb7d6a555136a0d31b3c00
 SHA512 
d56fe68f0e060027191310a7144f50dead6913dc7a8759300a40c00e3c4f1a5a876358e2e32d6811d42fcfef7624280fc41efaf9ca40036a449b66700cd575bf
 DIST NVIDIA-Linux-aarch64-470.57.02.run 184167283 BLAKE2B 
8c321b60874ddc5497226515dd778e402227ff391e63ad7fd735cd23eb7e1f61550c96d5578534b06104da64f221c1db9cf2ed595be6fc11ce826efee0fbab89
 SHA512 
2af613184a9d2e6ebd65807beb8007dbfd69d1c08cc75bc5da404ab7eda9217c68be44a6bf61f666be2adb9b74f791007aa5b2bdd5066cb8b50977ff8882c2f7
 DIST NVIDIA-Linux-x86-390.143.run 49327068 BLAKE2B 
c6e0600885bfd834be6dca18346259a58e05640afe4b1ea394d5795e4c8a4b0fa9fdf5c4a331a128843708ece9e95df2ff7e0b3cf2ac5875b5d731c73423c112
 SHA512 
17bbcc2f5e9dde3f131b7924ea1e99a591b5e18b835dd324c528d17f74eded94e087c6a9a2b364189851e9972ad27bcd47e901c9ec14eedc568b99890f1e0a4f
+DIST NVIDIA-Linux-x86-390.144.run 49210937 BLAKE2B 
b7e6edb55af88be74e4322ff1d270388a60a9d9809314c3a0502f86ed97edb99dfcdd3c81c5f51e681c8fcc47ecbfecd124b4d733141d23726226a3965b4c1f1
 SHA512 
d962c7e7b4b9c4635a887767d34a49c401a89e5975a5e57fa83366ca824ab70d5b8a81f3dce2e05e0528afddc72d70b2fcd69a216bd16d75e7b88ec704390546
 DIST NVIDIA-Linux-x86_64-390.143.run 85686808 BLAKE2B 
0ad3ec661565cc52553c0b4f73256665fd3b505e39bffbfbffb3d148193369471b5160d59717dbecbd5f00bd28d9d17c9c7b5284e493f57f84ce19e310e477dc
 SHA512 
79b61bd274964ed2e6a7ce99f0066d616d65b5a074de2ed84cdebb9ec6e8a608f71e511105e9a03e0c6e6d259f0111fed5772638ea72b08951eb2712c80505d0
+DIST NVIDIA-Linux-x86_64-390.144.run 85000417 BLAKE2B 
8ecfa768fb8fe92170ff5b82698a7fb22da8bc557ab2036464bf5650b6fffc7028e25a68e1f5638f6bc171eb45a4aba459465490c7a99aacd36dc769994062e8
 SHA512 
9503ebf41037a14deba995288a364768cb03fb682de8653a4b0c05955b23603443c41c4216c93eac7d7efc301734416012864ede728324ab47b93ff167d93da4
 DIST NVIDIA-Linux-x86_64-450.119.03.run 141295706 BLAKE2B 
854dd0063ea1f11e052f6ba5454792ebeb41dc50cd5cde17260d8c715b4401fa19514cfd3d2fad905564607244748e8083880bc2e360a86f8dbca970ebe5e744
 SHA512 
5557328f445381e23358c8bce220da062cdd3b5d396764228f7eb285e8dd6419bfc3943fc9e98516ad8cd2db13d0d7c125fc9c94c1e565668f76c872140d9082
 DIST NVIDIA-Linux-x86_64-460.67.run 177691692 BLAKE2B 
25a7d87cc128933a98100d7c5ef37f93c3a870c096eea3228a28ef79d712ce104608f9422221cc1eadc21dccbbc8bc41ab1832795cfee75e217600ed0d76489e
 SHA512 
80fdc023a8ce80e3a103896f28a5564bb43903af6bfc719f755c48eb225e79ec6abf219ab20eb80ada5808ef932ef5fa0fe710c6e0a07dd8a248daff2ba3b898
 DIST NVIDIA-Linux-x86_64-460.84.run 177840337 BLAKE2B 
fbaa295c59f1af79c59c28845b79924812ac1386cf2e42aa762120a618253686f1249d777cc6c8df88b52afa34b96131663962bf0b6621dea6dcbc1bad7f9e22
 SHA512 
2483a4d251da63334363f4ba9f7b5d2cbf310afdf16fbcfecf1269f65beaed0325f825472feea26ddca2455ed44f284f57a73662600a3b4a270167baeb33e4fb
 DIST NVIDIA-Linux-x86_64-470.42.01.run 271781957 BLAKE2B 
c85b7fc77c1d104f0b3279f261954e200a98799929c4e763483d6bc36632dce5b9fc93545d91e4a5e58c67b96cf867082eec101e95459f8c6534dd80468370d7
 SHA512 
f933e249b9e0b043283ba164d56bd235240a34098e4ab9d1070809e17f8c2cd24d7319217c02c2417414f4c811216181d7ab8842755cd0d25b00ee51de70b2cc
 DIST NVIDIA-Linux-x86_64-470.57.02.run 273219658 BLAKE2B 
4e9b6d0f08226f38e76157a64923a4b4bb07b46e1b37879da353a4ff39bcf6a3aa0689a04e16ebcb2ff19f453d9b265c53546f101f34cca998a5da4dba5c2826
 SHA512 
7123ee05aa0cc94c4cf1f0717daf85b116f0200b8f78f9322ea847db70e56386a065e0085959f27cbf0a8f9befe6fc7a0145d1bf2a28616df9bc8b5effd812f8
 DIST nvidia-installer-390.143.tar.gz 205320 BLAKE2B 
5c27dd769ec5a2effc56ea86474ee45b86362c26844d2f902d7bb2ab8e58b2763f4f761341ce4051e85cfd8189eab9d441744f1b9946a6dc46105888dc5ba58a
 SHA512 
a45cbae70e8d9f1108d5e2c04b4beee350b8469df987ff80793dda7fc4e6efe3a787db0d47e7dfe22b88b29647b99cc24ab418666d1ef2fc038143f574faba36
+DIST nvidia-installer-390.144.tar.bz2 150017 BLAKE2B 
1a633594ecb9b54ee5a1e3620263a95db30c1ddebf547ecc7f267e1f0b799bcdb44cc3ddd6c96eda085d9be5c8f691e92556296f250495d80eec0c2f155f5bd5
 SHA512 
e4c624afc18bd1d61264f93bdcbc72afe42687baadf31683a6dd11a45c6257f6a5185b91f4b3d4c0316b8eb03ed79511f9ad260ee9e6f299fc136f5dc2178e42
 DIST nvidia-installer-450.119.03.tar.gz 197635 BLAKE2B 
01581676e11622e3c6c32171e699f13483e08a9b5256f6248cad190008a875b0b06561ff4d6732265c35b2429aaf6ba4cddf1a618d46730c88c5de63550bca9e
 SHA512 
7491873e6324aefbe0dcbe57edeb2d1194352c6a9738c3b47f2562eb9e3ad58ca9519e5499f56d1208c2151900e2b43582fdbbe8ca80b6ebee824f8f8050c552
 DIST nvidia-installer-460.67.tar.gz 198484 BLAKE2B 
0eaf3e3eccd6749e4fe89394905dded58e739f42cbc33c8a91575f4505030a216670fc8c0fd4d1d42659acf301c9ba59d4052a80c6eba6c5db84ed022acb2620
 SHA512 
8fff0fa13a82cb7eaf2fd1d05be509e9124e67bb05810f8937fb1f16c4a2362a5c1a50bc9a5155cfc90a9bbcee38a54fb5ae0ae164e205900a49f6d21779d54f
 DIST nvidia-installer-460.84.tar.bz2 144516 BLAKE2B 
1da114e13d675198d1c011d4f32cc5da350b0d10ffaa49634c06d91d520d40bd24be60d032fd0988e7be54691dbe9755e3b7297596bd4ab88c72c0fb831aa894
 SHA512 
afab294eddfea19a0d70b7193d40438c209ede757d614e96a6028b2569797a24cc26c4eafb41a4f35fff4496bfa7529f276ae054c9060b714f43ac0e9d3cf301
 DIST nvidia-installer-470.42.01.tar.bz2 145890 BLAKE2B 
8073cc77ec240778afb66c9fa2a86bb77ac4c154b1f58db5e05c609455945d73d28ae7299bcbffd6602a2a1c6d0208aab12030be30e9756451623565896bf8b3
 SHA512 
ff09bf9d6895ee78b7005c23895dc93b6458ceda37c0202983bef3ed5e3c89646c2a25cfa43b85d014e6ac862b38370d86203576526876f57d51034e1d9d8850
 DIST nvidia-installer-470.57.02.tar.bz2 145923 BLAKE2B 
c0350e143ca3d4bd1f18c2f137df363c57f6c4bf87f1f3dd92e2dd62d1e79de5efba850fcd3638b2b25ab5c07f3b5f8484863350a35a358a764ef27cf96817e2
 SHA512 
8a72ae9643acaa566b05bbc400cae02dcfbad00da9084ea441ec65f3895efdb224e16075a5f4e373eac048e91b7c8fcdd877425bf76e573b4bff0233dfd5519d
 DIST nvidia-modprobe-390.143.tar.gz 39968 BLAKE2B 
09f043521f195327630c0ca575473da42e051e2d34def22dcfb54295a94ca85e95ff41ee9564765567df19b88f90aba3d8cfffd489054779f2ce7d29f6e64b76
 SHA512 
066aaf031907fe2ba424e3b92e677ae78b4a938308bea82b7aa20cf0ba5c3678f93b6c9bf8a41fcd4fadcdcc870674a2be777ddcc2a5018974bd56b09a9ef271
+DIST nvidia-modprobe-390.144.tar.bz2 35308 BLAKE2B 
1930c315aeb0e296c0d4795170d44a275da5ff8838fd8230559227852001b679fbca2830142ca7abcfa9c84626c9d9f222f7ab0cb3984d8d517f5ce431e5a9ea
 SHA512 
d542c1a7634a8c5ff803ca79f2fc02b17b129185177226ad60625a4d246bbaf740719ff024dbde0f5aa8273949446561261d700a27cf88217c2572e69882142c
 DIST nvidia-modprobe-450.119.03.tar.gz 42137 BLAKE2B 
054879187d33fbaaf4debdaa530b5f70bf19347891b905ac519bcb612146f0c4481629b88b07a872a4aed0f13e25fbbba3d1ed7f96ec3bb8a5c8da0855a1822a
 SHA512 
c299d08c82b3f226f5861a61c523100809eeca90f4573ef5c2d3968f74945aae652b7ad07c859ef31f1df5c3a8687f34af6cf1f5f26e45b928a702de4bc19e73
 DIST nvidia-modprobe-460.67.tar.gz 43140 BLAKE2B 
8243d355f9d51495c9d09f25ccbcb39c0a6ef472cbfaded98f10818fae655e1cf62ff2edcf40baea72b8cca9eebc947742b2516bb057410239193201bb843538
 SHA512 
16c8239b54988622196e0eea113173e44ff8b60cdcdf585bf859e6440aff2c6699bb107962776e69056dd7d5e3bbd6289ea628a2255ac27e22ef79521e9baad3
 DIST nvidia-modprobe-460.84.tar.bz2 38114 BLAKE2B 
5e08860d3fa1a3025b413ccc9e5c24f64deab475852ca725104eea76f1e919f70a76f99809fe3d92d024f9aecb8fb9622ddced926bc51bebe663422959d358ba
 SHA512 
4bf971b7fa3b155a25123c8a0c0305c53da1d2d3bb509f31698d1db2b821517836bdd111faccca5fb1d998dc13771568e3cee5c56f73ff497ca36fc55ade4a00
 DIST nvidia-modprobe-470.42.01.tar.bz2 38362 BLAKE2B 
fd00d7200d7f6423ea8accb57866220498b89358106ddfbb5e631d0e38aa6709ed33f943c1c643ce6f6f19d1214baf7d55e8960291cc18f10a5d4a0f0484763f
 SHA512 
e140c7e36e980888f7db6d96b642a60670748ca9ef172601adb7f77a3c84066da7a6977152233a41f524b0cc4b72be3bc351eb29259d7318d1b148d2a795e27e
 DIST nvidia-modprobe-470.57.02.tar.bz2 38363 BLAKE2B 
a718d9ac5c34ee66136e7471f7ede65d268183935088d85b9fd69a0a3a5109e10ef2d2da2f8d07896aee219ca17647bbe38831cf81457f5d4f33e6bf74d4c08d
 SHA512 
be4ade3425dd9557d4759889b1376e20c158c34136386c87b944ba24776fb056792be9bf449f04075e4e5ccc150fd065321fcc0e7c1af2d2b0be4d0a1bba7e4c
 DIST nvidia-persistenced-390.143.tar.gz 55994 BLAKE2B 
1cfa469b84ecc9abdf0423d624244e7023a63225dfb16ac93223c462230b50099e4b59493be2d10cd6f2717e31c02655c76797e3222947d561f02ff72a52dd46
 SHA512 
37c3eb0bcce83e9b9ac5bdefa736e26e94b82de379a0f5c29e1611631c79103a797e58f5d1dea34221dd3a3f1a521b6db556eed48b1f38465481da2509d2f21a
+DIST nvidia-persistenced-390.144.tar.bz2 48672 BLAKE2B 
82a92a33eb40971e56b772ffab121214f5675d0a8c618e356e7b55bc38ff9605fd2701d740d00a1e26c158c9df0ab38d0ba10891a3850f8e8cbee8fb231ba52d
 SHA512 
4432f2dd18c7c91fd0d59e4f2bdf7254f58ed2a6b652d319c4f7ce674522da1797a68dd6939c38e71710dcd3b754ae7cc8c6e7acb47a76e13d2091e8a8ee99c8
 DIST nvidia-persistenced-450.119.03.tar.gz 52488 BLAKE2B 
bb6c759ce73f8c143d04e0cc5cb05cd0cb39f12f330485a0a4fc628b0ba3752f0bdee686f55675e60c1365ee7d9e0f9dd8c3c883ecb6fab9a1b78903664c20c9
 SHA512 
b8040d8bff15cb97252b6a7311c1cd0dbcf3dda17f91e8b46a1f950a388a0e2ed72d9ac59c808376dfdb1d1fd64fc721b55b95022f59afef17a37c20c646171b
 DIST nvidia-persistenced-460.67.tar.gz 53334 BLAKE2B 
1354ec98fd2b95d264fd7df6219f639cf5d73173e6f0843a0880e6b18953904412cb756bd2c60432f6ae4c253d047515a9e32a128210fd94386ae6bc9a341b5c
 SHA512 
0b4f7d8aa781c3536f6cd020225d2a3bab4b83498090419198488a2bec811534e61ba90461ae846bd09f4530f19984d77ca41edf0a851b1b700d1c0e053d537f
 DIST nvidia-persistenced-460.84.tar.bz2 46048 BLAKE2B 
e3dc6168458d5da3517167cca43373b815104894f8e01785baa3c654717f4eb4841db014a7f8c73d4c24a1e849b86ffee51c33e457fcb4804cae856cd630100c
 SHA512 
43fbc5caa13f1e47d59054ddb4ff6129cd464dd558f8166b1103a9238b42205695e78c75aa89af89921d928bf9be07d2a9593306ce53d29a5bfaf90699917b13
 DIST nvidia-persistenced-470.42.01.tar.bz2 46695 BLAKE2B 
28f51ba8a09ab9d51d0a13c3426665d4268b8f7ccb8c0235aad4489e88f58d201784c121d5fe11e06410c4ceedcd7e6f77abf23d540e2fe5157b7867b5b9eee3
 SHA512 
fdbf3c1284e84000060dc6c8f5cce3ba41afb664cc91591dec75dac0f8913420b2f02d2d5c43346a7c601a80e088e4dad6a020018a6911c1f9d38776314ec2e3
 DIST nvidia-persistenced-470.57.02.tar.bz2 46533 BLAKE2B 
8a9660b1838dd4096237200974cc8d21f9f12864b346abbb52671c84a3f4612af550905643324699d6dc6ba068e7d7b373079e8493646b58051bb85e21f386fa
 SHA512 
774fea16044838480d809423ca498f517d95d1225b455a6e1a1a95254c7761eaab33e33fb19d407e3ed80cabaeb7de2d150de60360761b5e61f01fc27c6556a5
 DIST nvidia-settings-390.143.tar.gz 1297258 BLAKE2B 
d63b48c03069d4d2ae7f7034b4bc13ff3a1004bd64ce54ee553e614cb88cb081842b6c1428fd556e031ce69361927074822c5c620d2cde8d37a5887051ff56de
 SHA512 
7bbef03e77e73bb1e05585cfaf6823913e2446b1df8353044ae01f80693bb884fdcc1b38fa51b171756edaa234479cda027d6569d025b120b7b64f226f8eedce
+DIST nvidia-settings-390.144.tar.bz2 1109104 BLAKE2B 
6724f49c7e469f580206fc17308190bd346b6167348a8b8b3886209f58aca61b65eff30658484c1fee40af8c0d89fb62f73329b05a6ac45178ea4a6870e5aa85
 SHA512 
90afe201361d492c3152057d3ec46d68c0cd722fe0ea0587aa1156718017d59fb5f26f3db89d91d4680b2390617867dbe93bd14e1fb3dc70402527bfacf0ae5c
 DIST nvidia-settings-450.119.03.tar.gz 1229730 BLAKE2B 
17c7f4803b1a5ead8ea6616f3575325459aa6abb4759f7146bd99b4cac8c4cde80b92fa2d82897392a5fed20d4f324418ac9990caa4557b0d457e7f3b24fcb71
 SHA512 
f0c2226e05063bfd78453b561a92e28f64711ba3ce3d82026c39db3cd44959a2cf98f8a781fb604108bf6ef9dfe52cad4a9270b94005d8e4e5134f6ea4966da7
 DIST nvidia-settings-460.67.tar.gz 1233189 BLAKE2B 
33ffceefea4e184cb1873cdce97db26637e87cd20c82bcabcbfe88bcb084ac3d833ac5688cafa33a5a89383040d5c1c5d46de9c3f9a8ba6174574aa57aea2e46
 SHA512 
d1828379aa477394747ae3e5d3505e864d38a349dd159a04cb263613380afea9aea2081300b0d2b8ae205b800bfe6e8ba504e612989da394d757f00e4399b617
 DIST nvidia-settings-460.84.tar.bz2 1061100 BLAKE2B 
9098116b29dcb3124dfa2e8ae6e6e62e865ece37c4307843570753ecef1541feece3a945e0b2671da9273ec53fd97b75d6b07ed5db01a1ebb9e65a08b06f1fab
 SHA512 
9cb7dbe97bd15e722d151cd6131c56e23eafbd8b491b774b7940165cefb446253c50d8794fcec5809d1e6c82cdf4236bc06b25059a28bdfa0dc17ce77eaf6476
 DIST nvidia-settings-470.42.01.tar.bz2 1061961 BLAKE2B 
0b9f368ccc68b2399d1eafb2db6b231b925ef08c0d2394b190149d183ce97d88b83ae03d1fd024e6227468f96937403af77faae9c28feb71e3b584bb307b72a2
 SHA512 
f5b23ebe59ef3209f0ef94cfa69dca653cc3902d31109e4db28e84e8c43d24917c3c705132ffd0470c2bffb46fcdbcf63ab9885d95ab80692b44c2817335c15e
 DIST nvidia-settings-470.57.02.tar.bz2 1062237 BLAKE2B 
aace056c25027ba9f139fc2a5c7714fe8207eb32e6cfbdc9ee7d64b49277ab588249fb87a1d8049c24e8d46b77e4f5ba198a7b4519078ce094f5712b486e29d3
 SHA512 
91e03cf7e1ed974204425e7223587987101934ddbcce52717990de244840d89b37b7f84b0222e96e85844c9ac4f3812771303ec285a32d0339f519bf38813be0
 DIST nvidia-xconfig-390.143.tar.gz 140282 BLAKE2B 
3de0fe4bc0a049381e4504002bbe94887334310ca7b17d83add1237d7c15b7783e4f418acba3e261da564b1c00ca244f4ad02f3d2cbca0f0f68ee2900098fb36
 SHA512 
0c82dda4dd6db0c21cd9a2b88e4a77129bc4a0be8a17b398497328f4f1cb5c319f0428d7fbc3b0177d69246d55f96b03dd740d3480d67bb03049cd0cbe190132
+DIST nvidia-xconfig-390.144.tar.bz2 107147 BLAKE2B 
1b6ea6dfbe33474cd3e9409a7559a38716c4ce8d2583354232225a2a7ec10c7dbc2163f07c6849f4929e16c2fad179d583daad8a67d9cba950a62209b8ebebfa
 SHA512 
09bb3558be178deda4b26031560ebad4e98e68b6186e247d4638cbcb4bb5dc05937c6baeaf1cd4db5a7b7433af97c3150c526ed972ff51b6e1c7552235ec6b51
 DIST nvidia-xconfig-450.119.03.tar.gz 141079 BLAKE2B 
15200bdc8cfecb2575d95803b62fd110c4ff5bbfbe529ffda35455caba1ce3de91b26b21e40604cf5f57bdca0d6da2754a578ffb376a5582d46c6bbdf0adccbe
 SHA512 
d30f46d56dc3dc0e2ee4c26acb8a229ffb47b5fc45dc288c1c25d197d0138b2cc0a0e94f4a821d5613b359f12b5a34872d7631a9d606916e9f92c61e87cfb0cb
 DIST nvidia-xconfig-460.67.tar.gz 142323 BLAKE2B 
09c7281de09a2c2968b5f4a48eca63110e6db988429c844b55f8efc28fbcd9d44c79ad47149c25f657c2a98ae7576c01b2c9b7f643b8321fe1393adc571ebcaa
 SHA512 
0e65c81ec40d3eaeec036fbd8f46a3052a75ff0ad200c58438ff6c782a5764e62e51d03b4a2080770c32522894641288ac495f62bc39c3d5658b1ff87c9f6cdd
 DIST nvidia-xconfig-460.84.tar.bz2 108471 BLAKE2B 
cc3f100902778b66088bca3ff74df19f9ec47f45b4137a60c702f6c6742f011af890d67cbee685f1d3e27d337e3dbf9c23b0ba0b46e5bd341c4c679e7ff54584
 SHA512 
0c1060d7107a9557e90291829dd0f8728b0c7d6315a898ea17485c8932db528439aa84cb769f5c14d3c70f57942ca6e4cc4248807ffd43c961f3c145752aa5a3

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.144.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-390.144.ebuild
new file mode 100644
index 00000000000..24a3a3618ea
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.144.ebuild
@@ -0,0 +1,405 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MODULES_OPTIONAL_USE="driver"
+inherit desktop linux-info linux-mod multilib-build \
+       readme.gentoo-r1 systemd toolchain-funcs unpacker
+
+NV_KERNEL_MAX="5.13"
+NV_URI="https://download.nvidia.com/XFree86/";
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="https://www.nvidia.com/download/index.aspx";
+SRC_URI="
+       amd64? ( ${NV_URI}Linux-x86_64/${PV}/NVIDIA-Linux-x86_64-${PV}.run )
+       x86? ( ${NV_URI}Linux-aarch64/${PV}/NVIDIA-Linux-x86-${PV}.run )
+       ${NV_URI}nvidia-installer/nvidia-installer-${PV}.tar.bz2
+       ${NV_URI}nvidia-modprobe/nvidia-modprobe-${PV}.tar.bz2
+       ${NV_URI}nvidia-persistenced/nvidia-persistenced-${PV}.tar.bz2
+       ${NV_URI}nvidia-settings/nvidia-settings-${PV}.tar.bz2
+       ${NV_URI}nvidia-xconfig/nvidia-xconfig-${PV}.tar.bz2"
+# nvidia-installer is unused but here for GPL-2's "distribute sources"
+S="${WORKDIR}"
+
+LICENSE="GPL-2 MIT NVIDIA-r2"
+SLOT="0/${PV%%.*}"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="+X +driver static-libs +tools"
+
+COMMON_DEPEND="
+       acct-group/video
+       acct-user/nvpd
+       net-libs/libtirpc
+       tools? (
+               dev-libs/atk
+               dev-libs/glib:2
+               dev-libs/jansson
+               x11-libs/cairo
+               x11-libs/gdk-pixbuf:2
+               x11-libs/gtk+:3
+               x11-libs/libX11
+               x11-libs/libXext
+               x11-libs/libXxf86vm
+               x11-libs/pango
+       )"
+RDEPEND="
+       ${COMMON_DEPEND}
+       X? (
+               media-libs/libglvnd[X,${MULTILIB_USEDEP}]
+               x11-libs/libX11[${MULTILIB_USEDEP}]
+               x11-libs/libXext[${MULTILIB_USEDEP}]
+       )"
+DEPEND="
+       ${COMMON_DEPEND}
+       static-libs? (
+               x11-libs/libX11
+               x11-libs/libXext
+       )
+       tools? (
+               media-libs/libglvnd
+               sys-apps/dbus
+               x11-base/xorg-proto
+               x11-libs/libXrandr
+               x11-libs/libXv
+               x11-libs/libvdpau
+       )"
+BDEPEND="
+       app-misc/pax-utils
+       virtual/pkgconfig"
+
+QA_PREBUILT="opt/* usr/lib*"
+
+PATCHES=(
+       "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch
+       "${FILESDIR}"/nvidia-settings-390.141-fno-common.patch
+)
+
+DOCS=(
+       README.txt NVIDIA_Changelog
+       nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt
+)
+HTML_DOCS=( html/. )
+
+pkg_setup() {
+       use driver || return
+
+       local CONFIG_CHECK="
+               PROC_FS
+               ~DRM_KMS_HELPER
+               ~SYSVIPC
+               ~!AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT
+               ~!LOCKDEP
+               !DEBUG_MUTEXES"
+       local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but 
needed for Xorg auto-detection
+       of drivers (no custom config), and optional nvidia-drm.modeset=1.
+       Cannot be directly selected in the kernel's menuconfig, so enable
+       options such as CONFIG_DRM_FBDEV_EMULATION instead.
+       390.xx branch: also used by a GLX workaround needed for OpenGL."
+
+       BUILD_PARAMS='NV_VERBOSE=1 IGNORE_CC_MISMATCH=yes SYSSRC="${KV_DIR}" 
SYSOUT="${KV_OUT_DIR}"'
+       use x86 && BUILD_PARAMS+=' ARCH=i386' # needed for recognition
+       BUILD_TARGETS="modules" # defaults' clean sometimes deletes modules
+       MODULE_NAMES="
+               nvidia(video:kernel)
+               nvidia-drm(video:kernel)
+               nvidia-modeset(video:kernel)"
+       use amd64 && MODULE_NAMES+=" nvidia-uvm(video:kernel)" # no x86 support
+
+       linux-mod_pkg_setup
+
+       if [[ ${MERGE_TYPE} != binary ]] && kernel_is -gt ${NV_KERNEL_MAX/./ }; 
then
+               ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break 
this version of nvidia-drivers"
+               ewarn "or was not tested with it. It is recommended to use one 
of:"
+               ewarn "  <=sys-kernel/gentoo-kernel-${NV_KERNEL_MAX}"
+               ewarn "  <=sys-kernel/gentoo-sources-${NV_KERNEL_MAX}"
+               ewarn "You are free to try or use /etc/portage/patches, but 
support will"
+               ewarn "not be given and issues wait until NVIDIA releases a 
fixed version."
+               ewarn
+               ewarn "Do _not_ file a bug report if run into issues."
+               ewarn
+       fi
+}
+
+src_prepare() {
+       # make user patches usable across versions
+       rm nvidia-modprobe && mv nvidia-modprobe{-${PV},} || die
+       rm nvidia-persistenced && mv nvidia-persistenced{-${PV},} || die
+       rm nvidia-settings && mv nvidia-settings{-${PV},} || die
+       rm nvidia-xconfig && mv nvidia-xconfig{-${PV},} || die
+
+       default
+
+       # alternate tls library needed for 390's libglx.so (bug #785289)
+       mv tls/libnvidia-tls.so.${PV} . || die
+       if [[ -d 32 ]]; then
+               mv 32/tls/libnvidia-tls.so.${PV} 32 || die
+       fi
+
+       # prevent detection of incomplete kernel DRM support (bug #603818)
+       sed 's/defined(CONFIG_DRM)/defined(CONFIG_DRM_KMS_HELPER)/' \
+               -i kernel/conftest.sh || die
+
+       sed -e '/Exec=\|Icon=/s/_.*/nvidia-settings/' \
+               -e '/Categories=/s/_.*/System;Settings;/' \
+               -i nvidia-settings/doc/nvidia-settings.desktop || die
+
+       # remove gtk2 support (bug #592730)
+       sed '/^GTK2LIB = /d;/INSTALL.*GTK2LIB/,+1d' \
+               -i nvidia-settings/src/Makefile || die
+
+       sed 's/__USER__/nvpd/' \
+               
nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \
+               > nvidia-persistenced.service || die
+
+       sed 's/__NV_VK_ICD__/libGLX_nvidia.so.0/' \
+               nvidia_icd.json.template > nvidia_icd.json || die
+
+       sed "s|@LIBDIR@|${EPREFIX}/usr/$(get_libdir)|" \
+               "${FILESDIR}"/nvidia-drm-outputclass-390.conf > 
nvidia-drm-outputclass.conf || die
+
+       gzip -d nvidia-{cuda-mps-control,smi}.1.gz || die
+}
+
+src_compile() {
+       nvidia-drivers_make() {
+               emake -C nvidia-${1} ${2} \
+                       PREFIX="${EPREFIX}/usr" \
+                       HOST_CC="$(tc-getBUILD_CC)" \
+                       HOST_LD="$(tc-getBUILD_LD)" \
+                       NV_USE_BUNDLED_LIBJANSSON=0 \
+                       NV_VERBOSE=1 DO_STRIP= OUTPUTDIR=out
+       }
+
+       tc-export AR CC LD OBJCOPY
+
+       # may no longer be relevant but kept as a safety
+       export DISTCC_DISABLE=1 CCACHE_DISABLE=1
+
+       use driver && linux-mod_src_compile
+
+       # 390.xx persistenced doesn't auto-detect libtirpc
+       LIBS=$($(tc-getPKG_CONFIG) --libs libtirpc || die) \
+               common_cflags=$($(tc-getPKG_CONFIG) --cflags libtirpc || die) \
+               nvidia-drivers_make persistenced
+
+       nvidia-drivers_make modprobe
+       use X && nvidia-drivers_make xconfig
+
+       if use tools; then
+               nvidia-drivers_make settings
+       elif use static-libs; then
+               nvidia-drivers_make settings/src build-xnvctrl
+       fi
+}
+
+src_install() {
+       nvidia-drivers_make_install() {
+               emake -C nvidia-${1} install \
+                       DESTDIR="${D}" \
+                       PREFIX="${EPREFIX}/usr" \
+                       LIBDIR="${ED}/usr/$(get_libdir)" \
+                       NV_USE_BUNDLED_LIBJANSSON=0 \
+                       NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out
+       }
+
+       nvidia-drivers_libs_install() {
+               local libs=(
+                       EGL_nvidia
+                       GLESv1_CM_nvidia
+                       GLESv2_nvidia
+                       cuda
+                       nvcuvid
+                       nvidia-compiler
+                       nvidia-eglcore
+                       nvidia-encode
+                       nvidia-fatbinaryloader
+                       nvidia-glcore
+                       nvidia-glsi
+                       nvidia-ml
+                       nvidia-opencl
+                       nvidia-ptxjitcompiler
+                       nvidia-tls
+               )
+
+               if use X; then
+                       libs+=(
+                               GLX_nvidia
+                               nvidia-fbc
+                               nvidia-ifr
+                               vdpau_nvidia
+                       )
+               fi
+
+               local libdir=.
+               if [[ -d 32 && ${ABI} == x86 ]]; then
+                       libdir+=/32
+               else
+                       libs+=(
+                               nvidia-cfg
+                               nvidia-wfb
+                       )
+               fi
+
+               local lib soname
+               for lib in "${libs[@]}"; do
+                       lib=lib${lib}.so.${PV}
+
+                       # auto-detect soname and create appropriate symlinks
+                       soname=$(scanelf -qF'%S#F' ${lib}) || die "Scanning 
${lib} failed"
+                       if [[ ${soname} && ${soname} != ${lib} ]]; then
+                               ln -s ${lib} ${libdir}/${soname} || die
+                       fi
+                       ln -s ${lib} ${libdir}/${lib%.so*}.so || die
+
+                       dolib.so ${libdir}/${lib%.so*}*
+               done
+       }
+
+       if use driver; then
+               linux-mod_src_install
+
+               insinto /etc/modprobe.d
+               newins "${FILESDIR}"/nvidia-390.conf nvidia.conf
+       fi
+
+       if use X; then
+               exeinto /usr/$(get_libdir)/xorg/modules/drivers
+               doexe nvidia_drv.so
+
+               # 390 has legacy glx needing a modified .conf (bug #713546)
+               exeinto /usr/$(get_libdir)/extensions/nvidia
+               newexe libglx.so{.${PV},}
+               insinto /usr/share/X11/xorg.conf.d
+               newins {,50-}nvidia-drm-outputclass.conf
+
+               # vulkan icd uses libGLX_nvidia.so and so requires X
+               insinto /usr/share/vulkan/icd.d
+               doins nvidia_icd.json
+       fi
+
+       insinto /usr/share/glvnd/egl_vendor.d
+       doins 10_nvidia.json
+
+       insinto /etc/OpenCL/vendors
+       doins nvidia.icd
+
+       insinto /etc/nvidia
+       newins nvidia-application-profiles{-${PV},}-rc
+
+       # install built helpers
+       nvidia-drivers_make_install modprobe
+       # allow video group to load mods and create devs (bug #505092)
+       fowners root:video /usr/bin/nvidia-modprobe
+       fperms 4710 /usr/bin/nvidia-modprobe
+
+       nvidia-drivers_make_install persistenced
+       newconfd "${FILESDIR}/nvidia-persistenced.confd" nvidia-persistenced
+       newinitd "${FILESDIR}/nvidia-persistenced.initd" nvidia-persistenced
+       systemd_dounit nvidia-persistenced.service
+
+       use X && nvidia-drivers_make_install xconfig
+
+       if use tools; then
+               nvidia-drivers_make_install settings
+               doicon nvidia-settings/doc/nvidia-settings.png
+               domenu nvidia-settings/doc/nvidia-settings.desktop
+
+               insinto /usr/share/nvidia
+               newins nvidia-application-profiles{-${PV},}-key-documentation
+
+               exeinto /etc/X11/xinit/xinitrc.d
+               newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
+       fi
+
+       if use static-libs; then
+               dolib.a nvidia-settings/src/libXNVCtrl/libXNVCtrl.a
+
+               insinto /usr/include/NVCtrl
+               doins nvidia-settings/src/libXNVCtrl/NVCtrl{Lib,}.h
+       fi
+
+       # install prebuilt-only helpers
+       exeinto /opt/bin
+
+       doexe nvidia-cuda-mps-control
+       doman nvidia-cuda-mps-control.1
+       doexe nvidia-cuda-mps-server
+
+       doexe nvidia-debugdump
+       dobin nvidia-bug-report.sh
+
+       doexe nvidia-smi
+       doman nvidia-smi.1
+
+       # install prebuilt-only libraries
+       multilib_foreach_abi nvidia-drivers_libs_install
+
+       # create README.gentoo
+       local DISABLE_AUTOFORMATTING="yes"
+       local DOC_CONTENTS=\
+"Trusted users should be in the 'video' group to use NVIDIA devices.
+You can add yourself by using: gpasswd -a my-user video
+
+See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.
+
+For general information on using nvidia-drivers, please see:
+https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers";
+       readme.gentoo_create_doc
+
+       einstalldocs
+}
+
+pkg_preinst() {
+       has_version "x11-drivers/nvidia-drivers[wayland]" && NV_HAD_WAYLAND=1
+
+       use driver || return
+       linux-mod_pkg_preinst
+
+       # set video group id based on live system (bug #491414)
+       local g=$(getent group video | cut -d: -f3)
+       [[ ${g} ]] || die "Failed to determine video group id"
+       sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die
+}
+
+pkg_postinst() {
+       use driver && linux-mod_pkg_postinst
+
+       readme.gentoo_print_elog
+
+       if [[ -r /proc/driver/nvidia/version &&
+               $(grep -o '  [0-9.]*  ' /proc/driver/nvidia/version) != "  
${PV}  " ]]; then
+               ewarn "Currently loaded NVIDIA modules do not match the newly 
installed"
+               ewarn "libraries and will lead to GPU-using application issues."
+               use driver && ewarn "The easiest way to fix this is usually to 
reboot."
+       fi
+
+       if use x86 && [[ ! ${REPLACING_VERSIONS} ]]; then
+               elog "Note that NVIDIA is no longer offering support for the 
unified memory"
+               elog "module (nvidia-uvm) on x86 (32bit), as such the module 
was not built."
+               elog "This means OpenCL/CUDA (and related, like nvenc) cannot 
be used."
+               elog "Other functions, like OpenGL, will continue to work."
+       fi
+
+       if [[ ${NV_HAD_WAYLAND} ]]; then
+               elog "Support for EGLStream (egl-wayland) is no longer offered 
with legacy"
+               elog "nvidia-drivers. It is recommended to use nouveau drivers 
for wayland."
+       fi
+
+       # Try to show this message only to users that may really need it
+       # given the workaround is discouraged and usage isn't widespread.
+       if use X && [[ ${REPLACING_VERSIONS} ]] &&
+               ver_test ${REPLACING_VERSIONS} -lt 390.143 &&
+               grep -qr Coolbits 
"${EROOT}"/etc/X11/{xorg.conf,xorg.conf.d/*.conf} 2>/dev/null; then
+               elog
+               elog "Coolbits support with ${PN} has been restricted to 
require Xorg"
+               elog "with root privilege by NVIDIA (being in video group is 
not sufficient)."
+               elog "e.g. attempting to change fan speed with nvidia-settings 
would fail."
+               elog
+               elog "Depending on your display manager (e.g. sddm starts X as 
root, gdm doesn't)"
+               elog "or if using startx, it may be necessary to emerge 
x11-base/xorg-server with"
+               elog 'USE="suid -elogind -systemd" if wish to keep using this 
feature.'
+               elog "Bug: https://bugs.gentoo.org/784248";
+       fi
+}

Reply via email to