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/files/, x11-drivers/nvidia-drivers/
Date: Wed, 27 Sep 2017 16:26:16
Message-Id: 1506529541.b40400b5ec0252bee0915be28ba1b294de479972.jer@gentoo
1 commit: b40400b5ec0252bee0915be28ba1b294de479972
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 27 16:25:41 2017 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 27 16:25:41 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b40400b5
7
8 x11-drivers/nvidia-drivers: Old.
9
10 Package-Manager: Portage-2.3.10, Repoman-2.3.3
11
12 x11-drivers/nvidia-drivers/Manifest | 34 --
13 .../files/nvidia-drivers-304.135-endif.patch | 12 -
14 .../files/nvidia-drivers-375.39-profiles-rc.patch | 11 -
15 .../files/nvidia-drivers-375.66-profiles-rc.patch | 11 -
16 .../nvidia-drivers-304.135-r1.ebuild | 498 ------------------
17 .../nvidia-drivers/nvidia-drivers-304.135.ebuild | 493 ------------------
18 .../nvidia-drivers-340.102-r1.ebuild | 529 -------------------
19 .../nvidia-drivers/nvidia-drivers-340.102.ebuild | 524 -------------------
20 .../nvidia-drivers/nvidia-drivers-375.39.ebuild | 558 --------------------
21 .../nvidia-drivers/nvidia-drivers-375.66-r1.ebuild | 569 --------------------
22 .../nvidia-drivers/nvidia-drivers-375.66.ebuild | 564 --------------------
23 .../nvidia-drivers/nvidia-drivers-384.59-r1.ebuild | 578 ---------------------
24 .../nvidia-drivers/nvidia-drivers-384.69.ebuild | 578 ---------------------
25 13 files changed, 4959 deletions(-)
26
27 diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
28 index a224ca98cd0..b7e851dfe7d 100644
29 --- a/x11-drivers/nvidia-drivers/Manifest
30 +++ b/x11-drivers/nvidia-drivers/Manifest
31 @@ -1,74 +1,40 @@
32 DIST NVIDIA-FreeBSD-x86-173.14.39.tar.gz 20038266 SHA256 63a922ce4c5b676b4cb1ace98094dace4cc5408f2553e183df7b2127777a238b SHA512 96982fe7e0751c52fbef534193de09d187b99c1984c05e791223eb804719d8b3ba72efd983f227661ded4b71569bdbb914f1f629ab73a8bc9b8172832ccf3ec6 WHIRLPOOL 21f5906f42adf0064c7a7f81ac8e323de488e6d36356ee42c31a15c31ebb64335d5e2cff0ff022d41de480f9e0a57b3b96387f17151c7b59eceba2c61a7a102b
33 -DIST NVIDIA-FreeBSD-x86-304.135.tar.gz 35092250 SHA256 3bcecc26c67588174bcee96b25f4f70265f463e4b3eb85d83363977acf3b6d33 SHA512 2e8e8b6cc02bcb44fcfc5f7b378cfe104669d2092e5191261c800bb458281e4ae269d8ae3f7230f5e1432004d55120e063166ead5d91d80b96eb158f7927b34a WHIRLPOOL b42379f450630f20ece6f3af95b9f02d8c91121454d9c883f23cbb7a46e2099c41de2f15663932befb218eea856cb0a861fc34b19f3e84061cd0fa4f4c8722e6
34 DIST NVIDIA-FreeBSD-x86-304.137.tar.gz 35399011 SHA256 5f874133853eacc5b9a10311cec22d3c4898db7f75b92bb6c12d5be5126516fb SHA512 9bab183289461d915371b7b5b34e66fdfe8ffff945806dbdf00e0e1cc7242f7b74a0acfc6ed24c3643a6d51edc837cd905ba3b224c30040b0f40d662dc6e7a6d WHIRLPOOL 321b9a8aded7c6128687d620d43c65bb481543f9ece8f61f3e8a38ec9f3cd06f745462fe64fc080490f9e341ef1acd5fb4438e88435c1321e138b9fe58840d55
35 -DIST NVIDIA-FreeBSD-x86-340.102.tar.gz 12057262 SHA256 d3edf43d6fc518869c35ae8d98ab5d55b86ade71127956ef66b201f60bc5dfe8 SHA512 bf15e68b1eee85e83474aaa480096991eac7506481f1192b53e0e10ff891f177c50c1492c51fb68ce0af3c5ccc54dad60edc90ec42b156e8338e51b9f9542520 WHIRLPOOL 6eb5df57b709ea2c3ab1c81d7a186fd106ff019400d66bc68c91da12d27b0b365e2f1b44c6d41cd45f605a813be1b88d587fcd7b3513c251e3248dc2f243d529
36 DIST NVIDIA-FreeBSD-x86-340.104.tar.gz 60305172 SHA256 28c5fdd306e50c3e9ef23f68a63c90be0717231595fa3fec700b00117ba990e1 SHA512 051bb0e0be3a70f3d3265c493c96a1ac249730ce2c1b4a97f7fb4797daa92af066f2bb88b922a80e4a7f5d3e5d37e0ec8ac3f9fdda77e68c905ef55f47ccbc8e WHIRLPOOL 8212e5ff3dafc18e9caad5ce68b7c4eb1881fdfaf64cf7e63bda2d69464e8972097f6cb5be2672bb0a7fad307a44acd0732b77a005e479147fe21f901dab8afa
37 -DIST NVIDIA-FreeBSD-x86-375.39.tar.gz 59111267 SHA256 ca39ab55716516bbca62fc888ec786745a8df7f346e68703f54e1a42afad733e SHA512 8f5bf9ffc731ca90a2604b80c3974ee123a12d7db9ee9be1811f5e78711798d7a29737a3651406c1c5e24a197d50f2f2fc39d94c8d11f9700900ef13266a5bf7 WHIRLPOOL e6ce83478238b2f6497ed48688531a6ba4bf78baa2d376e6c8a0f04b35039ed1532a4618f8a53c60ab0778330313ca1e9eecb836a4ade4c5b006844386d4b23f
38 -DIST NVIDIA-FreeBSD-x86-375.66.tar.gz 59154988 SHA256 b664c4796626213e7bee4cace75bf576ffa2943ca26a0414bcf598c8e6ff5614 SHA512 b034d8bb569d7b4f277aabef9d82c7928c345c27fd25b77d5d843f0e587c9e3f641e1860f4459a06ab3e1e68460743d04553ce919b4c8ecd2a3b624875c78c52 WHIRLPOOL 9385aca80b3cf3d00a1b7686a43edcc5c9d7fb20a7223c0642676cb1d084a1cfc19b1e32babfb72b397e651cf3a0ef1adf71f45fc4a8f826476b68407c00497d
39 DIST NVIDIA-FreeBSD-x86-375.82.tar.gz 59566154 SHA256 4a5c17bf40f2edc475fadd08ddb2db169f51d8871c62723b082dd9041d801aa5 SHA512 6747bf6d6278c6ed0828c6fdcad5353e516f28384609a3f0a885966707eebb096926a876c17843bfa7626a01a6d4e0ab12c781faf9ac0291771b195c9eb13d85 WHIRLPOOL 8da17a8e56e7cd831da3544633352f74c053bc376fb2d0d803232c035c8bdc98e2e3688b4954ec7875cf30ec303df296d206e155c5dabf1f05e7fe6af9679e3a
40 DIST NVIDIA-FreeBSD-x86-378.13.tar.gz 59610253 SHA256 aca461f050950f1a3a81137ec8adf2057deaa20ad166bdd4ce8f3e34616e7a98 SHA512 a0101201089df2bbf5bdc4ded2228dd989da6a47da31c3ec8d55916b1ff3457924555f82c7381934745fdc1b1f8f78e3fc10e5089279eb13423628dbfe560c6b WHIRLPOOL ac67d07d3ffb0959f685b7d59de152ba8fc97e11c30ed3f1a200511bcaf3de1cd1879147f37fde66a1c8d13dd327aac8a9ac78d42cc9656ef79e3180897aaef1
41 DIST NVIDIA-FreeBSD-x86-381.22.tar.gz 60112159 SHA256 f309408941c7d393fe51b2356bd424791558b70f8f17f8856fbbefb1bcf74138 SHA512 ffe5882051fad081854e7b7fefe86a4da55b263b2ca217664991a7e0d84ff2f22d62a37c89afd578f3c99c12be897e5db7a3d1c71c747df655af8e220eb983fa WHIRLPOOL 42bd9205e28d067b1f7417607da21cd66411cefbd1cec74807bbdcee2255e758df2eb15f79a0c3fe1dde7d9f010cfcf648bb6a5890b4637ea7f799cc0810340d
42 -DIST NVIDIA-FreeBSD-x86-384.59.tar.gz 63257550 SHA256 0ae4aeb3beab6be586cd76f193d03ee7aa7397c66bfcdc84ab6629f808543bb0 SHA512 00598c3fe0d2361e0a8cf945fee19edb884c3bba059000d5103ea45c1f36a06238017752130ac7d8cdca0a7be87109dbb76b5cd318a5263495cbf0b91fc45fb9 WHIRLPOOL 12a9d4d5fbe5af9370e40ecea9fff7b9ffd868da988dd69bc9ad9b27529401a7f910f7013cb1a3765b5edd175c9c97eab0ecdce858c44adf5d8e6450ddcb38ee
43 -DIST NVIDIA-FreeBSD-x86-384.69.tar.gz 63499223 SHA256 2887ff505c56787cf24a8cbfb9648d6c3e53f15d11905ca969ac016f432de4d6 SHA512 dcdf8ed7683d73722984b2a466cc958d95563fcde0beb5aeafefa0226539c26163159f30b1d7371c819cd41823f63aff82f3150f59a1c529895faea9b3cb398f WHIRLPOOL 2e400861a1cf94371e810619b6a38b71b49f18f150225ca993df41f09e163a91bf59fb1a33d27dea9b07ae13cd981b3baf5b2b45190fedca39fa513e1f686479
44 DIST NVIDIA-FreeBSD-x86-384.90.tar.gz 63539967 SHA256 84a307e03c7db1eb230538e46c45640f815750141cb3d6bd6cb3f3e68381c31e SHA512 16e333a846f47618f6e732d89bd92fda628c02b28784226a879f23147df764c540c96d2fe517dea465a7d07022df676a009aec22bb09c4439b9ea8b0351c6996 WHIRLPOOL 8ec2fdcdf841a20abb579a65e6e18d1ea405a6edad98a57a9b1baa807d4725b3812b6d540ea6f31b84ae28a12a1117e903f258e8f80d93d5dfff52de0eea8920
45 DIST NVIDIA-FreeBSD-x86-96.43.23.tar.gz 15463464 SHA256 18d855db8381eda1a6cf548c9e5095fc5bb8694bf1d6e24fc1072fba4e54cd78 SHA512 42d7b1b76cdb3b23680363e565614a22112162a5dd3639cb804fe670c0c3f3f23595bbefa3f78afdc6a8ca848446dee853c7a355f2c96a0d01b354753ba2785c WHIRLPOOL f8e59ce521990cd9edee441e73f973f074db492952807a0931e362102874cddbb47604ff5c5eb20a0cbde27f9b6d4e440dd12cc2e5a20c9cb65bf3c0b3e62511
46 -DIST NVIDIA-FreeBSD-x86_64-304.135.tar.gz 36144428 SHA256 0e415045b96bb272150d35d72c4a17c3d8e7b593dc7ffc577f6f25cc04f9de95 SHA512 8939f0153e7dc98ed147c79a042731461f87582ef46c4762afadf6a5e1cd0ca32ca99415a3819f7e5abefb2df5c59731454e80873d3d622b73f27e75518c8793 WHIRLPOOL e8689e07f12e169f9abad243111bcddee7796826f0028d29bb5eb340649696a3688a74068f07f52d6764fba9924ddd1dba18e8ae442654fffa9b902ccbde2c7f
47 DIST NVIDIA-FreeBSD-x86_64-304.137.tar.gz 36474676 SHA256 231693189e1bdf5c1dd02315cde5ef9ed6c0854564314438f2f40f9788a34120 SHA512 f0ae7ccea417aceedf34bfb9c96fd79b31cbf74a8fa59d5199b0ad7b81b8a4aeb66cd4801a45cc37f836979cb4267aa69e08517beaa9b8cb9c66a477d02ef8de WHIRLPOOL 9eb9036d64bd52ccbc8ce641da57c34ec9165d1f74293bec21be6d874cc8338f785d68a45ae2e8cd1161a34b2c95246c9b5504bdf810dfbfae1814ad35eb6a1e
48 -DIST NVIDIA-FreeBSD-x86_64-340.102.tar.gz 60862932 SHA256 6d1108c2e8d1b25eb16cd8dc4eb221f2a20d2e4c39a515c0b5809fb407991f94 SHA512 fddef644937093550f9e5dfc25dc5cb81280785735c2d11f644b5eece8144b23bc88a353534ca95e925f54da9131ed5dd7460b72e554b6625df33e243476588f WHIRLPOOL 0b19ef96124768b8cafb0211a79f8ba6e3d04d9289d5194a59fdaa4eb15ab898c103346892007d9fd6eac75d6d503cd9724ab8f60bd7cf28fee2f9307b03d70b
49 DIST NVIDIA-FreeBSD-x86_64-340.104.tar.gz 61176133 SHA256 93b8ff6dacf1aa9f3b47af7bbcc09397ead6614edff46c85f2f1c5d5aec9a59d SHA512 d7535527fb9ffc820509da8d0b159c70627c72a7182c354448851a334fcd5b8835046d0e9812079af2fa92de0f3fce299a67e70ef50697a2a1f33b8d995e7f73 WHIRLPOOL 942075e9075879eb4656ee1ca612a0500f90d824cfc77018ee9e2dff804341f5fcd853e200deb0525fd0ecc394d99b15f31f6203854d0a4b0103c187961a74d6
50 -DIST NVIDIA-FreeBSD-x86_64-375.39.tar.gz 58308585 SHA256 0d58c450b3391cf28655f15505aaca8d011590efe5dd3ebc6a3212a9d7597b17 SHA512 2b9e4fe4c850c59050d6f586be743e6e9511d12ee3e5f760b6c6ef5ff2084b7bc147267a7844191db1bfab842806a47054ce8f7534d5fee614efbf08e1faaca4 WHIRLPOOL fe195242a1a3657609eb9ea0eda27daa22fcc40beaa35e3cfcda575978361f68da27a46411ad38a93bef333bba91c06b911545d4d14f19b3dd2d085ae7012408
51 -DIST NVIDIA-FreeBSD-x86_64-375.66.tar.gz 58343065 SHA256 f6977d58d57818c27989d0c87dff0bdcb348a57ac18e0607ba03fa7489caa089 SHA512 7a222192c04c6cc3fb7818caebb45b4f4e3c9f702bcc14400cc9a7d3d83daae40ff254b70b3845a44fa120b702734b4619f5d4c5a8d25300becfc5f73710f3e9 WHIRLPOOL c77b5457bf4c053baefe1cf676baf47b318cfbfb8c323a8f6d270a36d8119d7843d5e28313c0b011feb9f19aea430d3f37e5b7798304ec174b996871876445e1
52 DIST NVIDIA-FreeBSD-x86_64-375.82.tar.gz 58748290 SHA256 e58490883350a1bb713cdfafb31c377a33033f1a92b61a4111bf31e721d2e65d SHA512 5e2b42ff63e06219764db8187203ce1a2c3c8b478be31fc713ef396e8f8d46def9b2631d7989866740bd0c6a81bbf5d2ed083c14cfa7171c0d993553ca6f431c WHIRLPOOL ae9392648677d229ac920ad74ca1b59f330ffdb51b4a445b8c6f0efe95430810d5041f6d61ffa97350f9b167ab18a3a96c115a19b5aff7d390aec43de95d76cb
53 DIST NVIDIA-FreeBSD-x86_64-378.13.tar.gz 58779963 SHA256 451b9e4b2da86609c760a9a133efa8d37d844ad036299689f007c90463a7ca39 SHA512 34cfc383ba196ecec2cd27fc12bf30dd58f8782b73414e7b4c182e832ae0dce1f8c017afbb2101d7525d4e321f80cac49d3b578a8fc0cf88be9310f4deb77057 WHIRLPOOL 23929abd50467f267cf6b7d58a49fc6f667036b7e92363cc05b021790d0d5ebc61e181c3b2e7c32a6338328cfcc05311d74112b005d638c0295b2c6189dfa3b8
54 DIST NVIDIA-FreeBSD-x86_64-381.22.tar.gz 59284579 SHA256 f63001f380055da84eec7aaeddc13442a004ca6979adbfec46d3efac4bad7116 SHA512 51c5a87fabe87ec7f2589ed97d97447b127ecb5fe501c60bc7c9fce74141c127f4f9bb820d2a9b34fb56db436476d0cb18a73845ab4e7ec2315d4975c8ce4e32 WHIRLPOOL 40e1c62b9c8b1d5b20eaa1737285e1ce01e912b013c1aae7c9167e6d240cce5a461fd955e5583065a206abf6d6b195c8916464ce1dd4a53bb5ee94de3679373e
55 -DIST NVIDIA-FreeBSD-x86_64-384.59.tar.gz 62465295 SHA256 325612d3fa039b34f6f6e817eccfa03ef0b45346acf14e5d6daf01a6d4f4241b SHA512 ac2dac82e24e192812dd2f0c3c33d5ae06e41ec8f8f23c26a4d617e92494cb5509c9499c934355823261daa1ab9e98f68b804efadff86e99cf7d093b8125875c WHIRLPOOL a4bf1c3980699ab355788063ba184ab142ba8f0efd2398c38f9e1def875558bb67fb8d92df761da56ff84464d5b38eef7962f36219b7c311ad05d9d3dbe56fe8
56 -DIST NVIDIA-FreeBSD-x86_64-384.69.tar.gz 62681463 SHA256 d312cfa6892c83cf8fcf055f0327d24ce592643fcd619f92bbfeb47d60adb369 SHA512 b2f3d09bc1ebeb49da9b0eece79e6977479fd918a043313da6dd8d762ff0d7face2579ebac400b334be70ef0abdc34eefb297d80d707eab11a2161d077fa3d24 WHIRLPOOL 00ff8c94bc06f457e44de69739eedad1275d9a19fee0978614e9e90962437284e4c2bc04efcfab553bbe94c266ac6987aaabbb329a331a2e4a7d0b5ba26760a1
57 DIST NVIDIA-FreeBSD-x86_64-384.90.tar.gz 62724143 SHA256 b213fe40c3df81a8391bfa81fd2763a878f28e846c8dcd65fd922ad6dbbeb3e5 SHA512 0077ba72301b65fb898fa180d77ff6abcb2a78e62c3528e3afbdfb679248f34e6a00faefeec713e7cc4a7daa7c15e6039090e5dbb047d6a9f2cff38c2e8afdb9 WHIRLPOOL bbf04cf8603a1cce37eeefd918f7252bd024098c4a2b12d3513391e3d793c6cc0d82b0ba0018409fb16dfec2a7d3cd1dfa6711eb7a6afc7e0afa3f4601b05f53
58 -DIST NVIDIA-Linux-armv7l-gnueabihf-375.39.run 25350238 SHA256 52f512bbb3e2d5747df9b294667df9975564408c5ce4f3124aca7dba4355a3a9 SHA512 d888ab0c81c53138eec06e25be683798b5459a6862affa92429feb1e63fcd4cd7ac76bd78eff8c1bef245a25a6a7eb77994ad99c15ed65e8be1a64b3e4c45030 WHIRLPOOL 5714fdcd9e226a336e0abd46bd8a91eef486fc14de543a98d284b3ae3955e924dbde10a08144309b6c0b4e19fcb011bffb8c046a05cbe05f6123b22d270e2939
59 -DIST NVIDIA-Linux-armv7l-gnueabihf-375.66.run 26668661 SHA256 eb9ac4a3e7dad9f1a149eb04a4d6668b73b75b0e12cca41f12ac52db3e39981b SHA512 fa60b385f7ae79de28e6cb452c249c26a6dbec72f0ab1f31fa89fbea937e5bb13303b32e275384d834b524e58d47fb18497e0920657307a89f9cebe8aef96909 WHIRLPOOL c34e92a43601240dca0dfd2d14f75ce828b12c2da80dbafaf67c6437ba54dc214ca69ce0d0f1a8bef883539ec8430761055b0cf60d9a4502544b39d98bae9648
60 DIST NVIDIA-Linux-armv7l-gnueabihf-375.82.run 26650801 SHA256 d3419a636806915e809ccefd4a0566f3e21bf15ee21f39f1bf9411b041d48f05 SHA512 28554f1c24fe63c9257c0de3e84e4e739a45bf1c20ec7a53bc2c1b69b4e2355675061491ef5b03f3ae489cf623e553cfa68442f5536f137837327036d1c53d63 WHIRLPOOL f793a6eb559302289a01e39072927a45d1afb01ea086944ef243acf14000c989ecb4df26b55079764ad98c581ef5ae64d50ff7913c27895e0e216e9ffb25dea1
61 DIST NVIDIA-Linux-armv7l-gnueabihf-378.13.run 26514235 SHA256 399abf527d84e4b4d01ea66e0de4a1f9b1b39871b180ef3bf99c4718ebe3db91 SHA512 253786a821df85fa926ae842114321b3c70502f887ea7c2b6790dfe3836039ee5d390e6722ca8785904ec6487e465916923d3042dc6191b3b4522c3161b80cb0 WHIRLPOOL 154b13ecb368716980ab779894942831c13e4b2d47c1d5765ab14590663b34be1571df7934e1277c9a29cdfe93e209a04e2a9fed2830c407a42547433fd9e721
62 DIST NVIDIA-Linux-armv7l-gnueabihf-381.22.run 26815484 SHA256 246272d7da8f60564f4a0776fb3af82652add9e0ced8f856dc6530f97e97a748 SHA512 934cda37c7aed26243b5b661122e1c060de5b4df890aaf2295b6650dddea37cb4f0e3f0bebddb00b5d687b66ab5e028a203195c4d4ad3379593babda42febe77 WHIRLPOOL 33f5f0b0a9463419a2dcc6b2d6026607e28b13982fd0e26ffa797d9ba3ea6aab045b52523a653aea8378d31cd787628db1707c33df61c5d9b9943c07dde209aa
63 -DIST NVIDIA-Linux-armv7l-gnueabihf-384.59.run 28594162 SHA256 d77e90d34f1110208716c9cb1a208cc066ac5beb6055c5c9ffed538a534b34c2 SHA512 7ac7f42d5e203e22603682660e0e641f08aa9321ff7be0421d23a19af0b9d8d9efe53d4194ff65467fbb419910d64fe711d5b2a1583de987f3e73c1827bea2fe WHIRLPOOL b703954018f3139f2c92d72cc6f04a5a676fe7f75fb38c6b4782adb673f84f1df4ad73360a635df121ba9f7d0e364b79c018271909af286b5c7a042e2205749f
64 -DIST NVIDIA-Linux-armv7l-gnueabihf-384.69.run 28886325 SHA256 9ded813474ff591b17a19794e89d543fcedfb34d8b6275b2ac7abead26dad024 SHA512 e80d7aed341d7758e689b4adc7d6d0062d258a84b87bc6f085981fea500c777c25f9c9b3ea8de47f2399fc789b0fab46e2991eb8daa149e238cdf3c1ac3d9d7c WHIRLPOOL 5ae000b443bb994a589ca29101683e50f6afc82f72d26b84cfd07d71ab873b55b854e5313f5fc55289abacf492137d5abd0a6505adacf5367462d17724c3aa55
65 DIST NVIDIA-Linux-armv7l-gnueabihf-384.90.run 29044581 SHA256 d154bff89275a8781c68dd3ca27a66bb6ebf0c77a4b42418cdd43c6f3500e365 SHA512 4d6f23c1ce4ce26520aa49955959833d630a398df0826cf9b0c1109103fc3c4da1d7c19d1cc826116562bcbfca933f291b300bea377e91f72f15c97e0c6d68f0 WHIRLPOOL b709ec3288803124d1c2caf98d0ec68a23dcae6ac8affece55faa1613985621cd427f90d0f80ecba4fa00b797044b21022f9ab9feca09948d42e9dd1cf2f49fa
66 DIST NVIDIA-Linux-x86-173.14.39-pkg0.run 15134997 SHA256 a09935f37121ed3db8ae3da63a0d8e9d4348a19c859811c9fe44d6ce8e3eab23 SHA512 e24e15ccec725d3cbca502c2b77061776a81ef92917a950adec4ff6bdc34f10903aa654433177ea74be0dade4af81c5380d5710d375a5ea445940d06154bde93 WHIRLPOOL fce3d8e4f6cdf698f5a057514b6fe220bb1011025bdce5bd4cf0e424fb4d306d38251b6726bda03f290ea8137d5a95ed418cf8751722879f9042462abd9181b6
67 -DIST NVIDIA-Linux-x86-304.135.run 41202842 SHA256 5cb0a191ddca7b4c72b3c26cd57b7d719878ce628d24b5b026a0e5c8d3a00d93 SHA512 c2645cc9a6f23641d8b6da51e72e203980068c05e365fcc73b32322a6875ce95e81f4e0d893276e14e84e93464488539c16db6b3be04f5324cf7d7a12bb557f8 WHIRLPOOL 79d0d0badd36c94f3d48eef2c40184ee876bf78e153b18e73521fbe756cd78248da38405e7c08abbfa400ee8cd8150d81987bd7f45501937a77c39f7fc9a0ee6
68 DIST NVIDIA-Linux-x86-304.137.run 41504115 SHA256 ca98379fc2090bdfe8b74113d6ac7bcc7eadbd86a489c3c4ec4cd5ba9f6064f8 SHA512 021c5a88d50489aa0a1c7eac14259e23542b93578ae339995a2e38b786d06d239968c07933cab3fb78a922cffc7e213d6fa3fe07e34065a9c7f03e24f8729370 WHIRLPOOL a514bfaa4bb07121ee9194848573b4879e016c5df2c94aecd4410363e386c743d7a2559cc52b5ea7c984afa50360117f930b7db39aade489ed325a43a843aebf
69 -DIST NVIDIA-Linux-x86-340.102.run 38779756 SHA256 61b13d5dae0f6f5d788a4d8c4c98e8d971d19cb90b606058060d007946248828 SHA512 bea700c925a6044fcded40324bb389c5fa1aadc40831f685a76e7b0ded11161f492960950c201467e564d157dcbe0c330d13a2014f51d0073002c5a262a6f0ca WHIRLPOOL f7a3e3c5f8bb9eedf0a93104564d3d9c3eabc39a807c47e87f84373f89513afcafecb94e602b12fd24f872971f2d16a5f945326c670a6eebcd9ffcdcb70cb99e
70 DIST NVIDIA-Linux-x86-340.104.run 38823602 SHA256 e39015f8e2c6c87037be340fd1899f703ac15356c5694ad8187cd67e71491cd1 SHA512 8dacd5345a5794e862f4106ab9e8e402defa7883dd176c243d019209b560fe955d7576a13936364c01c5a249f15df58208308c9378c12c3438784376e5fb806c WHIRLPOOL 8ec9722a0f986c902483c0a88db336f8bf6710e713f20606f309ee5682f6cc1d384054ea057720faff0eab211c69a30ca297a3776b67f3b8712e36bdcd298d38
71 -DIST NVIDIA-Linux-x86-375.39.run 44434734 SHA256 7f33f6572c5c5c57df71531749c7339309a2097918375685ea8018826cf19456 SHA512 0f4e784f69f7b4c4696b62779892d8e77aef0adb701dcf5e844027e3a1870aa56bb913bc05f30b079c2519bdda87fa0096d612e9d74ea35b97882fc54fa5d2ca WHIRLPOOL 1d1e6a49d86a72f38d3c84a0b75735c9b64b0bbc75bc54e91318b316298609dd34ab3affff5795fedba44133536e22bf287a76d8271bf0cee990204a383e8a93
72 -DIST NVIDIA-Linux-x86-375.66.run 44495924 SHA256 29220e249a308f89c2a6fa48be6a0009d58f082d07d3fedfbf4ab0015559f14c SHA512 9f890529cba18197dfb340cefdbb058fd7d4edae39c1ef19a398aaba782e66993257a9f3e93b3f43eb51463492644c0cdf2c5a4af612d6401ebc5427783ef94a WHIRLPOOL bc323f86c99c83f2e3ad3b28f47adfb483988dbcc8e828aedf0e57d1a98a0b7aaf93055076abe2c92f614744309ff47a76edbeb38567cf1daa04c85094abe3dd
73 DIST NVIDIA-Linux-x86-375.82.run 44633335 SHA256 620629a35b1773e7eefddb9ea7982a4a75ecf65c1ea6f7ba83b94a84b269f561 SHA512 cbd6edd7490e0e5ef9dd2020c18eb5f75412993e06b9c4f1919f49a8ffdc36131a96d868ab51691fb5c4a661e826b000ec93363c9b168304f6498014e300bf24 WHIRLPOOL e32fc6ab5a76b1b5ccaebebaa1a46a99bdc25eefd824e095fe07b8bf30dc0644cf6e55c54b0d33cc89de598e8c154b5f285b0db863a8e7384923f3e716504b9c
74 DIST NVIDIA-Linux-x86-378.13.run 44397547 SHA256 05e62a6098aac7373438ee381072253a861d56522f74948c2b714e20e69a46b1 SHA512 b96d2558a1003a3c66cade3a1e16abd34d855c0e27cdebacdc0495e0ba3cd5c68bb84cc5f81bff1b9ddce36ac52e0dc125c56d868b77d7c8e2f606d559b13b4a WHIRLPOOL e8231978664cec766813821c0f363ef437ba627debc2d2664164fe44c344c480c50799710dbeeee782fdacdb66b16317d69a9dec4f21d347dc40e471201b3ed1
75 DIST NVIDIA-Linux-x86-381.22.run 42931990 SHA256 7b7dd6ee1c871dc5367fc207bba65077c3820a683decbfe6126fc70c0d1b9d08 SHA512 15723bfa25b0f39224ad5098c784a292abe4bf1daafaeb2f1df910bbab466e666b848b12e50b0bdd45f83e2d81957425a63501550b3dc5eb8fe3e576a8a10d22 WHIRLPOOL c01bec46411e3fc7f29cb38c6a16c8d50a3979cac1ce6a9e58feeb5878f6388f955cb95e0ecf71482c0fe9c1f57c989ecee6825bf921a0cf95c242f0a1ed3c23
76 -DIST NVIDIA-Linux-x86-384.59.run 47228533 SHA256 0c17658a4f874df43c02b521cd0a1357dfe2ea0b553be6b47ebae2e45323916c SHA512 09ceccb8c5bc136bb8ba75b8a15fc0cc08eb3680b6c5233b3dca4a1c55d14461d9adee2c686baff4173c8947c0bbc6dd52fcff5c1715a157015ecf4e802b214b WHIRLPOOL 72c05dfd9524a6551cf36fb2d1a8314414d756ee78735882aafee3c9f22ce906afacdcd0c38d781ff7056e330b14f71e5419fabdfa2811bd9cf7035e40ed0127
77 -DIST NVIDIA-Linux-x86-384.69.run 47081157 SHA256 3b70587582220ab1102bcb8386f206f89e6b146856af41f16eaa5910e54ef8fd SHA512 7bd55906111ed00bc8aef75a70ee636dc5a8fc22196a94d29cd651b5083b1974e45194ee7091dbb7db4f70706297bdf1c9e5f658500fc28323030684a3670663 WHIRLPOOL 3f1e26090a22d8ac44e0a3a8ea507878cdb7be5fa0666c1b01a68aa082659c144fd851ced7a94e02b2ecfefe1fa6361b56538af40abf28ee4edf4e04dea4eb16
78 DIST NVIDIA-Linux-x86-384.90.run 46518269 SHA256 97a667de9fd7fdaa2f47b75d4049394224788931c2df2848de3f5553de810057 SHA512 4376be6ade4380f8416a7d07a77b2e71bf07f62488c6887d2023973ca57574a0c6d294327159d4a0cf12400e4156b48fa989e3a80615cefd25d918e6d558784f WHIRLPOOL 27c080472f1bb733d6bcfd1a6f2e1bbeb126fa7a9aa76b0dc1db9bdbf770951403fdce06ab1209b68839ce3ec9954bacf92ff6f96b263d9c1c22ff82dd3209b7
79 DIST NVIDIA-Linux-x86-96.43.23-pkg0.run 11504817 SHA256 51e6adf4ba73071622045fc37169f80db3ae3e784dff53b29d35146a04042142 SHA512 bed5726e57637481fe4e3c03a65ec14fe949f00860e729ebde408f4fd861d7bfdc296a78bc2f5d42e8b282db09f4bbde1e0545df7228fa20227080dc4b868ba7 WHIRLPOOL 6d4fd1786c11f4e326cc3101d0bb1a2f8b63c25c3dd59f10188f8355759e2861ce44fd53d60258b513d5a1d6124d0f91ba8edf4d3668b6feabfb3e8d585f14fe
80 DIST NVIDIA-Linux-x86_64-173.14.39-pkg2.run 21100833 SHA256 15a953666d5681ba54c97498b578ffd286a1dc96d605f3b02110f3f99813100e SHA512 a65cd496e6ed57f771c3d99f37f616a1242d97844f6faef7a807825ad899c0e536a99fde397020839f0857883b934032f9491024f3047a6b06d3eea1f5d77713 WHIRLPOOL dc5f243b7d1de7e2d1b7f005e018a2940d63335b11a7c83c234b348b7a1839e9131169d2ea928bd8c2f549a4535149b03e16e6c94d59dfa745f7f904ff790a45
81 -DIST NVIDIA-Linux-x86_64-304.135.run 69766944 SHA256 706269a507995544a24d24b3386d8f7bddbad3ce52167fae0da9e00dad8ab588 SHA512 1b444eb4af219506c88fdc78746eca1afb8571017858cb387d8546f1950d6d82c1077c74e9bda9ccebb0e42bc5cb4d50d9b8c01989ae4cb52c3fc069304b7ab5 WHIRLPOOL 1fdb38f634ad8e41e37e1fb7d84ffb22566b4c5e182aa90f6a034db99c251864759909ad0b9db77ed08645c0da50362e40bc37574f526d58bb3eece7c37772a6
82 DIST NVIDIA-Linux-x86_64-304.137.run 70087133 SHA256 eb1f56db3a2bea13e3ccde7b5ae14abe8cd6c6dbe69af4c71c68a623cc96e3e2 SHA512 d7fae1e486005ffa2f2bf7f14f901bf5156fc784407a9acfea584f49bdab92ff5f4d0fb66c4c5b2800a461fc06aebb7d760bcb59f69ce4f2cb4e03e11816b3e9 WHIRLPOOL d6dee3634b0d6052c8fbaedc6e24c893af9c9d4f0f0a7836827bfaf26313f3877f398e6cfd22c27527c30dd37347206375d9c7e642cdc9a43a682bc787b1122b
83 -DIST NVIDIA-Linux-x86_64-340.102.run 69960567 SHA256 2b96d2f26c00405471e0ce10dca0b6639e91aeb43f7c5aadbdae28445a28df5a SHA512 eead5b6f18afd5384f30f36a9ef569dea7d6ca1dbc590f63d603694bcc6a8bf251942b36ca606cfd5e6775ef180cd564f3cf226a3f4c04d7ed354204fec15577 WHIRLPOOL 6596a178aa35ac841bf287fa1372f6748cda0430c6b4bcd18fa63d63030331df59e75d4a3dde63f28a6fa15cdfaa90d27136c96e9abe81fb05202f00430ecaa9
84 DIST NVIDIA-Linux-x86_64-340.104.run 70085947 SHA256 baf131979e3eafb65239aa1863751d5893906eeb617ce7fb37253d69fa2b66a2 SHA512 3f7609e7a736ba7d77f96ea5561789113878c5cb85b2970ad5ae63acdd09c0f5bc6449a5ed7d948f85d684870dcc2b479c4e0d7d750a47dfd716940de72dba3f WHIRLPOOL a1ed77fea5740ae68ea1f226fbb2b6601394f23f475da4d18da55c022f5a83daf87241c9a06051607dfd301bcfb5885d1672da838bd436fc506b993b762e1c69
85 -DIST NVIDIA-Linux-x86_64-375.39.run 77264092 SHA256 91be5a20841678d671f32074e2901791fe12c00ce1f3b6b3c4199ce302da85a7 SHA512 9a7e865db44f8e65be257b26250adcdf6f3dfac4e164f14a42b8e03c576016dfedf152d6a6cb84fb3ae9930d2b4ba472a63cf32d557395ff7fa429d9b8c9ccd0 WHIRLPOOL 03a27813464847958d9d2adb0bc260e31c6458df18e567c4c36e1eac5f7288108f88147cf1115f360b159a6d0ab459692abb35a79879e19fec2db30709802df1
86 -DIST NVIDIA-Linux-x86_64-375.66.run 75096990 SHA256 59e37f570ba5f3d7148028e96684d77f347d49a54e3722189782fc9b17d201c0 SHA512 518534816da3e20e9b539e19b0e93340b6141aebe76989139aa130883106a68da74f9ef3692419e0b3c111a7c50ceb20e45ecdde53af78c7c709b4d51acb5164 WHIRLPOOL b09f2f0b32735e761e7508091d3e83c3b6f3224213a0cf7d83df914d581ef390a110cd2015dbec8cfb5f87ff1e0924d2d93335f8f9862ed65f6da867c236bd25
87 DIST NVIDIA-Linux-x86_64-375.82.run 77461911 SHA256 11c40ea70d13d5b251531875afa264a2347f2fd122f7fd68c71d50861c7df2c3 SHA512 6da63b807d6dd7cc8ac2b794d5c9ab8383e3c0ce6a47adc600941545509fb40b5f06344781afc895bd83f2780b2bce187994df5684db2890f50b41adfee8f910 WHIRLPOOL e95000830bde425b61c3c7f9f1e99eff10ae26b2467afd35aebb95735182cf4f3b56900f0c6e808616089121138fa17b3c83ceec414fde379676815f67bd9cc8
88 DIST NVIDIA-Linux-x86_64-378.13.run 76239469 SHA256 3de379249ef25a8c10a24be2718bf1cb2e338da204e37874c4a0c66dbcdf42ee SHA512 2f6789aa0a400c035c0a074631dc5c26abb4f8a62efe928ca3a2865b89d29acfc09c27f23a664e438275e4bfd25c261745d4d495f9aca5f54ee6c53a389059d2 WHIRLPOOL 6e8dcc7be0981591f377babbd9e1430fddeac9a42291f36a95243d418882bc8b38a1e692e2fd62d4b785feca93165e54a64c015bd99193c699831465f512b180
89 DIST NVIDIA-Linux-x86_64-381.22.run 76581130 SHA256 1a3ea8a19fbf650774e5ecd86caa5ef950971958226ed04020b0e6e29b4dd28d SHA512 669a3dd0896d68ba8eef4689b01971b92ec1c54e6cf2a9ff8d3f281ae9f2fe402f079e76109b65e698d76798bcc7a9bb43da9d128fec59ac1fafafd1c4a1e42c WHIRLPOOL 6e80c1fa813bf2930c3d47198e0e382c96ed5c5bc7ba9713e55e61e3fe2ab12c7b28526b4940b15b74e19169c1579151272bdc4033641158012c8f6a56736c3b
90 -DIST NVIDIA-Linux-x86_64-384.59.run 81794848 SHA256 7b53bdee6e396cb271b57f77455fe5c561e655ca3fbba015dae0de3d6c11542b SHA512 e31c8e08b43131f6ed6c092a7e9086a1fc029ae06b3ec3cd059e939e890b177fc782414114dc432142354c96d1fddf43d90b20da03308fa7a96dc2830fade786 WHIRLPOOL 5816ccc8e6e7b1d0f7f3c8404e917fc5a6d6488e0a69a6b00e5b965926ba236dc770364528007e2af190d2a5f586d3a60328871e76291e4eee83a04bedda46f8
91 -DIST NVIDIA-Linux-x86_64-384.69.run 80803084 SHA256 a7b7984fc532be17c262bc4353e279824ae63625d8ae9f1016cb66d199b97650 SHA512 3d479c200c4dea3dc60131102c0eef0b55b5035717b88ccc3820e7168650b24ffca1433383f5f6c4d6472af9636aab632d5f04e20973f5d957372047cac58392 WHIRLPOOL e8dbd67b964355a416fd7e81a61406fe192ad7ea91abc2ed54dbf952fd5a6e514aded80f8d7e917d1db66dabf31bb3052251e3912499553d4656e022d42e4299
92 DIST NVIDIA-Linux-x86_64-384.90.run 80833580 SHA256 0ddf6820f2fcca3ec3021e42a028f8bc08bca123fcea4c0c3f41c8c0ffa5febd SHA512 f47d3bad9229c837c37a75ed5b189f688c8d05230762f58494f0e744610ea19046cae4cd61d0f3b63d4e1cde50590497f600ef36a48f65f489e4c2067a05d0d3 WHIRLPOOL 36d7ddbacbb8945457ef912ca46181786e4bc48677df42a4340824fe3dc169b231ea140a75dd31dc3052b08f272d1fef1a92868527e65850593299e75dd0d116
93 DIST NVIDIA-Linux-x86_64-96.43.23-pkg2.run 15962375 SHA256 ce8d8253e7dab7da63fbdac449ebf190cd0c10cbfffea0f8d0165515f851bc64 SHA512 04bec1187a6024a2b9839f008ec829281f1f2602dae2e639030bc385943186506bcaa2b46a230b2ab87f9217190841abc62f9e2d6395ab5559623389c31c6563 WHIRLPOOL 0651c44a51a1a06fcff5bfddbf9c3e408977e03263c7fe806cb6c01f9fe92f716dfe4e5190ffe1048bde72fcffdc8bca8267e74dd43ba5c9dfb22b6201fcc2bb
94 -DIST nvidia-settings-304.135.tar.bz2 1480857 SHA256 f5431a6547d7727506b72616156c18f927a89c0702e7f939b5043fdb66e4faf8 SHA512 ce77819c223d02bc5330a57047b45cf9022159b0d03b3fb1572a64aebbcb5872312acef3f56e2574acc4c2c92eae9ac6e602327fd2658c47f2b97c69cf61ebfb WHIRLPOOL 5fc6c4ada22d8a1b0cade4049691c013a5dfa0a7777d7789f310d363c9c4ed5cb724acc153ec562fcc2266228325096e3f733e8f1517a74c047388a4361d25d8
95 DIST nvidia-settings-304.137.tar.bz2 1481361 SHA256 b1de2296add50c2c67f8c0e08ae231ca707edb15c1b3db517c4b4d69b0b3bf44 SHA512 676d1f70c9a78ee234f5f1a283412430a386fa604de211afba02806a45906c5e246a002989b724d74752178d28c92a268de1c98d4c87876797d991253f16b0cc WHIRLPOOL d5f57bb3d72906fe3b387a05c454ecd4fe4f59a6c4536baebff3a3840498b85a2b44ed3a44a91a561b3c56690e8d0943b3ba9fddd219b6948e22a4cdbf79c203
96 -DIST nvidia-settings-340.102.tar.bz2 1550093 SHA256 2895d4e2597a6ea0c425d74c7a0808775065f5cf58397fbbe6e626b00c60a55a SHA512 1ab190d8bcba7cc39d47f38db2bee28fab48d48c9a6674c9ff29ea3f51103e13746ee1df2d30581bd8259fc1104fed90b36cba88907bb2f202c931d256eab66a WHIRLPOOL 58105b371bc7156c2749f4bf85377f06fca71eb0a933721d70987aa53bb6c94494de3be25363ccf326105ca475405dcd7c884ceb6158df352ac6cc70dcffbf7e
97 DIST nvidia-settings-340.104.tar.bz2 1549760 SHA256 b3eb8335dc6476bf5804f936f725320e2ca0d8d19ba7f5a4f35134ba6bc477ef SHA512 d4277ef0ce87ee7baf2c5155ca8d93e8db2483329053c541b6a605653f4a6883aad81ebdc45b4c60aa78b72bd4c6c88e5b1327cc4cd2f540fcee8dbd7edc3e53 WHIRLPOOL 4ef3ceb3f069c4b61f3a0c1557951a93890fc287bfa34ffca215c06bcd0c88537238f2b576ece9d42ad718e1d314eb0e7675922e900767d07d25574f805b2609
98 -DIST nvidia-settings-375.39.tar.gz 2112268 SHA256 71b651872f2f56dcb6f2c0498543da22027d71d0d5dce3b6a4e98425d0ec6d4c SHA512 e445bbdbfcca70b3e1f478219d3f13c5bea543e3b4d5c4a986f3e97ffd6d0c7cf78da98991316b81924b05d201f1dba48deec6263e0c28a2fb6d520008e390a2 WHIRLPOOL 6191581851e43ece748d670731566fbdeae77446cc54be1d48caf5c4f66e543409266ca54c1aca06a72ce4dfc9fa5a47a6d66783234a3a84d388a8b11e43cffa
99 -DIST nvidia-settings-375.66.tar.gz 2114252 SHA256 3a93d845be4a94f03e9768ee78d9f24ef8bd302e30b66e81a5a784356dcc36e9 SHA512 93933a86faa3525d99176e08a8dd943b06b7c4236e85636a765e2a1476d3f22afbfc1066208987542fc5dd26c9bb3239a75838add8c64f6abc4cdea5c02338e5 WHIRLPOOL d1c36169edf682c2a2872122a9d42654cd88f36048cdaf9b6ab6c13276301eb545f04092bc39d52c35890d11ad4acd3eb48f013b16ccfa8f3d5ce32f251b690b
100 DIST nvidia-settings-375.82.tar.gz 2114647 SHA256 11cc6afaa2472520090d966910fc1b0465c6cc903fe05ed80b3f54924a106b69 SHA512 7a374be56c8be52767d73a048029d9e55dc2abcf2f6a97eb4931544c927c85a1103a206be9e8d1ffcef36fec2caf2416f33699ad4d51e7dca17e4e844c37a595 WHIRLPOOL 2eb7de30119615460ffa4f37cd35f515e493c34b4c7e8d110b64a17bd919f32372f601f8418acbeb6021adb37528c5ad09da8678c569e72dddf9eff174b88c06
101 DIST nvidia-settings-378.13.tar.gz 2112676 SHA256 a446ec3553f3fd16f60a0cf42cf9cf078cb3911595bb518649c489334422e85a SHA512 6f5fda9c54b067e21f2c869bcfb7c799c99f584d769020cb15e8764f59183e6a6469919ec48bce47be2144910d0004a9ca221df4a9e4fa9ab9f18710b36fa420 WHIRLPOOL 2eb475a8808bdc8380eb92c4189f2ca5aabc839d466efaaaeef6737aa8a75014e3252fd3d4a1344cede268c3bafa52ddb07057aa500ac6f626382e220326474b
102 DIST nvidia-settings-381.22.tar.gz 2127491 SHA256 83cade551b43055bf93d7ca7e5911a4c61a9e7bea7d88b4c57aa885e82165e29 SHA512 79cd41b9c0e63b69574caddb62437132810ecb4cd07b90899976ae8535948f28d72021fc9a6969559909cf0f7a5d411b0202782970d64a82c636e7738c9d5681 WHIRLPOOL dfd0a4c568aa6ff1946fbe7c68f0c8cf8721c46bbe5dc82987ed900ca4b275781e7d1784e3094472ad9748c4008b5639791dcf51993b73aaeb03ce9a8e3a524c
103 -DIST nvidia-settings-384.59.tar.gz 2133723 SHA256 2ba5d254b2cbc35aca7862f6d7cbac8b6aabd9c082f7feaff7fba7b3a6a32caf SHA512 5556858f02f5d2b7a5b2fb6073902e98dc7d39267186cc47b810f07463e8507162bdffdf20f15e569766f05b411376a9002796979fc35a01b30aed821f0c3c47 WHIRLPOOL fcfd47ef9b5c3b9b40d62f3f7ec801d65c4efb99756dc727d5c050b1ae12a6fface409188b041c97b6e2d6daa3011d6e0b09cea6b1d7bee48907df38ce02101b
104 -DIST nvidia-settings-384.69.tar.gz 2137487 SHA256 7f8f377218bea06cf64fc8e30d969ac7e96c95e56d4c38c77c9dd2531cc34aca SHA512 3017be97f57c3f3792fefdc043e0bcc3c28c2dff9c6864dcd3a18e29c3dd4d2048e121a1e1d23310e80a3a132472d6e7e2db22ac7544f792aa7b3e112bc428c5 WHIRLPOOL 1a33e42863ec45277fa39481196520f7be8209be2396107133b64ff577577594c9a76ca5ea04e483e6ac21ef7340ab1bf433dd0707766051c85ee0421076e2e1
105 DIST nvidia-settings-384.90.tar.gz 2137511 SHA256 eca3d2bf55e680ca1726163035dbe39655b9eec21d3c953dda4a67818d3908ec SHA512 d5c78844af1e0faaefd523347dc3dd3f17a49e9d0ac87b64b4177f06743ff7e06e1a3e454ad54e805c1f976cced6b7f45bfa851334005e58f84f8401b26202af WHIRLPOOL 957c9d6f66e647f181367e02eaff71fcf1772f5468bdb1986da593d08713960d4f4be7a7a99bb991e9a2c44a002293a505c18afae23422c9353a1fec51f40b7c
106
107 diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-304.135-endif.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-304.135-endif.patch
108 deleted file mode 100644
109 index f902c742b74..00000000000
110 --- a/x11-drivers/nvidia-drivers/files/nvidia-drivers-304.135-endif.patch
111 +++ /dev/null
112 @@ -1,12 +0,0 @@
113 ---- a/kernel/os-agp.c
114 -+++ b/kernel/os-agp.c
115 -@@ -180,8 +180,8 @@
116 - {
117 - nv_mtrr_del(nv->agp.arch_phys_wc_add_token, agp_info.aper_base,
118 - agp_info.aper_size << 20);
119 --#endif
120 - }
121 -+#endif
122 - release:
123 - NV_AGPGART_BACKEND_RELEASE(drm_agp_p, nvl->agp_bridge);
124 - bailout:
125
126 diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.39-profiles-rc.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.39-profiles-rc.patch
127 deleted file mode 100644
128 index cb62f8dcbe5..00000000000
129 --- a/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.39-profiles-rc.patch
130 +++ /dev/null
131 @@ -1,11 +0,0 @@
132 ---- a/nvidia-application-profiles-375.39-rc
133 -+++ b/nvidia-application-profiles-375.39-rc
134 -@@ -48,7 +48,7 @@
135 - {
136 - "name" : "NoEnforceShaderInputOutputMatching",
137 - "settings" : [ "GLShaderPortabilityWarnings", false ]
138 -- },
139 -+ }
140 - ],
141 - "rules" : [
142 - {
143
144 diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.66-profiles-rc.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.66-profiles-rc.patch
145 deleted file mode 100644
146 index 33e77f300af..00000000000
147 --- a/x11-drivers/nvidia-drivers/files/nvidia-drivers-375.66-profiles-rc.patch
148 +++ /dev/null
149 @@ -1,11 +0,0 @@
150 ---- a/nvidia-application-profiles-375.66-rc
151 -+++ b/nvidia-application-profiles-375.66-rc
152 -@@ -48,7 +48,7 @@
153 - {
154 - "name" : "NoEnforceShaderInputOutputMatching",
155 - "settings" : [ "GLShaderPortabilityWarnings", false ]
156 -- },
157 -+ }
158 - ],
159 - "rules" : [
160 - {
161
162 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-304.135-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-304.135-r1.ebuild
163 deleted file mode 100644
164 index 28804d50042..00000000000
165 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-304.135-r1.ebuild
166 +++ /dev/null
167 @@ -1,498 +0,0 @@
168 -# Copyright 1999-2017 Gentoo Foundation
169 -# Distributed under the terms of the GNU General Public License v2
170 -
171 -EAPI=6
172 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
173 - portability toolchain-funcs unpacker user versionator udev
174 -
175 -NV_URI="http://http.download.nvidia.com/XFree86/"
176 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
177 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
178 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
179 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
180 -
181 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
182 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
183 -SRC_URI="
184 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
185 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
186 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
187 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
188 - tools? ( ${NV_URI}nvidia-settings/nvidia-settings-${PV}.tar.bz2 )
189 -"
190 -
191 -LICENSE="GPL-2 NVIDIA-r1"
192 -SLOT="0/${PV%.*}"
193 -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
194 -IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel static-libs +tools +X"
195 -RESTRICT="bindist mirror"
196 -EMULTILIB_PKG="true"
197 -
198 -COMMON="
199 - app-eselect/eselect-opencl
200 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
201 - tools? (
202 - dev-libs/atk
203 - dev-libs/glib:2
204 - x11-libs/gdk-pixbuf[X]
205 - x11-libs/gtk+:2
206 - x11-libs/libX11
207 - x11-libs/libXext
208 - x11-libs/pango[X]
209 - x11-libs/pangox-compat
210 - )
211 - X? (
212 - >=app-eselect/eselect-opengl-1.0.9
213 - )
214 -"
215 -DEPEND="${COMMON}
216 - kernel_linux? (
217 - virtual/linux-sources
218 - virtual/pkgconfig
219 - )"
220 -RDEPEND="${COMMON}
221 - acpi? ( sys-power/acpid )
222 - tools? ( !media-video/nvidia-settings )
223 - X? (
224 - <x11-base/xorg-server-1.19.99:=
225 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
226 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
227 - sys-libs/zlib[${MULTILIB_USEDEP}]
228 - x11-libs/libXvMC[${MULTILIB_USEDEP}]
229 - )
230 -"
231 -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1[${MULTILIB_USEDEP}] )"
232 -
233 -REQUIRED_USE="
234 - tools? ( X )
235 - static-libs? ( tools )
236 -"
237 -
238 -QA_PREBUILT="opt/* usr/lib*"
239 -
240 -S=${WORKDIR}/
241 -
242 -nvidia_drivers_versions_check() {
243 - if use amd64 && has_multilib_profile && \
244 - [ "${DEFAULT_ABI}" != "amd64" ]; then
245 - eerror "This ebuild doesn't currently support changing your default ABI"
246 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
247 - fi
248 -
249 - if use kernel_linux && kernel_is ge 4 10; then
250 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
251 - ewarn "which are limited to the following kernels:"
252 - ewarn "<sys-kernel/gentoo-sources-4.10"
253 - ewarn "<sys-kernel/vanilla-sources-4.10"
254 - ewarn ""
255 - ewarn "You are free to utilize eapply_user to provide whatever"
256 - ewarn "support you feel is appropriate, but will not receive"
257 - ewarn "support as a result of those changes."
258 - ewarn ""
259 - ewarn "Do not file a bug report about this."
260 - ewarn ""
261 - fi
262 -
263 - # Since Nvidia ships many different series of drivers, we need to give the user
264 - # some kind of guidance as to what version they should install. This tries
265 - # to point the user in the right direction but can't be perfect. check
266 - # nvidia-driver.eclass
267 - nvidia-driver-check-warning
268 -
269 - # Kernel features/options to check for
270 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
271 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
272 -
273 - # Now do the above checks
274 - use kernel_linux && check_extra_config
275 -}
276 -
277 -pkg_pretend() {
278 - nvidia_drivers_versions_check
279 -}
280 -
281 -pkg_setup() {
282 - nvidia_drivers_versions_check
283 -
284 - # try to turn off distcc and ccache for people that have a problem with it
285 - export DISTCC_DISABLE=1
286 - export CCACHE_DISABLE=1
287 -
288 - if use kernel_linux; then
289 - linux-mod_pkg_setup
290 - MODULE_NAMES="nvidia(video:${S}/kernel)"
291 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
292 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
293 - # linux-mod_src_compile calls set_arch_to_kernel, which
294 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
295 - # expects x86_64 or i386 and then converts it to x86
296 - # later on in the build process
297 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
298 - fi
299 -
300 - # set variables to where files are in the package structure
301 - if use kernel_FreeBSD; then
302 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
303 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
304 - NV_DOC="${S}/doc"
305 - NV_OBJ="${S}/obj"
306 - NV_SRC="${S}/src"
307 - NV_MAN="${S}/x11/man"
308 - NV_X11="${S}/obj"
309 - NV_SOVER=1
310 - elif use kernel_linux; then
311 - NV_DOC="${S}"
312 - NV_OBJ="${S}"
313 - NV_SRC="${S}/kernel"
314 - NV_MAN="${S}"
315 - NV_X11="${S}"
316 - NV_SOVER=${PV}
317 - else
318 - die "Could not determine proper NVIDIA package"
319 - fi
320 -}
321 -
322 -src_prepare() {
323 - # Please add a brief description for every added patch
324 -
325 - if use kernel_linux; then
326 - eapply "${FILESDIR}"/${P}-endif.patch
327 -
328 - if kernel_is lt 2 6 9 ; then
329 - eerror "You must build this against 2.6.9 or higher kernels."
330 - fi
331 -
332 - # If greater than 2.6.5 use M= instead of SUBDIR=
333 - convert_to_m "${NV_SRC}"/Makefile.kbuild
334 - fi
335 -
336 - if use pax_kernel; then
337 - ewarn "Using PAX patches is not supported. You will be asked to"
338 - ewarn "use a standard kernel should you have issues. Should you"
339 - ewarn "need support with these patches, contact the PaX team."
340 - eapply "${FILESDIR}"/${PN}-pax-const.patch
341 - eapply "${FILESDIR}"/${PN}-pax-usercopy.patch
342 - fi
343 -
344 - cat <<- EOF > "${S}"/nvidia.icd
345 - /usr/$(get_libdir)/libnvidia-opencl.so
346 - EOF
347 -
348 - local man_file
349 - for man_file in "${NV_MAN}"/*1.gz; do
350 - gunzip $man_file || die
351 - done
352 -
353 - # Allow user patches so they can support RC kernels and whatever else
354 - eapply_user
355 -}
356 -
357 -src_compile() {
358 - # This is already the default on Linux, as there's no toplevel Makefile, but
359 - # on FreeBSD there's one and triggers the kernel module build, as we install
360 - # it by itself, pass this.
361 -
362 - cd "${NV_SRC}"
363 - if use kernel_FreeBSD; then
364 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
365 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
366 - elif use kernel_linux; then
367 - MAKEOPTS=-j1 linux-mod_src_compile
368 - fi
369 -
370 - if use tools; then
371 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
372 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
373 - AR="$(tc-getAR)" \
374 - CC="$(tc-getCC)" \
375 - RANLIB="$(tc-getRANLIB)" \
376 - libXNVCtrl.a
377 - emake -C "${S}"/nvidia-settings-${PV}/src \
378 - AR="$(tc-getAR)" \
379 - CC="$(tc-getCC)" \
380 - LD="$(tc-getCC)" \
381 - LIBDIR="$(get_libdir)" \
382 - NVML_ENABLED=0 \
383 - NV_USE_BUNDLED_LIBJANSSON=0 \
384 - NV_VERBOSE=1 \
385 - RANLIB="$(tc-getRANLIB)" \
386 - STRIP_CMD=true
387 - fi
388 -}
389 -
390 -# Install nvidia library:
391 -# the first parameter is the library to install
392 -# the second parameter is the provided soversion
393 -# the third parameter is the target directory if its not /usr/lib
394 -donvidia() {
395 - # Full path to library minus SOVER
396 - MY_LIB="$1"
397 -
398 - # SOVER to use
399 - MY_SOVER="$2"
400 -
401 - # Where to install
402 - MY_DEST="$3"
403 -
404 - if [[ -z "${MY_DEST}" ]]; then
405 - MY_DEST="/usr/$(get_libdir)"
406 - action="dolib.so"
407 - else
408 - exeinto ${MY_DEST}
409 - action="doexe"
410 - fi
411 -
412 - # Get just the library name
413 - libname=$(basename $1)
414 -
415 - # Install the library with the correct SOVER
416 - ${action} ${MY_LIB}.${MY_SOVER} || \
417 - die "failed to install ${libname}"
418 -
419 - # If SOVER wasn't 1, then we need to create a .1 symlink
420 - if [[ "${MY_SOVER}" != "1" ]]; then
421 - dosym ${libname}.${MY_SOVER} \
422 - ${MY_DEST}/${libname}.1 || \
423 - die "failed to create ${libname} symlink"
424 - fi
425 -
426 - # Always create the symlink from the raw lib to the .1
427 - dosym ${libname}.1 \
428 - ${MY_DEST}/${libname} || \
429 - die "failed to create ${libname} symlink"
430 -}
431 -
432 -src_install() {
433 - if use kernel_linux; then
434 - linux-mod_src_install
435 -
436 - # Add the aliases
437 - # This file is tweaked with the appropriate video group in
438 - # pkg_preinst, see bug #491414
439 - insinto /etc/modprobe.d
440 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
441 -
442 - # Ensures that our device nodes are created when not using X
443 - exeinto "$(get_udevdir)"
444 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
445 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
446 - elif use kernel_FreeBSD; then
447 - if use x86-fbsd; then
448 - insinto /boot/modules
449 - doins "${S}/src/nvidia.kld"
450 - fi
451 -
452 - exeinto /boot/modules
453 - doexe "${S}/src/nvidia.ko"
454 - fi
455 -
456 - # NVIDIA kernel <-> userspace driver config lib
457 - donvidia "${NV_OBJ}"/libnvidia-cfg.so ${NV_SOVER}
458 -
459 - if use kernel_linux; then
460 - # NVIDIA video decode <-> CUDA
461 - donvidia "${NV_OBJ}"/libnvcuvid.so ${NV_SOVER}
462 - fi
463 -
464 - if use X; then
465 - # Xorg DDX driver
466 - insinto /usr/$(get_libdir)/xorg/modules/drivers
467 - doins "${NV_X11}"/nvidia_drv.so
468 -
469 - # Xorg GLX driver
470 - donvidia "${NV_X11}"/libglx.so ${NV_SOVER} \
471 - /usr/$(get_libdir)/opengl/nvidia/extensions
472 -
473 - # XvMC driver
474 - dolib.a "${NV_X11}"/libXvMCNVIDIA.a || \
475 - die "failed to install libXvMCNVIDIA.so"
476 - donvidia "${NV_X11}"/libXvMCNVIDIA.so ${NV_SOVER}
477 - dosym libXvMCNVIDIA.so.${NV_SOVER} \
478 - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \
479 - die "failed to create libXvMCNVIDIA_dynamic.so symlink"
480 - fi
481 -
482 - # OpenCL ICD for NVIDIA
483 - if use kernel_linux; then
484 - insinto /etc/OpenCL/vendors
485 - doins nvidia.icd
486 - donvidia "${NV_OBJ}"/libnvidia-opencl.so ${NV_SOVER}
487 - fi
488 -
489 - # Documentation
490 - dodoc -r "${NV_DOC}"/html
491 - if use kernel_FreeBSD; then
492 - dodoc "${NV_DOC}"/README
493 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
494 - use tools && doman "${NV_MAN}"/nvidia-settings.1
495 - else
496 - # Docs
497 - newdoc "${NV_DOC}"/README.txt README
498 - dodoc "${NV_DOC}"/NVIDIA_Changelog
499 - doman "${NV_MAN}"/nvidia-smi.1
500 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
501 - use tools && doman "${NV_MAN}"/nvidia-settings.1
502 - doman "${NV_MAN}"/nvidia-cuda-proxy-control.1
503 - fi
504 -
505 - # Helper Apps
506 - exeinto /opt/bin/
507 -
508 - if use X; then
509 - doexe "${NV_OBJ}"/nvidia-xconfig
510 - fi
511 -
512 - if use kernel_linux ; then
513 - doexe "${NV_OBJ}"/nvidia-debugdump
514 - doexe "${NV_OBJ}"/nvidia-cuda-proxy-control
515 - doexe "${NV_OBJ}"/nvidia-cuda-proxy-server
516 - doexe "${NV_OBJ}"/nvidia-smi
517 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
518 - fi
519 -
520 - dobin "${NV_OBJ}"/nvidia-bug-report.sh
521 -
522 - # Desktop entries for nvidia-settings
523 - if use tools ; then
524 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
525 - DESTDIR="${D}" \
526 - LIBDIR="${D}/usr/$(get_libdir)" \
527 - PREFIX=/usr \
528 - NV_USE_BUNDLED_LIBJANSSON=0 \
529 - install
530 -
531 - if use static-libs; then
532 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
533 -
534 - insinto /usr/include/NVCtrl
535 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
536 - fi
537 -
538 - # There is no icon in the FreeBSD tarball.
539 - use kernel_FreeBSD || \
540 - doicon "${NV_OBJ}"/nvidia-settings.png
541 -
542 - domenu "${FILESDIR}"/nvidia-settings.desktop
543 -
544 - exeinto /etc/X11/xinit/xinitrc.d
545 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
546 - fi
547 -
548 - #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
549 -
550 - if has_multilib_profile && use multilib ; then
551 - local OABI=${ABI}
552 - for ABI in $(get_install_abis) ; do
553 - src_install-libs
554 - done
555 - ABI=${OABI}
556 - unset OABI
557 - else
558 - src_install-libs
559 - fi
560 -
561 - is_final_abi || die "failed to iterate through all ABIs"
562 -
563 - readme.gentoo_create_doc
564 -}
565 -
566 -src_install-libs() {
567 - local inslibdir=$(get_libdir)
568 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
569 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
570 - local nv_libdir="${NV_OBJ}"
571 -
572 - if use kernel_linux && has_multilib_profile && \
573 - [[ ${ABI} == "x86" ]] ; then
574 - nv_libdir="${NV_OBJ}"/32
575 - fi
576 -
577 - if use X; then
578 - # The GLX libraries
579 - donvidia "${nv_libdir}"/libGL.so ${NV_SOVER} ${GL_ROOT}
580 - donvidia "${nv_libdir}"/libnvidia-glcore.so ${NV_SOVER}
581 - if use kernel_FreeBSD; then
582 - donvidia "${nv_libdir}"/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
583 - else
584 - donvidia "${nv_libdir}"/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
585 - fi
586 -
587 - # VDPAU
588 - donvidia "${nv_libdir}"/libvdpau_nvidia.so ${NV_SOVER}
589 - fi
590 -
591 - # NVIDIA monitoring library
592 - if use kernel_linux ; then
593 - donvidia "${nv_libdir}"/libnvidia-ml.so ${NV_SOVER}
594 - fi
595 -
596 - # CUDA & OpenCL
597 - if use kernel_linux; then
598 - donvidia "${nv_libdir}"/libcuda.so ${NV_SOVER}
599 - donvidia "${nv_libdir}"/libnvidia-compiler.so ${NV_SOVER}
600 - donvidia "${nv_libdir}"/libOpenCL.so 1.0.0 ${CL_ROOT}
601 - fi
602 -}
603 -
604 -pkg_preinst() {
605 - if use kernel_linux; then
606 - linux-mod_pkg_preinst
607 -
608 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
609 - if [ -z "${videogroup}" ]; then
610 - eerror "Failed to determine the video group gid"
611 - die "Failed to determine the video group gid"
612 - else
613 - sed -i \
614 - -e "s:PACKAGE:${PF}:g" \
615 - -e "s:VIDEOGID:${videogroup}:" \
616 - "${D}"/etc/modprobe.d/nvidia.conf || die
617 - fi
618 - fi
619 -
620 - # Clean the dynamic libGL stuff's home to ensure
621 - # we dont have stale libs floating around
622 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
623 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
624 - fi
625 - # Make sure we nuke the old nvidia-glx's env.d file
626 - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
627 - rm -f "${ROOT}"/etc/env.d/09nvidia
628 - fi
629 -}
630 -
631 -pkg_postinst() {
632 - use kernel_linux && linux-mod_pkg_postinst
633 -
634 - # Switch to the nvidia implementation
635 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
636 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
637 -
638 - readme.gentoo_print_elog
639 -
640 - if ! use X; then
641 - elog "You have elected to not install the X.org driver. Along with"
642 - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not"
643 - elog "installed. Additionally, once the driver is loaded your card"
644 - elog "and fan will run at max speed which may not be desirable."
645 - elog "Use the 'nvidia-smi' init script to have your card and fan"
646 - elog "speed scale appropriately."
647 - elog
648 - fi
649 - if ! use tools; then
650 - elog "USE=tools controls whether the nvidia-settings application"
651 - elog "is installed. If you would like to use it, enable that"
652 - elog "flag and re-emerge this ebuild. Optionally you can install"
653 - elog "media-video/nvidia-settings"
654 - elog
655 - fi
656 -}
657 -
658 -pkg_prerm() {
659 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
660 -}
661 -
662 -pkg_postrm() {
663 - use kernel_linux && linux-mod_pkg_postrm
664 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
665 -}
666
667 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-304.135.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-304.135.ebuild
668 deleted file mode 100644
669 index 4a3c1c5a612..00000000000
670 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-304.135.ebuild
671 +++ /dev/null
672 @@ -1,493 +0,0 @@
673 -# Copyright 1999-2017 Gentoo Foundation
674 -# Distributed under the terms of the GNU General Public License v2
675 -
676 -EAPI=6
677 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
678 - portability toolchain-funcs unpacker user versionator udev
679 -
680 -NV_URI="http://http.download.nvidia.com/XFree86/"
681 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
682 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
683 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
684 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
685 -
686 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
687 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
688 -SRC_URI="
689 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
690 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
691 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
692 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
693 - tools? ( ${NV_URI}nvidia-settings/nvidia-settings-${PV}.tar.bz2 )
694 -"
695 -
696 -LICENSE="GPL-2 NVIDIA-r1"
697 -SLOT="0/${PV%.*}"
698 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
699 -IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel static-libs +tools +X"
700 -RESTRICT="bindist mirror"
701 -EMULTILIB_PKG="true"
702 -
703 -COMMON="
704 - app-eselect/eselect-opencl
705 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
706 - tools? (
707 - dev-libs/atk
708 - dev-libs/glib:2
709 - x11-libs/gdk-pixbuf[X]
710 - x11-libs/gtk+:2
711 - x11-libs/libX11
712 - x11-libs/libXext
713 - x11-libs/pango[X]
714 - x11-libs/pangox-compat
715 - )
716 - X? (
717 - >=app-eselect/eselect-opengl-1.0.9
718 - )
719 -"
720 -DEPEND="${COMMON}
721 - kernel_linux? (
722 - virtual/linux-sources
723 - virtual/pkgconfig
724 - )"
725 -RDEPEND="${COMMON}
726 - acpi? ( sys-power/acpid )
727 - tools? ( !media-video/nvidia-settings )
728 - X? (
729 - <x11-base/xorg-server-1.19.99:=
730 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
731 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
732 - sys-libs/zlib[${MULTILIB_USEDEP}]
733 - x11-libs/libXvMC[${MULTILIB_USEDEP}]
734 - )
735 -"
736 -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1[${MULTILIB_USEDEP}] )"
737 -
738 -REQUIRED_USE="
739 - tools? ( X )
740 - static-libs? ( tools )
741 -"
742 -
743 -QA_PREBUILT="opt/* usr/lib*"
744 -
745 -S=${WORKDIR}/
746 -
747 -nvidia_drivers_versions_check() {
748 - if use amd64 && has_multilib_profile && \
749 - [ "${DEFAULT_ABI}" != "amd64" ]; then
750 - eerror "This ebuild doesn't currently support changing your default ABI"
751 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
752 - fi
753 -
754 - if use kernel_linux && kernel_is ge 4 10; then
755 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
756 - ewarn "which are limited to the following kernels:"
757 - ewarn "<sys-kernel/gentoo-sources-4.10"
758 - ewarn "<sys-kernel/vanilla-sources-4.10"
759 - ewarn ""
760 - ewarn "You are free to utilize eapply_user to provide whatever"
761 - ewarn "support you feel is appropriate, but will not receive"
762 - ewarn "support as a result of those changes."
763 - ewarn ""
764 - ewarn "Do not file a bug report about this."
765 - ewarn ""
766 - fi
767 -
768 - # Since Nvidia ships many different series of drivers, we need to give the user
769 - # some kind of guidance as to what version they should install. This tries
770 - # to point the user in the right direction but can't be perfect. check
771 - # nvidia-driver.eclass
772 - nvidia-driver-check-warning
773 -
774 - # Kernel features/options to check for
775 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
776 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
777 -
778 - # Now do the above checks
779 - use kernel_linux && check_extra_config
780 -}
781 -
782 -pkg_pretend() {
783 - nvidia_drivers_versions_check
784 -}
785 -
786 -pkg_setup() {
787 - nvidia_drivers_versions_check
788 -
789 - # try to turn off distcc and ccache for people that have a problem with it
790 - export DISTCC_DISABLE=1
791 - export CCACHE_DISABLE=1
792 -
793 - if use kernel_linux; then
794 - linux-mod_pkg_setup
795 - MODULE_NAMES="nvidia(video:${S}/kernel)"
796 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
797 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
798 - # linux-mod_src_compile calls set_arch_to_kernel, which
799 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
800 - # expects x86_64 or i386 and then converts it to x86
801 - # later on in the build process
802 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
803 - fi
804 -
805 - # set variables to where files are in the package structure
806 - if use kernel_FreeBSD; then
807 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
808 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
809 - NV_DOC="${S}/doc"
810 - NV_OBJ="${S}/obj"
811 - NV_SRC="${S}/src"
812 - NV_MAN="${S}/x11/man"
813 - NV_X11="${S}/obj"
814 - NV_SOVER=1
815 - elif use kernel_linux; then
816 - NV_DOC="${S}"
817 - NV_OBJ="${S}"
818 - NV_SRC="${S}/kernel"
819 - NV_MAN="${S}"
820 - NV_X11="${S}"
821 - NV_SOVER=${PV}
822 - else
823 - die "Could not determine proper NVIDIA package"
824 - fi
825 -}
826 -
827 -src_prepare() {
828 - # Please add a brief description for every added patch
829 -
830 - if use kernel_linux; then
831 - eapply "${FILESDIR}"/${P}-endif.patch
832 -
833 - if kernel_is lt 2 6 9 ; then
834 - eerror "You must build this against 2.6.9 or higher kernels."
835 - fi
836 -
837 - # If greater than 2.6.5 use M= instead of SUBDIR=
838 - convert_to_m "${NV_SRC}"/Makefile.kbuild
839 - fi
840 -
841 - if use pax_kernel; then
842 - ewarn "Using PAX patches is not supported. You will be asked to"
843 - ewarn "use a standard kernel should you have issues. Should you"
844 - ewarn "need support with these patches, contact the PaX team."
845 - eapply "${FILESDIR}"/${PN}-pax-const.patch
846 - eapply "${FILESDIR}"/${PN}-pax-usercopy.patch
847 - fi
848 -
849 - cat <<- EOF > "${S}"/nvidia.icd
850 - /usr/$(get_libdir)/libnvidia-opencl.so
851 - EOF
852 -
853 - # Allow user patches so they can support RC kernels and whatever else
854 - eapply_user
855 -}
856 -
857 -src_compile() {
858 - # This is already the default on Linux, as there's no toplevel Makefile, but
859 - # on FreeBSD there's one and triggers the kernel module build, as we install
860 - # it by itself, pass this.
861 -
862 - cd "${NV_SRC}"
863 - if use kernel_FreeBSD; then
864 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
865 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
866 - elif use kernel_linux; then
867 - MAKEOPTS=-j1 linux-mod_src_compile
868 - fi
869 -
870 - if use tools; then
871 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
872 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
873 - AR="$(tc-getAR)" \
874 - CC="$(tc-getCC)" \
875 - RANLIB="$(tc-getRANLIB)" \
876 - libXNVCtrl.a
877 - emake -C "${S}"/nvidia-settings-${PV}/src \
878 - AR="$(tc-getAR)" \
879 - CC="$(tc-getCC)" \
880 - LD="$(tc-getCC)" \
881 - LIBDIR="$(get_libdir)" \
882 - NVML_ENABLED=0 \
883 - NV_USE_BUNDLED_LIBJANSSON=0 \
884 - NV_VERBOSE=1 \
885 - RANLIB="$(tc-getRANLIB)" \
886 - STRIP_CMD=true
887 - fi
888 -}
889 -
890 -# Install nvidia library:
891 -# the first parameter is the library to install
892 -# the second parameter is the provided soversion
893 -# the third parameter is the target directory if its not /usr/lib
894 -donvidia() {
895 - # Full path to library minus SOVER
896 - MY_LIB="$1"
897 -
898 - # SOVER to use
899 - MY_SOVER="$2"
900 -
901 - # Where to install
902 - MY_DEST="$3"
903 -
904 - if [[ -z "${MY_DEST}" ]]; then
905 - MY_DEST="/usr/$(get_libdir)"
906 - action="dolib.so"
907 - else
908 - exeinto ${MY_DEST}
909 - action="doexe"
910 - fi
911 -
912 - # Get just the library name
913 - libname=$(basename $1)
914 -
915 - # Install the library with the correct SOVER
916 - ${action} ${MY_LIB}.${MY_SOVER} || \
917 - die "failed to install ${libname}"
918 -
919 - # If SOVER wasn't 1, then we need to create a .1 symlink
920 - if [[ "${MY_SOVER}" != "1" ]]; then
921 - dosym ${libname}.${MY_SOVER} \
922 - ${MY_DEST}/${libname}.1 || \
923 - die "failed to create ${libname} symlink"
924 - fi
925 -
926 - # Always create the symlink from the raw lib to the .1
927 - dosym ${libname}.1 \
928 - ${MY_DEST}/${libname} || \
929 - die "failed to create ${libname} symlink"
930 -}
931 -
932 -src_install() {
933 - if use kernel_linux; then
934 - linux-mod_src_install
935 -
936 - # Add the aliases
937 - # This file is tweaked with the appropriate video group in
938 - # pkg_preinst, see bug #491414
939 - insinto /etc/modprobe.d
940 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
941 -
942 - # Ensures that our device nodes are created when not using X
943 - exeinto "$(get_udevdir)"
944 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
945 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
946 - elif use kernel_FreeBSD; then
947 - if use x86-fbsd; then
948 - insinto /boot/modules
949 - doins "${S}/src/nvidia.kld"
950 - fi
951 -
952 - exeinto /boot/modules
953 - doexe "${S}/src/nvidia.ko"
954 - fi
955 -
956 - # NVIDIA kernel <-> userspace driver config lib
957 - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
958 -
959 - if use kernel_linux; then
960 - # NVIDIA video decode <-> CUDA
961 - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
962 - fi
963 -
964 - if use X; then
965 - # Xorg DDX driver
966 - insinto /usr/$(get_libdir)/xorg/modules/drivers
967 - doins ${NV_X11}/nvidia_drv.so
968 -
969 - # Xorg GLX driver
970 - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
971 - /usr/$(get_libdir)/opengl/nvidia/extensions
972 -
973 - # XvMC driver
974 - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
975 - die "failed to install libXvMCNVIDIA.so"
976 - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER}
977 - dosym libXvMCNVIDIA.so.${NV_SOVER} \
978 - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \
979 - die "failed to create libXvMCNVIDIA_dynamic.so symlink"
980 - fi
981 -
982 - # OpenCL ICD for NVIDIA
983 - if use kernel_linux; then
984 - insinto /etc/OpenCL/vendors
985 - doins nvidia.icd
986 - donvidia ${NV_OBJ}/libnvidia-opencl.so ${NV_SOVER}
987 - fi
988 -
989 - # Documentation
990 - dohtml ${NV_DOC}/html/*
991 - if use kernel_FreeBSD; then
992 - dodoc "${NV_DOC}/README"
993 - use X && doman "${NV_MAN}/nvidia-xconfig.1"
994 - use tools && doman "${NV_MAN}/nvidia-settings.1"
995 - else
996 - # Docs
997 - newdoc "${NV_DOC}/README.txt" README
998 - dodoc "${NV_DOC}/NVIDIA_Changelog"
999 - doman "${NV_MAN}/nvidia-smi.1.gz"
1000 - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
1001 - use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
1002 - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz"
1003 - fi
1004 -
1005 - # Helper Apps
1006 - exeinto /opt/bin/
1007 -
1008 - if use X; then
1009 - doexe ${NV_OBJ}/nvidia-xconfig
1010 - fi
1011 -
1012 - if use kernel_linux ; then
1013 - doexe ${NV_OBJ}/nvidia-debugdump
1014 - doexe ${NV_OBJ}/nvidia-cuda-proxy-control
1015 - doexe ${NV_OBJ}/nvidia-cuda-proxy-server
1016 - doexe ${NV_OBJ}/nvidia-smi
1017 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1018 - fi
1019 -
1020 - dobin ${NV_OBJ}/nvidia-bug-report.sh
1021 -
1022 - # Desktop entries for nvidia-settings
1023 - if use tools ; then
1024 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1025 - DESTDIR="${D}" \
1026 - LIBDIR="${D}/usr/$(get_libdir)" \
1027 - PREFIX=/usr \
1028 - NV_USE_BUNDLED_LIBJANSSON=0 \
1029 - install
1030 -
1031 - if use static-libs; then
1032 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1033 -
1034 - insinto /usr/include/NVCtrl
1035 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1036 - fi
1037 -
1038 - # There is no icon in the FreeBSD tarball.
1039 - use kernel_FreeBSD || \
1040 - doicon ${NV_OBJ}/nvidia-settings.png
1041 -
1042 - domenu "${FILESDIR}"/nvidia-settings.desktop
1043 -
1044 - exeinto /etc/X11/xinit/xinitrc.d
1045 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1046 - fi
1047 -
1048 - #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
1049 -
1050 - if has_multilib_profile && use multilib ; then
1051 - local OABI=${ABI}
1052 - for ABI in $(get_install_abis) ; do
1053 - src_install-libs
1054 - done
1055 - ABI=${OABI}
1056 - unset OABI
1057 - else
1058 - src_install-libs
1059 - fi
1060 -
1061 - is_final_abi || die "failed to iterate through all ABIs"
1062 -
1063 - readme.gentoo_create_doc
1064 -}
1065 -
1066 -src_install-libs() {
1067 - local inslibdir=$(get_libdir)
1068 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1069 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1070 - local libdir=${NV_OBJ}
1071 -
1072 - if use kernel_linux && has_multilib_profile && \
1073 - [[ ${ABI} == "x86" ]] ; then
1074 - libdir=${NV_OBJ}/32
1075 - fi
1076 -
1077 - if use X; then
1078 - # The GLX libraries
1079 - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT}
1080 - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER}
1081 - if use kernel_FreeBSD; then
1082 - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
1083 - else
1084 - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
1085 - fi
1086 -
1087 - # VDPAU
1088 - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER}
1089 - fi
1090 -
1091 - # NVIDIA monitoring library
1092 - if use kernel_linux ; then
1093 - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER}
1094 - fi
1095 -
1096 - # CUDA & OpenCL
1097 - if use kernel_linux; then
1098 - donvidia ${libdir}/libcuda.so ${NV_SOVER}
1099 - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER}
1100 - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT}
1101 - fi
1102 -}
1103 -
1104 -pkg_preinst() {
1105 - if use kernel_linux; then
1106 - linux-mod_pkg_preinst
1107 -
1108 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1109 - if [ -z "${videogroup}" ]; then
1110 - eerror "Failed to determine the video group gid"
1111 - die "Failed to determine the video group gid"
1112 - else
1113 - sed -i \
1114 - -e "s:PACKAGE:${PF}:g" \
1115 - -e "s:VIDEOGID:${videogroup}:" \
1116 - "${D}"/etc/modprobe.d/nvidia.conf || die
1117 - fi
1118 - fi
1119 -
1120 - # Clean the dynamic libGL stuff's home to ensure
1121 - # we dont have stale libs floating around
1122 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
1123 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1124 - fi
1125 - # Make sure we nuke the old nvidia-glx's env.d file
1126 - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
1127 - rm -f "${ROOT}"/etc/env.d/09nvidia
1128 - fi
1129 -}
1130 -
1131 -pkg_postinst() {
1132 - use kernel_linux && linux-mod_pkg_postinst
1133 -
1134 - # Switch to the nvidia implementation
1135 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1136 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1137 -
1138 - readme.gentoo_print_elog
1139 -
1140 - if ! use X; then
1141 - elog "You have elected to not install the X.org driver. Along with"
1142 - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not"
1143 - elog "installed. Additionally, once the driver is loaded your card"
1144 - elog "and fan will run at max speed which may not be desirable."
1145 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1146 - elog "speed scale appropriately."
1147 - elog
1148 - fi
1149 - if ! use tools; then
1150 - elog "USE=tools controls whether the nvidia-settings application"
1151 - elog "is installed. If you would like to use it, enable that"
1152 - elog "flag and re-emerge this ebuild. Optionally you can install"
1153 - elog "media-video/nvidia-settings"
1154 - elog
1155 - fi
1156 -}
1157 -
1158 -pkg_prerm() {
1159 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1160 -}
1161 -
1162 -pkg_postrm() {
1163 - use kernel_linux && linux-mod_pkg_postrm
1164 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1165 -}
1166
1167 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-340.102-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-340.102-r1.ebuild
1168 deleted file mode 100644
1169 index 39187a30aba..00000000000
1170 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-340.102-r1.ebuild
1171 +++ /dev/null
1172 @@ -1,529 +0,0 @@
1173 -# Copyright 1999-2017 Gentoo Foundation
1174 -# Distributed under the terms of the GNU General Public License v2
1175 -
1176 -EAPI=6
1177 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
1178 - portability toolchain-funcs unpacker user udev
1179 -
1180 -NV_URI="http://http.download.nvidia.com/XFree86/"
1181 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
1182 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
1183 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
1184 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
1185 -
1186 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
1187 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
1188 -SRC_URI="
1189 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
1190 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
1191 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
1192 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
1193 - tools? ( ${NV_URI}nvidia-settings/nvidia-settings-${PV}.tar.bz2 )
1194 -"
1195 -
1196 -LICENSE="GPL-2 NVIDIA-r2"
1197 -SLOT="0/${PV%.*}"
1198 -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
1199 -IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel static-libs +tools +X uvm"
1200 -RESTRICT="bindist mirror"
1201 -EMULTILIB_PKG="true"
1202 -
1203 -COMMON="
1204 - app-eselect/eselect-opencl
1205 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
1206 - tools? (
1207 - dev-libs/atk
1208 - dev-libs/glib:2
1209 - dev-libs/jansson
1210 - x11-libs/gdk-pixbuf[X]
1211 - >=x11-libs/gtk+-2.4:2
1212 - x11-libs/libX11
1213 - x11-libs/libXext
1214 - x11-libs/pango[X]
1215 - )
1216 - X? (
1217 - >=app-eselect/eselect-opengl-1.0.9
1218 - )
1219 -"
1220 -DEPEND="
1221 - ${COMMON}
1222 - app-arch/xz-utils
1223 - kernel_linux? ( virtual/linux-sources )
1224 -"
1225 -RDEPEND="
1226 - ${COMMON}
1227 - acpi? ( sys-power/acpid )
1228 - tools? ( !media-video/nvidia-settings )
1229 - X? (
1230 - <x11-base/xorg-server-1.19.99:=
1231 - >=x11-libs/libvdpau-0.3-r1
1232 - sys-libs/zlib[${MULTILIB_USEDEP}]
1233 - multilib? (
1234 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1235 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1236 - )
1237 - )
1238 -"
1239 -
1240 -REQUIRED_USE="tools? ( X )"
1241 -
1242 -QA_PREBUILT="opt/* usr/lib*"
1243 -
1244 -S=${WORKDIR}/
1245 -
1246 -nvidia_drivers_versions_check() {
1247 - if use amd64 && has_multilib_profile && \
1248 - [ "${DEFAULT_ABI}" != "amd64" ]; then
1249 - eerror "This ebuild doesn't currently support changing your default ABI"
1250 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
1251 - fi
1252 -
1253 - if use kernel_linux && kernel_is ge 4 10; then
1254 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
1255 - ewarn "which are limited to the following kernels:"
1256 - ewarn "<sys-kernel/gentoo-sources-4.10"
1257 - ewarn "<sys-kernel/vanilla-sources-4.10"
1258 - ewarn ""
1259 - ewarn "You are free to utilize eapply_user to provide whatever"
1260 - ewarn "support you feel is appropriate, but will not receive"
1261 - ewarn "support as a result of those changes."
1262 - ewarn ""
1263 - ewarn "Do not file a bug report about this."
1264 - ewarn ""
1265 - fi
1266 -
1267 - # Since Nvidia ships many different series of drivers, we need to give the user
1268 - # some kind of guidance as to what version they should install. This tries
1269 - # to point the user in the right direction but can't be perfect. check
1270 - # nvidia-driver.eclass
1271 - nvidia-driver-check-warning
1272 -
1273 - # Kernel features/options to check for
1274 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
1275 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
1276 -
1277 - # Now do the above checks
1278 - use kernel_linux && check_extra_config
1279 -}
1280 -
1281 -pkg_pretend() {
1282 - nvidia_drivers_versions_check
1283 -}
1284 -
1285 -pkg_setup() {
1286 - nvidia_drivers_versions_check
1287 -
1288 - # try to turn off distcc and ccache for people that have a problem with it
1289 - export DISTCC_DISABLE=1
1290 - export CCACHE_DISABLE=1
1291 -
1292 - if use kernel_linux; then
1293 - MODULE_NAMES="nvidia(video:${S}/kernel)"
1294 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel/uvm)"
1295 -
1296 - # This needs to run after MODULE_NAMES (so that the eclass checks
1297 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
1298 - # is set (so that KV_DIR is populated).
1299 - linux-mod_pkg_setup
1300 -
1301 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
1302 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
1303 -
1304 - # linux-mod_src_compile calls set_arch_to_kernel, which
1305 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
1306 - # expects x86_64 or i386 and then converts it to x86
1307 - # later on in the build process
1308 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
1309 - fi
1310 -
1311 - # set variables to where files are in the package structure
1312 - if use kernel_FreeBSD; then
1313 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
1314 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
1315 - NV_DOC="${S}/doc"
1316 - NV_OBJ="${S}/obj"
1317 - NV_SRC="${S}/src"
1318 - NV_MAN="${S}/x11/man"
1319 - NV_X11="${S}/obj"
1320 - NV_SOVER=1
1321 - elif use kernel_linux; then
1322 - NV_DOC="${S}"
1323 - NV_OBJ="${S}"
1324 - NV_SRC="${S}/kernel"
1325 - NV_MAN="${S}"
1326 - NV_X11="${S}"
1327 - NV_SOVER=${PV}
1328 - else
1329 - die "Could not determine proper NVIDIA package"
1330 - fi
1331 -}
1332 -
1333 -src_prepare() {
1334 - # Please add a brief description for every added patch
1335 -
1336 - if use kernel_linux; then
1337 - if kernel_is lt 2 6 9 ; then
1338 - eerror "You must build this against 2.6.9 or higher kernels."
1339 - fi
1340 -
1341 - # If greater than 2.6.5 use M= instead of SUBDIR=
1342 -# convert_to_m "${NV_SRC}"/Makefile.kbuild
1343 - fi
1344 -
1345 - if use pax_kernel; then
1346 - ewarn "Using PAX patches is not supported. You will be asked to"
1347 - ewarn "use a standard kernel should you have issues. Should you"
1348 - ewarn "need support with these patches, contact the PaX team."
1349 - eapply "${FILESDIR}"/${PN}-331.13-pax-usercopy.patch
1350 - eapply "${FILESDIR}"/${PN}-337.12-pax-constify.patch
1351 - fi
1352 -
1353 - local man_file
1354 - for man_file in "${NV_MAN}"/*1.gz; do
1355 - gunzip $man_file || die
1356 - done
1357 -
1358 - # Allow user patches so they can support RC kernels and whatever else
1359 - eapply_user
1360 -}
1361 -
1362 -src_compile() {
1363 - # This is already the default on Linux, as there's no toplevel Makefile, but
1364 - # on FreeBSD there's one and triggers the kernel module build, as we install
1365 - # it by itself, pass this.
1366 -
1367 - cd "${NV_SRC}"
1368 - if use kernel_FreeBSD; then
1369 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
1370 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
1371 - elif use kernel_linux; then
1372 - use uvm && MAKEOPTS=-j1
1373 - linux-mod_src_compile
1374 - fi
1375 -
1376 - if use tools; then
1377 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
1378 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
1379 - AR="$(tc-getAR)" \
1380 - CC="$(tc-getCC)" \
1381 - RANLIB="$(tc-getRANLIB)" \
1382 - libXNVCtrl.a
1383 - emake -C "${S}"/nvidia-settings-${PV}/src \
1384 - AR="$(tc-getAR)" \
1385 - CC="$(tc-getCC)" \
1386 - LD="$(tc-getCC)" \
1387 - LIBDIR="$(get_libdir)" \
1388 - NVML_ENABLED=0 \
1389 - NV_USE_BUNDLED_LIBJANSSON=0 \
1390 - NV_VERBOSE=1 \
1391 - RANLIB="$(tc-getRANLIB)" \
1392 - STRIP_CMD=true
1393 - fi
1394 -}
1395 -
1396 -# Install nvidia library:
1397 -# the first parameter is the library to install
1398 -# the second parameter is the provided soversion
1399 -# the third parameter is the target directory if its not /usr/lib
1400 -donvidia() {
1401 - # Full path to library minus SOVER
1402 - MY_LIB="$1"
1403 -
1404 - # SOVER to use
1405 - MY_SOVER="$2"
1406 -
1407 - # Where to install
1408 - MY_DEST="$3"
1409 -
1410 - if [[ -z "${MY_DEST}" ]]; then
1411 - MY_DEST="/usr/$(get_libdir)"
1412 - action="dolib.so"
1413 - else
1414 - exeinto ${MY_DEST}
1415 - action="doexe"
1416 - fi
1417 -
1418 - # Get just the library name
1419 - libname=$(basename $1)
1420 -
1421 - # Install the library with the correct SOVER
1422 - ${action} ${MY_LIB}.${MY_SOVER} || \
1423 - die "failed to install ${libname}"
1424 -
1425 - # If SOVER wasn't 1, then we need to create a .1 symlink
1426 - if [[ "${MY_SOVER}" != "1" ]]; then
1427 - dosym ${libname}.${MY_SOVER} \
1428 - ${MY_DEST}/${libname}.1 || \
1429 - die "failed to create ${libname} symlink"
1430 - fi
1431 -
1432 - # Always create the symlink from the raw lib to the .1
1433 - dosym ${libname}.1 \
1434 - ${MY_DEST}/${libname} || \
1435 - die "failed to create ${libname} symlink"
1436 -}
1437 -
1438 -src_install() {
1439 - if use kernel_linux; then
1440 - linux-mod_src_install
1441 -
1442 - # Add the aliases
1443 - # This file is tweaked with the appropriate video group in
1444 - # pkg_preinst, see bug #491414
1445 - insinto /etc/modprobe.d
1446 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
1447 - use uvm && doins "${FILESDIR}"/nvidia-uvm.conf
1448 -
1449 - # Ensures that our device nodes are created when not using X
1450 - exeinto "$(get_udevdir)"
1451 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
1452 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
1453 - elif use kernel_FreeBSD; then
1454 - if use x86-fbsd; then
1455 - insinto /boot/modules
1456 - doins "${S}/src/nvidia.kld"
1457 - fi
1458 -
1459 - exeinto /boot/modules
1460 - doexe "${S}/src/nvidia.ko"
1461 - fi
1462 -
1463 - # NVIDIA kernel <-> userspace driver config lib
1464 - donvidia "${NV_OBJ}"/libnvidia-cfg.so ${NV_SOVER}
1465 -
1466 - # NVIDIA framebuffer capture library
1467 - donvidia "${NV_OBJ}"/libnvidia-fbc.so ${NV_SOVER}
1468 -
1469 - # NVIDIA video encode/decode <-> CUDA
1470 - if use kernel_linux; then
1471 - donvidia "${NV_OBJ}"/libnvcuvid.so ${NV_SOVER}
1472 - donvidia "${NV_OBJ}"/libnvidia-encode.so ${NV_SOVER}
1473 - fi
1474 -
1475 - if use X; then
1476 - # Xorg DDX driver
1477 - insinto /usr/$(get_libdir)/xorg/modules/drivers
1478 - doins "${NV_X11}"/nvidia_drv.so
1479 -
1480 - # Xorg GLX driver
1481 - donvidia "${NV_X11}"/libglx.so ${NV_SOVER} \
1482 - /usr/$(get_libdir)/opengl/nvidia/extensions
1483 - fi
1484 -
1485 - # OpenCL ICD for NVIDIA
1486 - if use kernel_linux; then
1487 - insinto /etc/OpenCL/vendors
1488 - doins "${NV_OBJ}"/nvidia.icd
1489 - fi
1490 -
1491 - # Documentation
1492 - if use kernel_FreeBSD; then
1493 - dodoc "${NV_DOC}"/README
1494 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1495 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1496 - else
1497 - # Docs
1498 - newdoc "${NV_DOC}"/README.txt README
1499 - dodoc "${NV_DOC}"/NVIDIA_Changelog
1500 - doman "${NV_MAN}"/nvidia-smi.1
1501 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1502 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1503 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
1504 - fi
1505 -
1506 - docinto html
1507 - dodoc -r "${NV_DOC}"/html/*
1508 -
1509 - # Helper Apps
1510 - exeinto /opt/bin/
1511 -
1512 - if use X; then
1513 - doexe "${NV_OBJ}"/nvidia-xconfig
1514 - fi
1515 -
1516 - if use kernel_linux ; then
1517 - doexe "${NV_OBJ}"/nvidia-cuda-mps-control
1518 - doexe "${NV_OBJ}"/nvidia-cuda-mps-server
1519 - doexe "${NV_OBJ}"/nvidia-debugdump
1520 - doexe "${NV_OBJ}"/nvidia-persistenced
1521 - doexe "${NV_OBJ}"/nvidia-smi
1522 -
1523 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
1524 - doexe "${NV_OBJ}"/nvidia-modprobe
1525 - fowners root:video /opt/bin/nvidia-modprobe
1526 - fperms 4710 /opt/bin/nvidia-modprobe
1527 - dosym /{opt,usr}/bin/nvidia-modprobe
1528 -
1529 - doman nvidia-cuda-mps-control.1
1530 - doman nvidia-modprobe.1
1531 - doman nvidia-persistenced.1
1532 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1533 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
1534 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
1535 - fi
1536 -
1537 - if use tools; then
1538 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1539 - DESTDIR="${D}" \
1540 - LIBDIR="${D}/usr/$(get_libdir)" \
1541 - PREFIX=/usr \
1542 - NV_USE_BUNDLED_LIBJANSSON=0 \
1543 - install
1544 -
1545 - if use static-libs; then
1546 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1547 -
1548 - insinto /usr/include/NVCtrl
1549 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1550 - fi
1551 -
1552 - insinto /usr/share/nvidia/
1553 - doins nvidia-application-profiles-${PV}-key-documentation
1554 -
1555 - insinto /etc/nvidia
1556 - newins \
1557 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
1558 -
1559 - # There is no icon in the FreeBSD tarball.
1560 - use kernel_FreeBSD || \
1561 - doicon "${NV_OBJ}"/nvidia-settings.png
1562 -
1563 - domenu "${FILESDIR}"/nvidia-settings.desktop
1564 -
1565 - exeinto /etc/X11/xinit/xinitrc.d
1566 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1567 -
1568 - fi
1569 -
1570 - dobin "${NV_OBJ}"/nvidia-bug-report.sh
1571 -
1572 - #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
1573 -
1574 - if has_multilib_profile && use multilib ; then
1575 - local OABI=${ABI}
1576 - for ABI in $(get_install_abis) ; do
1577 - src_install-libs
1578 - done
1579 - ABI=${OABI}
1580 - unset OABI
1581 - else
1582 - src_install-libs
1583 - fi
1584 -
1585 - is_final_abi || die "failed to iterate through all ABIs"
1586 -
1587 - readme.gentoo_create_doc
1588 -}
1589 -
1590 -src_install-libs() {
1591 - local inslibdir=$(get_libdir)
1592 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1593 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1594 - local nv_libdir="${NV_OBJ}"
1595 -
1596 - if use kernel_linux && has_multilib_profile && \
1597 - [[ ${ABI} == "x86" ]] ; then
1598 - nv_libdir="${NV_OBJ}"/32
1599 - fi
1600 -
1601 - if use X; then
1602 - # The GLX libraries
1603 - donvidia "${nv_libdir}"/libEGL.so ${NV_SOVER} ${GL_ROOT}
1604 - donvidia "${nv_libdir}"/libGL.so ${NV_SOVER} ${GL_ROOT}
1605 - donvidia "${nv_libdir}"/libGLESv1_CM.so ${NV_SOVER} ${GL_ROOT}
1606 - donvidia "${nv_libdir}"/libnvidia-eglcore.so ${NV_SOVER}
1607 - donvidia "${nv_libdir}"/libnvidia-glcore.so ${NV_SOVER}
1608 - donvidia "${nv_libdir}"/libnvidia-glsi.so ${NV_SOVER}
1609 - donvidia "${nv_libdir}"/libnvidia-ifr.so ${NV_SOVER}
1610 - if use kernel_FreeBSD; then
1611 - donvidia "${nv_libdir}"/libnvidia-tls.so ${NV_SOVER}
1612 - else
1613 - donvidia "${nv_libdir}"/tls/libnvidia-tls.so ${NV_SOVER}
1614 - fi
1615 -
1616 - # VDPAU
1617 - donvidia "${nv_libdir}"/libvdpau_nvidia.so ${NV_SOVER}
1618 -
1619 - # GLES v2 libraries
1620 - insinto ${GL_ROOT}
1621 - doexe "${nv_libdir}"/libGLESv2.so.${PV}
1622 - dosym libGLESv2.so.${PV} ${GL_ROOT}/libGLESv2.so.2
1623 - dosym libGLESv2.so.2 ${GL_ROOT}/libGLESv2.so
1624 - fi
1625 -
1626 - # NVIDIA monitoring library
1627 - if use kernel_linux ; then
1628 - donvidia "${nv_libdir}"/libnvidia-ml.so ${NV_SOVER}
1629 - fi
1630 -
1631 - # CUDA & OpenCL
1632 - if use kernel_linux; then
1633 - donvidia "${nv_libdir}"/libcuda.so ${NV_SOVER}
1634 - donvidia "${nv_libdir}"/libnvidia-compiler.so ${NV_SOVER}
1635 - donvidia "${nv_libdir}"/libOpenCL.so 1.0.0 ${CL_ROOT}
1636 - donvidia "${nv_libdir}"/libnvidia-opencl.so ${NV_SOVER}
1637 - fi
1638 -}
1639 -
1640 -pkg_preinst() {
1641 - if use kernel_linux; then
1642 - linux-mod_pkg_preinst
1643 -
1644 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1645 - if [ -z "${videogroup}" ]; then
1646 - eerror "Failed to determine the video group gid"
1647 - die "Failed to determine the video group gid"
1648 - else
1649 - sed -i \
1650 - -e "s:PACKAGE:${PF}:g" \
1651 - -e "s:VIDEOGID:${videogroup}:" \
1652 - "${D}"/etc/modprobe.d/nvidia.conf || die
1653 - fi
1654 - fi
1655 -
1656 - # Clean the dynamic libGL stuff's home to ensure
1657 - # we dont have stale libs floating around
1658 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
1659 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1660 - fi
1661 - # Make sure we nuke the old nvidia-glx's env.d file
1662 - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
1663 - rm -f "${ROOT}"/etc/env.d/09nvidia
1664 - fi
1665 -}
1666 -
1667 -pkg_postinst() {
1668 - use kernel_linux && linux-mod_pkg_postinst
1669 -
1670 - # Switch to the nvidia implementation
1671 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1672 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1673 -
1674 - readme.gentoo_print_elog
1675 -
1676 - if ! use X; then
1677 - elog "You have elected to not install the X.org driver. Along with"
1678 - elog "this the OpenGL libraries and VDPAU libraries were not"
1679 - elog "installed. Additionally, once the driver is loaded your card"
1680 - elog "and fan will run at max speed which may not be desirable."
1681 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1682 - elog "speed scale appropriately."
1683 - elog
1684 - fi
1685 - if ! use tools; then
1686 - elog "USE=tools controls whether the nvidia-settings application"
1687 - elog "is installed. If you would like to use it, enable that"
1688 - elog "flag and re-emerge this ebuild. Optionally you can install"
1689 - elog "media-video/nvidia-settings"
1690 - elog
1691 - fi
1692 -}
1693 -
1694 -pkg_prerm() {
1695 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1696 -}
1697 -
1698 -pkg_postrm() {
1699 - use kernel_linux && linux-mod_pkg_postrm
1700 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1701 -}
1702
1703 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-340.102.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-340.102.ebuild
1704 deleted file mode 100644
1705 index b683c4e9673..00000000000
1706 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-340.102.ebuild
1707 +++ /dev/null
1708 @@ -1,524 +0,0 @@
1709 -# Copyright 1999-2017 Gentoo Foundation
1710 -# Distributed under the terms of the GNU General Public License v2
1711 -
1712 -EAPI=6
1713 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
1714 - portability toolchain-funcs unpacker user udev
1715 -
1716 -NV_URI="http://http.download.nvidia.com/XFree86/"
1717 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
1718 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
1719 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
1720 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
1721 -
1722 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
1723 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
1724 -SRC_URI="
1725 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
1726 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
1727 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
1728 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
1729 - tools? ( ${NV_URI}nvidia-settings/nvidia-settings-${PV}.tar.bz2 )
1730 -"
1731 -
1732 -LICENSE="GPL-2 NVIDIA-r2"
1733 -SLOT="0/${PV%.*}"
1734 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
1735 -IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel static-libs +tools +X uvm"
1736 -RESTRICT="bindist mirror"
1737 -EMULTILIB_PKG="true"
1738 -
1739 -COMMON="
1740 - app-eselect/eselect-opencl
1741 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
1742 - tools? (
1743 - dev-libs/atk
1744 - dev-libs/glib:2
1745 - dev-libs/jansson
1746 - x11-libs/gdk-pixbuf[X]
1747 - >=x11-libs/gtk+-2.4:2
1748 - x11-libs/libX11
1749 - x11-libs/libXext
1750 - x11-libs/pango[X]
1751 - )
1752 - X? (
1753 - >=app-eselect/eselect-opengl-1.0.9
1754 - )
1755 -"
1756 -DEPEND="
1757 - ${COMMON}
1758 - app-arch/xz-utils
1759 - kernel_linux? ( virtual/linux-sources )
1760 -"
1761 -RDEPEND="
1762 - ${COMMON}
1763 - acpi? ( sys-power/acpid )
1764 - tools? ( !media-video/nvidia-settings )
1765 - X? (
1766 - <x11-base/xorg-server-1.19.99:=
1767 - >=x11-libs/libvdpau-0.3-r1
1768 - sys-libs/zlib[${MULTILIB_USEDEP}]
1769 - multilib? (
1770 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1771 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1772 - )
1773 - )
1774 -"
1775 -
1776 -REQUIRED_USE="tools? ( X )"
1777 -
1778 -QA_PREBUILT="opt/* usr/lib*"
1779 -
1780 -S=${WORKDIR}/
1781 -
1782 -nvidia_drivers_versions_check() {
1783 - if use amd64 && has_multilib_profile && \
1784 - [ "${DEFAULT_ABI}" != "amd64" ]; then
1785 - eerror "This ebuild doesn't currently support changing your default ABI"
1786 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
1787 - fi
1788 -
1789 - if use kernel_linux && kernel_is ge 4 10; then
1790 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
1791 - ewarn "which are limited to the following kernels:"
1792 - ewarn "<sys-kernel/gentoo-sources-4.10"
1793 - ewarn "<sys-kernel/vanilla-sources-4.10"
1794 - ewarn ""
1795 - ewarn "You are free to utilize eapply_user to provide whatever"
1796 - ewarn "support you feel is appropriate, but will not receive"
1797 - ewarn "support as a result of those changes."
1798 - ewarn ""
1799 - ewarn "Do not file a bug report about this."
1800 - ewarn ""
1801 - fi
1802 -
1803 - # Since Nvidia ships many different series of drivers, we need to give the user
1804 - # some kind of guidance as to what version they should install. This tries
1805 - # to point the user in the right direction but can't be perfect. check
1806 - # nvidia-driver.eclass
1807 - nvidia-driver-check-warning
1808 -
1809 - # Kernel features/options to check for
1810 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
1811 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
1812 -
1813 - # Now do the above checks
1814 - use kernel_linux && check_extra_config
1815 -}
1816 -
1817 -pkg_pretend() {
1818 - nvidia_drivers_versions_check
1819 -}
1820 -
1821 -pkg_setup() {
1822 - nvidia_drivers_versions_check
1823 -
1824 - # try to turn off distcc and ccache for people that have a problem with it
1825 - export DISTCC_DISABLE=1
1826 - export CCACHE_DISABLE=1
1827 -
1828 - if use kernel_linux; then
1829 - MODULE_NAMES="nvidia(video:${S}/kernel)"
1830 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel/uvm)"
1831 -
1832 - # This needs to run after MODULE_NAMES (so that the eclass checks
1833 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
1834 - # is set (so that KV_DIR is populated).
1835 - linux-mod_pkg_setup
1836 -
1837 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
1838 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
1839 -
1840 - # linux-mod_src_compile calls set_arch_to_kernel, which
1841 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
1842 - # expects x86_64 or i386 and then converts it to x86
1843 - # later on in the build process
1844 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
1845 - fi
1846 -
1847 - # set variables to where files are in the package structure
1848 - if use kernel_FreeBSD; then
1849 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
1850 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
1851 - NV_DOC="${S}/doc"
1852 - NV_OBJ="${S}/obj"
1853 - NV_SRC="${S}/src"
1854 - NV_MAN="${S}/x11/man"
1855 - NV_X11="${S}/obj"
1856 - NV_SOVER=1
1857 - elif use kernel_linux; then
1858 - NV_DOC="${S}"
1859 - NV_OBJ="${S}"
1860 - NV_SRC="${S}/kernel"
1861 - NV_MAN="${S}"
1862 - NV_X11="${S}"
1863 - NV_SOVER=${PV}
1864 - else
1865 - die "Could not determine proper NVIDIA package"
1866 - fi
1867 -}
1868 -
1869 -src_prepare() {
1870 - # Please add a brief description for every added patch
1871 -
1872 - if use kernel_linux; then
1873 - if kernel_is lt 2 6 9 ; then
1874 - eerror "You must build this against 2.6.9 or higher kernels."
1875 - fi
1876 -
1877 - # If greater than 2.6.5 use M= instead of SUBDIR=
1878 -# convert_to_m "${NV_SRC}"/Makefile.kbuild
1879 - fi
1880 -
1881 - if use pax_kernel; then
1882 - ewarn "Using PAX patches is not supported. You will be asked to"
1883 - ewarn "use a standard kernel should you have issues. Should you"
1884 - ewarn "need support with these patches, contact the PaX team."
1885 - eapply "${FILESDIR}"/${PN}-331.13-pax-usercopy.patch
1886 - eapply "${FILESDIR}"/${PN}-337.12-pax-constify.patch
1887 - fi
1888 -
1889 - # Allow user patches so they can support RC kernels and whatever else
1890 - eapply_user
1891 -}
1892 -
1893 -src_compile() {
1894 - # This is already the default on Linux, as there's no toplevel Makefile, but
1895 - # on FreeBSD there's one and triggers the kernel module build, as we install
1896 - # it by itself, pass this.
1897 -
1898 - cd "${NV_SRC}"
1899 - if use kernel_FreeBSD; then
1900 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
1901 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
1902 - elif use kernel_linux; then
1903 - use uvm && MAKEOPTS=-j1
1904 - linux-mod_src_compile
1905 - fi
1906 -
1907 - if use tools; then
1908 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
1909 - emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
1910 - AR="$(tc-getAR)" \
1911 - CC="$(tc-getCC)" \
1912 - RANLIB="$(tc-getRANLIB)" \
1913 - libXNVCtrl.a
1914 - emake -C "${S}"/nvidia-settings-${PV}/src \
1915 - AR="$(tc-getAR)" \
1916 - CC="$(tc-getCC)" \
1917 - LD="$(tc-getCC)" \
1918 - LIBDIR="$(get_libdir)" \
1919 - NVML_ENABLED=0 \
1920 - NV_USE_BUNDLED_LIBJANSSON=0 \
1921 - NV_VERBOSE=1 \
1922 - RANLIB="$(tc-getRANLIB)" \
1923 - STRIP_CMD=true
1924 - fi
1925 -}
1926 -
1927 -# Install nvidia library:
1928 -# the first parameter is the library to install
1929 -# the second parameter is the provided soversion
1930 -# the third parameter is the target directory if its not /usr/lib
1931 -donvidia() {
1932 - # Full path to library minus SOVER
1933 - MY_LIB="$1"
1934 -
1935 - # SOVER to use
1936 - MY_SOVER="$2"
1937 -
1938 - # Where to install
1939 - MY_DEST="$3"
1940 -
1941 - if [[ -z "${MY_DEST}" ]]; then
1942 - MY_DEST="/usr/$(get_libdir)"
1943 - action="dolib.so"
1944 - else
1945 - exeinto ${MY_DEST}
1946 - action="doexe"
1947 - fi
1948 -
1949 - # Get just the library name
1950 - libname=$(basename $1)
1951 -
1952 - # Install the library with the correct SOVER
1953 - ${action} ${MY_LIB}.${MY_SOVER} || \
1954 - die "failed to install ${libname}"
1955 -
1956 - # If SOVER wasn't 1, then we need to create a .1 symlink
1957 - if [[ "${MY_SOVER}" != "1" ]]; then
1958 - dosym ${libname}.${MY_SOVER} \
1959 - ${MY_DEST}/${libname}.1 || \
1960 - die "failed to create ${libname} symlink"
1961 - fi
1962 -
1963 - # Always create the symlink from the raw lib to the .1
1964 - dosym ${libname}.1 \
1965 - ${MY_DEST}/${libname} || \
1966 - die "failed to create ${libname} symlink"
1967 -}
1968 -
1969 -src_install() {
1970 - if use kernel_linux; then
1971 - linux-mod_src_install
1972 -
1973 - # Add the aliases
1974 - # This file is tweaked with the appropriate video group in
1975 - # pkg_preinst, see bug #491414
1976 - insinto /etc/modprobe.d
1977 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
1978 - use uvm && doins "${FILESDIR}"/nvidia-uvm.conf
1979 -
1980 - # Ensures that our device nodes are created when not using X
1981 - exeinto "$(get_udevdir)"
1982 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
1983 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
1984 - elif use kernel_FreeBSD; then
1985 - if use x86-fbsd; then
1986 - insinto /boot/modules
1987 - doins "${S}/src/nvidia.kld"
1988 - fi
1989 -
1990 - exeinto /boot/modules
1991 - doexe "${S}/src/nvidia.ko"
1992 - fi
1993 -
1994 - # NVIDIA kernel <-> userspace driver config lib
1995 - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
1996 -
1997 - # NVIDIA framebuffer capture library
1998 - donvidia ${NV_OBJ}/libnvidia-fbc.so ${NV_SOVER}
1999 -
2000 - # NVIDIA video encode/decode <-> CUDA
2001 - if use kernel_linux; then
2002 - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
2003 - donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER}
2004 - fi
2005 -
2006 - if use X; then
2007 - # Xorg DDX driver
2008 - insinto /usr/$(get_libdir)/xorg/modules/drivers
2009 - doins ${NV_X11}/nvidia_drv.so
2010 -
2011 - # Xorg GLX driver
2012 - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
2013 - /usr/$(get_libdir)/opengl/nvidia/extensions
2014 - fi
2015 -
2016 - # OpenCL ICD for NVIDIA
2017 - if use kernel_linux; then
2018 - insinto /etc/OpenCL/vendors
2019 - doins ${NV_OBJ}/nvidia.icd
2020 - fi
2021 -
2022 - # Documentation
2023 - if use kernel_FreeBSD; then
2024 - dodoc "${NV_DOC}/README"
2025 - use X && doman "${NV_MAN}/nvidia-xconfig.1"
2026 - use tools && doman "${NV_MAN}/nvidia-settings.1"
2027 - else
2028 - # Docs
2029 - newdoc "${NV_DOC}/README.txt" README
2030 - dodoc "${NV_DOC}/NVIDIA_Changelog"
2031 - doman "${NV_MAN}/nvidia-smi.1.gz"
2032 - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
2033 - use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
2034 - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
2035 - fi
2036 -
2037 - docinto html
2038 - dodoc -r ${NV_DOC}/html/*
2039 -
2040 - # Helper Apps
2041 - exeinto /opt/bin/
2042 -
2043 - if use X; then
2044 - doexe ${NV_OBJ}/nvidia-xconfig
2045 - fi
2046 -
2047 - if use kernel_linux ; then
2048 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
2049 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
2050 - doexe ${NV_OBJ}/nvidia-debugdump
2051 - doexe ${NV_OBJ}/nvidia-persistenced
2052 - doexe ${NV_OBJ}/nvidia-smi
2053 -
2054 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
2055 - doexe ${NV_OBJ}/nvidia-modprobe
2056 - fowners root:video /opt/bin/nvidia-modprobe
2057 - fperms 4710 /opt/bin/nvidia-modprobe
2058 - dosym /{opt,usr}/bin/nvidia-modprobe
2059 -
2060 - doman nvidia-cuda-mps-control.1.gz
2061 - doman nvidia-modprobe.1.gz
2062 - doman nvidia-persistenced.1.gz
2063 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
2064 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
2065 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
2066 - fi
2067 -
2068 - if use tools; then
2069 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
2070 - DESTDIR="${D}" \
2071 - LIBDIR="${D}/usr/$(get_libdir)" \
2072 - PREFIX=/usr \
2073 - NV_USE_BUNDLED_LIBJANSSON=0 \
2074 - install
2075 -
2076 - if use static-libs; then
2077 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
2078 -
2079 - insinto /usr/include/NVCtrl
2080 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
2081 - fi
2082 -
2083 - insinto /usr/share/nvidia/
2084 - doins nvidia-application-profiles-${PV}-key-documentation
2085 -
2086 - insinto /etc/nvidia
2087 - newins \
2088 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
2089 -
2090 - # There is no icon in the FreeBSD tarball.
2091 - use kernel_FreeBSD || \
2092 - doicon ${NV_OBJ}/nvidia-settings.png
2093 -
2094 - domenu "${FILESDIR}"/nvidia-settings.desktop
2095 -
2096 - exeinto /etc/X11/xinit/xinitrc.d
2097 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
2098 -
2099 - fi
2100 -
2101 - dobin ${NV_OBJ}/nvidia-bug-report.sh
2102 -
2103 - #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
2104 -
2105 - if has_multilib_profile && use multilib ; then
2106 - local OABI=${ABI}
2107 - for ABI in $(get_install_abis) ; do
2108 - src_install-libs
2109 - done
2110 - ABI=${OABI}
2111 - unset OABI
2112 - else
2113 - src_install-libs
2114 - fi
2115 -
2116 - is_final_abi || die "failed to iterate through all ABIs"
2117 -
2118 - readme.gentoo_create_doc
2119 -}
2120 -
2121 -src_install-libs() {
2122 - local inslibdir=$(get_libdir)
2123 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
2124 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
2125 - local libdir=${NV_OBJ}
2126 -
2127 - if use kernel_linux && has_multilib_profile && \
2128 - [[ ${ABI} == "x86" ]] ; then
2129 - libdir=${NV_OBJ}/32
2130 - fi
2131 -
2132 - if use X; then
2133 - # The GLX libraries
2134 - donvidia ${libdir}/libEGL.so ${NV_SOVER} ${GL_ROOT}
2135 - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT}
2136 - donvidia ${libdir}/libGLESv1_CM.so ${NV_SOVER} ${GL_ROOT}
2137 - donvidia ${libdir}/libnvidia-eglcore.so ${NV_SOVER}
2138 - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER}
2139 - donvidia ${libdir}/libnvidia-glsi.so ${NV_SOVER}
2140 - donvidia ${libdir}/libnvidia-ifr.so ${NV_SOVER}
2141 - if use kernel_FreeBSD; then
2142 - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER}
2143 - else
2144 - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER}
2145 - fi
2146 -
2147 - # VDPAU
2148 - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER}
2149 -
2150 - # GLES v2 libraries
2151 - insinto ${GL_ROOT}
2152 - doexe ${libdir}/libGLESv2.so.${PV}
2153 - dosym libGLESv2.so.${PV} ${GL_ROOT}/libGLESv2.so.2
2154 - dosym libGLESv2.so.2 ${GL_ROOT}/libGLESv2.so
2155 - fi
2156 -
2157 - # NVIDIA monitoring library
2158 - if use kernel_linux ; then
2159 - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER}
2160 - fi
2161 -
2162 - # CUDA & OpenCL
2163 - if use kernel_linux; then
2164 - donvidia ${libdir}/libcuda.so ${NV_SOVER}
2165 - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER}
2166 - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT}
2167 - donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER}
2168 - fi
2169 -}
2170 -
2171 -pkg_preinst() {
2172 - if use kernel_linux; then
2173 - linux-mod_pkg_preinst
2174 -
2175 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
2176 - if [ -z "${videogroup}" ]; then
2177 - eerror "Failed to determine the video group gid"
2178 - die "Failed to determine the video group gid"
2179 - else
2180 - sed -i \
2181 - -e "s:PACKAGE:${PF}:g" \
2182 - -e "s:VIDEOGID:${videogroup}:" \
2183 - "${D}"/etc/modprobe.d/nvidia.conf || die
2184 - fi
2185 - fi
2186 -
2187 - # Clean the dynamic libGL stuff's home to ensure
2188 - # we dont have stale libs floating around
2189 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
2190 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
2191 - fi
2192 - # Make sure we nuke the old nvidia-glx's env.d file
2193 - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
2194 - rm -f "${ROOT}"/etc/env.d/09nvidia
2195 - fi
2196 -}
2197 -
2198 -pkg_postinst() {
2199 - use kernel_linux && linux-mod_pkg_postinst
2200 -
2201 - # Switch to the nvidia implementation
2202 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
2203 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
2204 -
2205 - readme.gentoo_print_elog
2206 -
2207 - if ! use X; then
2208 - elog "You have elected to not install the X.org driver. Along with"
2209 - elog "this the OpenGL libraries and VDPAU libraries were not"
2210 - elog "installed. Additionally, once the driver is loaded your card"
2211 - elog "and fan will run at max speed which may not be desirable."
2212 - elog "Use the 'nvidia-smi' init script to have your card and fan"
2213 - elog "speed scale appropriately."
2214 - elog
2215 - fi
2216 - if ! use tools; then
2217 - elog "USE=tools controls whether the nvidia-settings application"
2218 - elog "is installed. If you would like to use it, enable that"
2219 - elog "flag and re-emerge this ebuild. Optionally you can install"
2220 - elog "media-video/nvidia-settings"
2221 - elog
2222 - fi
2223 -}
2224 -
2225 -pkg_prerm() {
2226 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2227 -}
2228 -
2229 -pkg_postrm() {
2230 - use kernel_linux && linux-mod_pkg_postrm
2231 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2232 -}
2233
2234 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-375.39.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-375.39.ebuild
2235 deleted file mode 100644
2236 index 89e7506aba7..00000000000
2237 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-375.39.ebuild
2238 +++ /dev/null
2239 @@ -1,558 +0,0 @@
2240 -# Copyright 1999-2017 Gentoo Foundation
2241 -# Distributed under the terms of the GNU General Public License v2
2242 -
2243 -EAPI=6
2244 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
2245 - portability toolchain-funcs unpacker user udev
2246 -
2247 -NV_URI="http://http.download.nvidia.com/XFree86/"
2248 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
2249 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
2250 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
2251 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
2252 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
2253 -
2254 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
2255 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
2256 -SRC_URI="
2257 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
2258 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
2259 - arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
2260 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
2261 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
2262 - tools? (
2263 - https://github.com/NVIDIA/nvidia-settings/archive/${PV}.tar.gz -> nvidia-settings-${PV}.tar.gz
2264 - )
2265 -"
2266 -
2267 -LICENSE="GPL-2 NVIDIA-r2"
2268 -SLOT="0/${PV%.*}"
2269 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
2270 -RESTRICT="bindist mirror"
2271 -EMULTILIB_PKG="true"
2272 -
2273 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
2274 -REQUIRED_USE="
2275 - tools? ( X )
2276 - static-libs? ( tools )
2277 -"
2278 -
2279 -COMMON="
2280 - app-eselect/eselect-opencl
2281 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
2282 - tools? (
2283 - dev-libs/atk
2284 - dev-libs/glib:2
2285 - dev-libs/jansson
2286 - gtk3? (
2287 - x11-libs/gtk+:3
2288 - )
2289 - x11-libs/cairo
2290 - x11-libs/gdk-pixbuf[X]
2291 - x11-libs/gtk+:2
2292 - x11-libs/libX11
2293 - x11-libs/libXext
2294 - x11-libs/libXrandr
2295 - x11-libs/libXv
2296 - x11-libs/libXxf86vm
2297 - x11-libs/pango[X]
2298 - )
2299 - X? (
2300 - >=app-eselect/eselect-opengl-1.0.9
2301 - app-misc/pax-utils
2302 - )
2303 -"
2304 -DEPEND="
2305 - ${COMMON}
2306 - kernel_linux? ( virtual/linux-sources )
2307 -"
2308 -RDEPEND="
2309 - ${COMMON}
2310 - acpi? ( sys-power/acpid )
2311 - tools? ( !media-video/nvidia-settings )
2312 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
2313 - X? (
2314 - <x11-base/xorg-server-1.19.99:=
2315 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
2316 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
2317 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
2318 - sys-libs/zlib[${MULTILIB_USEDEP}]
2319 - )
2320 -"
2321 -
2322 -QA_PREBUILT="opt/* usr/lib*"
2323 -
2324 -S=${WORKDIR}/
2325 -
2326 -pkg_pretend() {
2327 - if use amd64 && has_multilib_profile && \
2328 - [ "${DEFAULT_ABI}" != "amd64" ]; then
2329 - eerror "This ebuild doesn't currently support changing your default ABI"
2330 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
2331 - fi
2332 -
2333 - if use kernel_linux && kernel_is ge 4 10; then
2334 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
2335 - ewarn "which are limited to the following kernels:"
2336 - ewarn "<sys-kernel/gentoo-sources-4.10"
2337 - ewarn "<sys-kernel/vanilla-sources-4.10"
2338 - ewarn ""
2339 - ewarn "You are free to utilize epatch_user to provide whatever"
2340 - ewarn "support you feel is appropriate, but will not receive"
2341 - ewarn "support as a result of those changes."
2342 - ewarn ""
2343 - ewarn "Do not file a bug report about this."
2344 - ewarn ""
2345 - fi
2346 -
2347 - # Since Nvidia ships many different series of drivers, we need to give the user
2348 - # some kind of guidance as to what version they should install. This tries
2349 - # to point the user in the right direction but can't be perfect. check
2350 - # nvidia-driver.eclass
2351 - nvidia-driver-check-warning
2352 -
2353 - # Kernel features/options to check for
2354 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
2355 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
2356 -
2357 - # Now do the above checks
2358 - use kernel_linux && check_extra_config
2359 -}
2360 -
2361 -pkg_setup() {
2362 - # try to turn off distcc and ccache for people that have a problem with it
2363 - export DISTCC_DISABLE=1
2364 - export CCACHE_DISABLE=1
2365 -
2366 - if use driver && use kernel_linux; then
2367 - MODULE_NAMES="nvidia(video:${S}/kernel)"
2368 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
2369 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
2370 -
2371 - # This needs to run after MODULE_NAMES (so that the eclass checks
2372 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
2373 - # is set (so that KV_DIR is populated).
2374 - linux-mod_pkg_setup
2375 -
2376 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
2377 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
2378 -
2379 - # linux-mod_src_compile calls set_arch_to_kernel, which
2380 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
2381 - # expects x86_64 or i386 and then converts it to x86
2382 - # later on in the build process
2383 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
2384 - fi
2385 -
2386 - if use kernel_linux && kernel_is lt 2 6 9; then
2387 - eerror "You must build this against 2.6.9 or higher kernels."
2388 - fi
2389 -
2390 - # set variables to where files are in the package structure
2391 - if use kernel_FreeBSD; then
2392 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
2393 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
2394 - NV_DOC="${S}/doc"
2395 - NV_OBJ="${S}/obj"
2396 - NV_SRC="${S}/src"
2397 - NV_MAN="${S}/x11/man"
2398 - NV_X11="${S}/obj"
2399 - NV_SOVER=1
2400 - elif use kernel_linux; then
2401 - NV_DOC="${S}"
2402 - NV_OBJ="${S}"
2403 - NV_SRC="${S}/kernel"
2404 - NV_MAN="${S}"
2405 - NV_X11="${S}"
2406 - NV_SOVER=${PV}
2407 - else
2408 - die "Could not determine proper NVIDIA package"
2409 - fi
2410 -}
2411 -
2412 -src_prepare() {
2413 - eapply "${FILESDIR}"/${P}-profiles-rc.patch
2414 -
2415 - if use pax_kernel; then
2416 - ewarn "Using PAX patches is not supported. You will be asked to"
2417 - ewarn "use a standard kernel should you have issues. Should you"
2418 - ewarn "need support with these patches, contact the PaX team."
2419 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
2420 - fi
2421 -
2422 - # Allow user patches so they can support RC kernels and whatever else
2423 - eapply_user
2424 -}
2425 -
2426 -src_compile() {
2427 - # This is already the default on Linux, as there's no toplevel Makefile, but
2428 - # on FreeBSD there's one and triggers the kernel module build, as we install
2429 - # it by itself, pass this.
2430 -
2431 - cd "${NV_SRC}"
2432 - if use kernel_FreeBSD; then
2433 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
2434 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
2435 - elif use driver && use kernel_linux; then
2436 - MAKEOPTS=-j1 linux-mod_src_compile
2437 - fi
2438 -
2439 - if use tools; then
2440 - emake -C "${S}"/nvidia-settings-${PV}/src \
2441 - AR="$(tc-getAR)" \
2442 - CC="$(tc-getCC)" \
2443 - LIBDIR="$(get_libdir)" \
2444 - NV_VERBOSE=1 \
2445 - RANLIB="$(tc-getRANLIB)" \
2446 - DO_STRIP= \
2447 - build-xnvctrl
2448 -
2449 - emake -C "${S}"/nvidia-settings-${PV}/src \
2450 - CC="$(tc-getCC)" \
2451 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2452 - LD="$(tc-getCC)" \
2453 - LIBDIR="$(get_libdir)" \
2454 - NVML_ENABLED=0 \
2455 - NV_USE_BUNDLED_LIBJANSSON=0 \
2456 - NV_VERBOSE=1 \
2457 - DO_STRIP=
2458 - fi
2459 -}
2460 -
2461 -# Install nvidia library:
2462 -# the first parameter is the library to install
2463 -# the second parameter is the provided soversion
2464 -# the third parameter is the target directory if it is not /usr/lib
2465 -donvidia() {
2466 - # Full path to library
2467 - nv_LIB="${1}"
2468 -
2469 - # SOVER to use
2470 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
2471 -
2472 - # Where to install
2473 - nv_DEST="${2}"
2474 -
2475 - # Get just the library name
2476 - nv_LIBNAME=$(basename "${nv_LIB}")
2477 -
2478 - if [[ "${nv_DEST}" ]]; then
2479 - exeinto ${nv_DEST}
2480 - action="doexe"
2481 - else
2482 - nv_DEST="/usr/$(get_libdir)"
2483 - action="dolib.so"
2484 - fi
2485 -
2486 - # Install the library
2487 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
2488 -
2489 - # If the library has a SONAME and SONAME does not match the library name,
2490 - # then we need to create a symlink
2491 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
2492 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
2493 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
2494 - fi
2495 -
2496 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
2497 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
2498 -}
2499 -
2500 -src_install() {
2501 - if use driver && use kernel_linux; then
2502 - linux-mod_src_install
2503 -
2504 - # Add the aliases
2505 - # This file is tweaked with the appropriate video group in
2506 - # pkg_preinst, see bug #491414
2507 - insinto /etc/modprobe.d
2508 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
2509 - doins "${FILESDIR}"/nvidia-rmmod.conf
2510 -
2511 - # Ensures that our device nodes are created when not using X
2512 - exeinto "$(get_udevdir)"
2513 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
2514 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
2515 - elif use kernel_FreeBSD; then
2516 - if use x86-fbsd; then
2517 - insinto /boot/modules
2518 - doins "${S}/src/nvidia.kld"
2519 - fi
2520 -
2521 - exeinto /boot/modules
2522 - doexe "${S}/src/nvidia.ko"
2523 - fi
2524 -
2525 - # NVIDIA kernel <-> userspace driver config lib
2526 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
2527 -
2528 - # NVIDIA framebuffer capture library
2529 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
2530 -
2531 - # NVIDIA video encode/decode <-> CUDA
2532 - if use kernel_linux; then
2533 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
2534 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
2535 - fi
2536 -
2537 - if use X; then
2538 - # Xorg DDX driver
2539 - insinto /usr/$(get_libdir)/xorg/modules/drivers
2540 - doins ${NV_X11}/nvidia_drv.so
2541 -
2542 - # Xorg GLX driver
2543 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
2544 - /usr/$(get_libdir)/opengl/nvidia/extensions
2545 -
2546 - # Xorg nvidia.conf
2547 - if has_version '>=x11-base/xorg-server-1.16'; then
2548 - insinto /usr/share/X11/xorg.conf.d
2549 - newins {,50-}nvidia-drm-outputclass.conf
2550 - fi
2551 -
2552 - insinto /usr/share/glvnd/egl_vendor.d
2553 - doins ${NV_X11}/10_nvidia.json
2554 - fi
2555 -
2556 - # OpenCL ICD for NVIDIA
2557 - if use kernel_linux; then
2558 - insinto /etc/OpenCL/vendors
2559 - doins ${NV_OBJ}/nvidia.icd
2560 - fi
2561 -
2562 - # Documentation
2563 - if use kernel_FreeBSD; then
2564 - dodoc "${NV_DOC}/README"
2565 - use X && doman "${NV_MAN}/nvidia-xconfig.1"
2566 - use tools && doman "${NV_MAN}/nvidia-settings.1"
2567 - else
2568 - # Docs
2569 - newdoc "${NV_DOC}/README.txt" README
2570 - dodoc "${NV_DOC}/NVIDIA_Changelog"
2571 - doman "${NV_MAN}/nvidia-smi.1.gz"
2572 - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
2573 - use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
2574 - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
2575 - fi
2576 -
2577 - docinto html
2578 - dodoc -r ${NV_DOC}/html/*
2579 -
2580 - # Helper Apps
2581 - exeinto /opt/bin/
2582 -
2583 - if use X; then
2584 - doexe ${NV_OBJ}/nvidia-xconfig
2585 -
2586 - insinto /etc/vulkan/icd.d
2587 - doins nvidia_icd.json
2588 - fi
2589 -
2590 - if use kernel_linux; then
2591 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
2592 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
2593 - doexe ${NV_OBJ}/nvidia-debugdump
2594 - doexe ${NV_OBJ}/nvidia-persistenced
2595 - doexe ${NV_OBJ}/nvidia-smi
2596 -
2597 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
2598 - doexe ${NV_OBJ}/nvidia-modprobe
2599 - fowners root:video /opt/bin/nvidia-modprobe
2600 - fperms 4710 /opt/bin/nvidia-modprobe
2601 - dosym /{opt,usr}/bin/nvidia-modprobe
2602 -
2603 - doman nvidia-cuda-mps-control.1.gz
2604 - doman nvidia-modprobe.1.gz
2605 - doman nvidia-persistenced.1.gz
2606 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
2607 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
2608 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
2609 - fi
2610 -
2611 - if use tools; then
2612 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
2613 - DESTDIR="${D}" \
2614 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2615 - LIBDIR="${D}/usr/$(get_libdir)" \
2616 - NV_USE_BUNDLED_LIBJANSSON=0 \
2617 - NV_VERBOSE=1 \
2618 - PREFIX=/usr \
2619 - DO_STRIP= \
2620 - install
2621 -
2622 - if use static-libs; then
2623 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
2624 -
2625 - insinto /usr/include/NVCtrl
2626 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
2627 - fi
2628 -
2629 - insinto /usr/share/nvidia/
2630 - doins nvidia-application-profiles-${PV}-key-documentation
2631 -
2632 - insinto /etc/nvidia
2633 - newins \
2634 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
2635 -
2636 - # There is no icon in the FreeBSD tarball.
2637 - use kernel_FreeBSD || \
2638 - doicon ${NV_OBJ}/nvidia-settings.png
2639 -
2640 - domenu "${FILESDIR}"/nvidia-settings.desktop
2641 -
2642 - exeinto /etc/X11/xinit/xinitrc.d
2643 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
2644 - fi
2645 -
2646 - dobin ${NV_OBJ}/nvidia-bug-report.sh
2647 -
2648 - if has_multilib_profile && use multilib; then
2649 - local OABI=${ABI}
2650 - for ABI in $(get_install_abis); do
2651 - src_install-libs
2652 - done
2653 - ABI=${OABI}
2654 - unset OABI
2655 - else
2656 - src_install-libs
2657 - fi
2658 -
2659 - is_final_abi || die "failed to iterate through all ABIs"
2660 -
2661 - readme.gentoo_create_doc
2662 -}
2663 -
2664 -src_install-libs() {
2665 - local inslibdir=$(get_libdir)
2666 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
2667 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
2668 - local libdir=${NV_OBJ}
2669 -
2670 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
2671 - libdir=${NV_OBJ}/32
2672 - fi
2673 -
2674 - if use X; then
2675 - NV_GLX_LIBRARIES=(
2676 - "libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
2677 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2678 - "libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
2679 - "libGLESv1_CM.so.1 ${GL_ROOT}"
2680 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2681 - "libGLESv2.so.2 ${GL_ROOT}"
2682 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2683 - "libGLX.so.0 ${GL_ROOT}"
2684 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2685 - "libGLdispatch.so.0 ${GL_ROOT}"
2686 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
2687 - "libOpenGL.so.0 ${GL_ROOT}"
2688 - "libcuda.so.${NV_SOVER}"
2689 - "libnvcuvid.so.${NV_SOVER}"
2690 - "libnvidia-compiler.so.${NV_SOVER}"
2691 - "libnvidia-eglcore.so.${NV_SOVER}"
2692 - "libnvidia-encode.so.${NV_SOVER}"
2693 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
2694 - "libnvidia-fbc.so.${NV_SOVER}"
2695 - "libnvidia-glcore.so.${NV_SOVER}"
2696 - "libnvidia-glsi.so.${NV_SOVER}"
2697 - "libnvidia-ifr.so.${NV_SOVER}"
2698 - "libnvidia-opencl.so.${NV_SOVER}"
2699 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
2700 - "libvdpau_nvidia.so.${NV_SOVER}"
2701 - )
2702 -
2703 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2704 - then
2705 - NV_GLX_LIBRARIES+=(
2706 - "libnvidia-egl-wayland.so.${NV_SOVER}"
2707 - )
2708 - fi
2709 -
2710 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2711 - then
2712 - NV_GLX_LIBRARIES+=(
2713 - "libnvidia-wfb.so.${NV_SOVER}"
2714 - )
2715 - fi
2716 -
2717 - if use kernel_FreeBSD; then
2718 - NV_GLX_LIBRARIES+=(
2719 - "libnvidia-tls.so.${NV_SOVER}"
2720 - )
2721 - fi
2722 -
2723 - if use kernel_linux; then
2724 - NV_GLX_LIBRARIES+=(
2725 - "libnvidia-ml.so.${NV_SOVER}"
2726 - "tls/libnvidia-tls.so.${NV_SOVER}"
2727 - )
2728 - fi
2729 -
2730 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
2731 - donvidia ${libdir}/${NV_LIB}
2732 - done
2733 - fi
2734 -}
2735 -
2736 -pkg_preinst() {
2737 - if use driver && use kernel_linux; then
2738 - linux-mod_pkg_preinst
2739 -
2740 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
2741 - if [ -z "${videogroup}" ]; then
2742 - eerror "Failed to determine the video group gid"
2743 - die "Failed to determine the video group gid"
2744 - else
2745 - sed -i \
2746 - -e "s:PACKAGE:${PF}:g" \
2747 - -e "s:VIDEOGID:${videogroup}:" \
2748 - "${D}"/etc/modprobe.d/nvidia.conf || die
2749 - fi
2750 - fi
2751 -
2752 - # Clean the dynamic libGL stuff's home to ensure
2753 - # we dont have stale libs floating around
2754 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
2755 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
2756 - fi
2757 - # Make sure we nuke the old nvidia-glx's env.d file
2758 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
2759 - rm -f "${ROOT}"/etc/env.d/09nvidia
2760 - fi
2761 -}
2762 -
2763 -pkg_postinst() {
2764 - use driver && use kernel_linux && linux-mod_pkg_postinst
2765 -
2766 - # Switch to the nvidia implementation
2767 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
2768 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
2769 -
2770 - readme.gentoo_print_elog
2771 -
2772 - if ! use X; then
2773 - elog "You have elected to not install the X.org driver. Along with"
2774 - elog "this the OpenGL libraries and VDPAU libraries were not"
2775 - elog "installed. Additionally, once the driver is loaded your card"
2776 - elog "and fan will run at max speed which may not be desirable."
2777 - elog "Use the 'nvidia-smi' init script to have your card and fan"
2778 - elog "speed scale appropriately."
2779 - elog
2780 - fi
2781 - if ! use tools; then
2782 - elog "USE=tools controls whether the nvidia-settings application"
2783 - elog "is installed. If you would like to use it, enable that"
2784 - elog "flag and re-emerge this ebuild. Optionally you can install"
2785 - elog "media-video/nvidia-settings"
2786 - elog
2787 - fi
2788 -}
2789 -
2790 -pkg_prerm() {
2791 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2792 -}
2793 -
2794 -pkg_postrm() {
2795 - use driver && use kernel_linux && linux-mod_pkg_postrm
2796 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2797 -}
2798
2799 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-375.66-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-375.66-r1.ebuild
2800 deleted file mode 100644
2801 index 59ee6f6b715..00000000000
2802 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-375.66-r1.ebuild
2803 +++ /dev/null
2804 @@ -1,569 +0,0 @@
2805 -# Copyright 1999-2017 Gentoo Foundation
2806 -# Distributed under the terms of the GNU General Public License v2
2807 -
2808 -EAPI=6
2809 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
2810 - portability toolchain-funcs unpacker user udev
2811 -
2812 -NV_URI="http://http.download.nvidia.com/XFree86/"
2813 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
2814 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
2815 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
2816 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
2817 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
2818 -
2819 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
2820 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
2821 -SRC_URI="
2822 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
2823 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
2824 - arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
2825 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
2826 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
2827 - tools? (
2828 - https://github.com/NVIDIA/nvidia-settings/archive/${PV}.tar.gz -> nvidia-settings-${PV}.tar.gz
2829 - )
2830 -"
2831 -
2832 -LICENSE="GPL-2 NVIDIA-r2"
2833 -SLOT="0/${PV%.*}"
2834 -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
2835 -RESTRICT="bindist mirror"
2836 -EMULTILIB_PKG="true"
2837 -
2838 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
2839 -REQUIRED_USE="
2840 - tools? ( X )
2841 - static-libs? ( tools )
2842 -"
2843 -
2844 -COMMON="
2845 - app-eselect/eselect-opencl
2846 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
2847 - tools? (
2848 - dev-libs/atk
2849 - dev-libs/glib:2
2850 - dev-libs/jansson
2851 - gtk3? (
2852 - x11-libs/gtk+:3
2853 - )
2854 - x11-libs/cairo
2855 - x11-libs/gdk-pixbuf[X]
2856 - x11-libs/gtk+:2
2857 - x11-libs/libX11
2858 - x11-libs/libXext
2859 - x11-libs/libXrandr
2860 - x11-libs/libXv
2861 - x11-libs/libXxf86vm
2862 - x11-libs/pango[X]
2863 - )
2864 - X? (
2865 - >=app-eselect/eselect-opengl-1.0.9
2866 - app-misc/pax-utils
2867 - )
2868 -"
2869 -DEPEND="
2870 - ${COMMON}
2871 - kernel_linux? ( virtual/linux-sources )
2872 -"
2873 -RDEPEND="
2874 - ${COMMON}
2875 - acpi? ( sys-power/acpid )
2876 - tools? ( !media-video/nvidia-settings )
2877 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
2878 - X? (
2879 - <x11-base/xorg-server-1.19.99:=
2880 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
2881 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
2882 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
2883 - sys-libs/zlib[${MULTILIB_USEDEP}]
2884 - )
2885 -"
2886 -
2887 -QA_PREBUILT="opt/* usr/lib*"
2888 -
2889 -S=${WORKDIR}/
2890 -
2891 -nvidia_drivers_versions_check() {
2892 - if use amd64 && has_multilib_profile && \
2893 - [ "${DEFAULT_ABI}" != "amd64" ]; then
2894 - eerror "This ebuild doesn't currently support changing your default ABI"
2895 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
2896 - fi
2897 -
2898 - if use kernel_linux && kernel_is ge 4 12; then
2899 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
2900 - ewarn "which are limited to the following kernels:"
2901 - ewarn "<sys-kernel/gentoo-sources-4.12"
2902 - ewarn "<sys-kernel/vanilla-sources-4.12"
2903 - ewarn ""
2904 - ewarn "You are free to utilize epatch_user to provide whatever"
2905 - ewarn "support you feel is appropriate, but will not receive"
2906 - ewarn "support as a result of those changes."
2907 - ewarn ""
2908 - ewarn "Do not file a bug report about this."
2909 - ewarn ""
2910 - fi
2911 -
2912 - # Since Nvidia ships many different series of drivers, we need to give the user
2913 - # some kind of guidance as to what version they should install. This tries
2914 - # to point the user in the right direction but can't be perfect. check
2915 - # nvidia-driver.eclass
2916 - nvidia-driver-check-warning
2917 -
2918 - # Kernel features/options to check for
2919 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
2920 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
2921 -
2922 - # Now do the above checks
2923 - use kernel_linux && check_extra_config
2924 -}
2925 -
2926 -pkg_pretend() {
2927 - nvidia_drivers_versions_check
2928 -}
2929 -
2930 -pkg_setup() {
2931 - nvidia_drivers_versions_check
2932 -
2933 - # try to turn off distcc and ccache for people that have a problem with it
2934 - export DISTCC_DISABLE=1
2935 - export CCACHE_DISABLE=1
2936 -
2937 - if use driver && use kernel_linux; then
2938 - MODULE_NAMES="nvidia(video:${S}/kernel)"
2939 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
2940 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
2941 -
2942 - # This needs to run after MODULE_NAMES (so that the eclass checks
2943 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
2944 - # is set (so that KV_DIR is populated).
2945 - linux-mod_pkg_setup
2946 -
2947 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
2948 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
2949 -
2950 - # linux-mod_src_compile calls set_arch_to_kernel, which
2951 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
2952 - # expects x86_64 or i386 and then converts it to x86
2953 - # later on in the build process
2954 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
2955 - fi
2956 -
2957 - if use kernel_linux && kernel_is lt 2 6 9; then
2958 - eerror "You must build this against 2.6.9 or higher kernels."
2959 - fi
2960 -
2961 - # set variables to where files are in the package structure
2962 - if use kernel_FreeBSD; then
2963 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
2964 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
2965 - NV_DOC="${S}/doc"
2966 - NV_OBJ="${S}/obj"
2967 - NV_SRC="${S}/src"
2968 - NV_MAN="${S}/x11/man"
2969 - NV_X11="${S}/obj"
2970 - NV_SOVER=1
2971 - elif use kernel_linux; then
2972 - NV_DOC="${S}"
2973 - NV_OBJ="${S}"
2974 - NV_SRC="${S}/kernel"
2975 - NV_MAN="${S}"
2976 - NV_X11="${S}"
2977 - NV_SOVER=${PV}
2978 - else
2979 - die "Could not determine proper NVIDIA package"
2980 - fi
2981 -}
2982 -
2983 -src_prepare() {
2984 - eapply "${FILESDIR}"/${P}-profiles-rc.patch
2985 -
2986 - if use pax_kernel; then
2987 - ewarn "Using PAX patches is not supported. You will be asked to"
2988 - ewarn "use a standard kernel should you have issues. Should you"
2989 - ewarn "need support with these patches, contact the PaX team."
2990 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
2991 - fi
2992 -
2993 - local man_file
2994 - for man_file in "${NV_MAN}"/*1.gz; do
2995 - gunzip $man_file || die
2996 - done
2997 -
2998 - # Allow user patches so they can support RC kernels and whatever else
2999 - eapply_user
3000 -}
3001 -
3002 -src_compile() {
3003 - # This is already the default on Linux, as there's no toplevel Makefile, but
3004 - # on FreeBSD there's one and triggers the kernel module build, as we install
3005 - # it by itself, pass this.
3006 -
3007 - cd "${NV_SRC}"
3008 - if use kernel_FreeBSD; then
3009 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
3010 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
3011 - elif use driver && use kernel_linux; then
3012 - MAKEOPTS=-j1 linux-mod_src_compile
3013 - fi
3014 -
3015 - if use tools; then
3016 - emake -C "${S}"/nvidia-settings-${PV}/src \
3017 - AR="$(tc-getAR)" \
3018 - CC="$(tc-getCC)" \
3019 - LIBDIR="$(get_libdir)" \
3020 - NV_VERBOSE=1 \
3021 - RANLIB="$(tc-getRANLIB)" \
3022 - DO_STRIP= \
3023 - build-xnvctrl
3024 -
3025 - emake -C "${S}"/nvidia-settings-${PV}/src \
3026 - CC="$(tc-getCC)" \
3027 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
3028 - LD="$(tc-getCC)" \
3029 - LIBDIR="$(get_libdir)" \
3030 - NVML_ENABLED=0 \
3031 - NV_USE_BUNDLED_LIBJANSSON=0 \
3032 - NV_VERBOSE=1 \
3033 - DO_STRIP=
3034 - fi
3035 -}
3036 -
3037 -# Install nvidia library:
3038 -# the first parameter is the library to install
3039 -# the second parameter is the provided soversion
3040 -# the third parameter is the target directory if it is not /usr/lib
3041 -donvidia() {
3042 - # Full path to library
3043 - nv_LIB="${1}"
3044 -
3045 - # SOVER to use
3046 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
3047 -
3048 - # Where to install
3049 - nv_DEST="${2}"
3050 -
3051 - # Get just the library name
3052 - nv_LIBNAME=$(basename "${nv_LIB}")
3053 -
3054 - if [[ "${nv_DEST}" ]]; then
3055 - exeinto ${nv_DEST}
3056 - action="doexe"
3057 - else
3058 - nv_DEST="/usr/$(get_libdir)"
3059 - action="dolib.so"
3060 - fi
3061 -
3062 - # Install the library
3063 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
3064 -
3065 - # If the library has a SONAME and SONAME does not match the library name,
3066 - # then we need to create a symlink
3067 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
3068 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
3069 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
3070 - fi
3071 -
3072 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
3073 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
3074 -}
3075 -
3076 -src_install() {
3077 - if use driver && use kernel_linux; then
3078 - linux-mod_src_install
3079 -
3080 - # Add the aliases
3081 - # This file is tweaked with the appropriate video group in
3082 - # pkg_preinst, see bug #491414
3083 - insinto /etc/modprobe.d
3084 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
3085 - doins "${FILESDIR}"/nvidia-rmmod.conf
3086 -
3087 - # Ensures that our device nodes are created when not using X
3088 - exeinto "$(get_udevdir)"
3089 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
3090 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
3091 - elif use kernel_FreeBSD; then
3092 - if use x86-fbsd; then
3093 - insinto /boot/modules
3094 - doins "${S}/src/nvidia.kld"
3095 - fi
3096 -
3097 - exeinto /boot/modules
3098 - doexe "${S}/src/nvidia.ko"
3099 - fi
3100 -
3101 - # NVIDIA kernel <-> userspace driver config lib
3102 - donvidia "${NV_OBJ}"/libnvidia-cfg.so.${NV_SOVER}
3103 -
3104 - # NVIDIA framebuffer capture library
3105 - donvidia "${NV_OBJ}"/libnvidia-fbc.so.${NV_SOVER}
3106 -
3107 - # NVIDIA video encode/decode <-> CUDA
3108 - if use kernel_linux; then
3109 - donvidia "${NV_OBJ}"/libnvcuvid.so.${NV_SOVER}
3110 - donvidia "${NV_OBJ}"/libnvidia-encode.so.${NV_SOVER}
3111 - fi
3112 -
3113 - if use X; then
3114 - # Xorg DDX driver
3115 - insinto /usr/$(get_libdir)/xorg/modules/drivers
3116 - doins "${NV_X11}"/nvidia_drv.so
3117 -
3118 - # Xorg GLX driver
3119 - donvidia "${NV_X11}"/libglx.so.${NV_SOVER} \
3120 - /usr/$(get_libdir)/opengl/nvidia/extensions
3121 -
3122 - # Xorg nvidia.conf
3123 - if has_version '>=x11-base/xorg-server-1.16'; then
3124 - insinto /usr/share/X11/xorg.conf.d
3125 - newins {,50-}nvidia-drm-outputclass.conf
3126 - fi
3127 -
3128 - insinto /usr/share/glvnd/egl_vendor.d
3129 - doins "${NV_X11}"/10_nvidia.json
3130 - fi
3131 -
3132 - # OpenCL ICD for NVIDIA
3133 - if use kernel_linux; then
3134 - insinto /etc/OpenCL/vendors
3135 - doins "${NV_OBJ}"/nvidia.icd
3136 - fi
3137 -
3138 - # Documentation
3139 - if use kernel_FreeBSD; then
3140 - dodoc "${NV_DOC}"/README
3141 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
3142 - use tools && doman "${NV_MAN}"/nvidia-settings.1
3143 - else
3144 - # Docs
3145 - newdoc "${NV_DOC}"/README.txt README
3146 - dodoc "${NV_DOC}"/NVIDIA_Changelog
3147 - doman "${NV_MAN}"/nvidia-smi.1
3148 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
3149 - use tools && doman "${NV_MAN}"/nvidia-settings.1
3150 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
3151 - fi
3152 -
3153 - docinto html
3154 - dodoc -r "${NV_DOC}"/html/*
3155 -
3156 - # Helper Apps
3157 - exeinto /opt/bin/
3158 -
3159 - if use X; then
3160 - doexe "${NV_OBJ}"/nvidia-xconfig
3161 -
3162 - insinto /etc/vulkan/icd.d
3163 - doins nvidia_icd.json
3164 - fi
3165 -
3166 - if use kernel_linux; then
3167 - doexe "${NV_OBJ}"/nvidia-cuda-mps-control
3168 - doexe "${NV_OBJ}"/nvidia-cuda-mps-server
3169 - doexe "${NV_OBJ}"/nvidia-debugdump
3170 - doexe "${NV_OBJ}"/nvidia-persistenced
3171 - doexe "${NV_OBJ}"/nvidia-smi
3172 -
3173 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
3174 - doexe "${NV_OBJ}"/nvidia-modprobe
3175 - fowners root:video /opt/bin/nvidia-modprobe
3176 - fperms 4710 /opt/bin/nvidia-modprobe
3177 - dosym /{opt,usr}/bin/nvidia-modprobe
3178 -
3179 - doman nvidia-cuda-mps-control.1
3180 - doman nvidia-modprobe.1
3181 - doman nvidia-persistenced.1
3182 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
3183 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
3184 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
3185 - fi
3186 -
3187 - if use tools; then
3188 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
3189 - DESTDIR="${D}" \
3190 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
3191 - LIBDIR="${D}/usr/$(get_libdir)" \
3192 - NV_USE_BUNDLED_LIBJANSSON=0 \
3193 - NV_VERBOSE=1 \
3194 - PREFIX=/usr \
3195 - DO_STRIP= \
3196 - install
3197 -
3198 - if use static-libs; then
3199 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
3200 -
3201 - insinto /usr/include/NVCtrl
3202 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
3203 - fi
3204 -
3205 - insinto /usr/share/nvidia/
3206 - doins nvidia-application-profiles-${PV}-key-documentation
3207 -
3208 - insinto /etc/nvidia
3209 - newins \
3210 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
3211 -
3212 - # There is no icon in the FreeBSD tarball.
3213 - use kernel_FreeBSD || \
3214 - doicon "${NV_OBJ}"/nvidia-settings.png
3215 -
3216 - domenu "${FILESDIR}"/nvidia-settings.desktop
3217 -
3218 - exeinto /etc/X11/xinit/xinitrc.d
3219 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
3220 - fi
3221 -
3222 - dobin "${NV_OBJ}"/nvidia-bug-report.sh
3223 -
3224 - if has_multilib_profile && use multilib; then
3225 - local OABI=${ABI}
3226 - for ABI in $(get_install_abis); do
3227 - src_install-libs
3228 - done
3229 - ABI=${OABI}
3230 - unset OABI
3231 - else
3232 - src_install-libs
3233 - fi
3234 -
3235 - is_final_abi || die "failed to iterate through all ABIs"
3236 -
3237 - readme.gentoo_create_doc
3238 -}
3239 -
3240 -src_install-libs() {
3241 - local inslibdir=$(get_libdir)
3242 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
3243 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
3244 - local nv_libdir="${NV_OBJ}"
3245 -
3246 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
3247 - nv_libdir="${NV_OBJ}"/32
3248 - fi
3249 -
3250 - if use X; then
3251 - NV_GLX_LIBRARIES=(
3252 - "libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
3253 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3254 - "libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
3255 - "libGLESv1_CM.so.1 ${GL_ROOT}"
3256 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3257 - "libGLESv2.so.2 ${GL_ROOT}"
3258 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3259 - "libGLX.so.0 ${GL_ROOT}"
3260 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3261 - "libGLdispatch.so.0 ${GL_ROOT}"
3262 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
3263 - "libOpenGL.so.0 ${GL_ROOT}"
3264 - "libcuda.so.${NV_SOVER}"
3265 - "libnvcuvid.so.${NV_SOVER}"
3266 - "libnvidia-compiler.so.${NV_SOVER}"
3267 - "libnvidia-eglcore.so.${NV_SOVER}"
3268 - "libnvidia-encode.so.${NV_SOVER}"
3269 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
3270 - "libnvidia-fbc.so.${NV_SOVER}"
3271 - "libnvidia-glcore.so.${NV_SOVER}"
3272 - "libnvidia-glsi.so.${NV_SOVER}"
3273 - "libnvidia-ifr.so.${NV_SOVER}"
3274 - "libnvidia-opencl.so.${NV_SOVER}"
3275 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
3276 - "libvdpau_nvidia.so.${NV_SOVER}"
3277 - )
3278 -
3279 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
3280 - then
3281 - NV_GLX_LIBRARIES+=(
3282 - "libnvidia-egl-wayland.so.${NV_SOVER}"
3283 - )
3284 - fi
3285 -
3286 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
3287 - then
3288 - NV_GLX_LIBRARIES+=(
3289 - "libnvidia-wfb.so.${NV_SOVER}"
3290 - )
3291 - fi
3292 -
3293 - if use kernel_FreeBSD; then
3294 - NV_GLX_LIBRARIES+=(
3295 - "libnvidia-tls.so.${NV_SOVER}"
3296 - )
3297 - fi
3298 -
3299 - if use kernel_linux; then
3300 - NV_GLX_LIBRARIES+=(
3301 - "libnvidia-ml.so.${NV_SOVER}"
3302 - "tls/libnvidia-tls.so.${NV_SOVER}"
3303 - )
3304 - fi
3305 -
3306 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
3307 - donvidia "${nv_libdir}"/${NV_LIB}
3308 - done
3309 - fi
3310 -}
3311 -
3312 -pkg_preinst() {
3313 - if use driver && use kernel_linux; then
3314 - linux-mod_pkg_preinst
3315 -
3316 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
3317 - if [ -z "${videogroup}" ]; then
3318 - eerror "Failed to determine the video group gid"
3319 - die "Failed to determine the video group gid"
3320 - else
3321 - sed -i \
3322 - -e "s:PACKAGE:${PF}:g" \
3323 - -e "s:VIDEOGID:${videogroup}:" \
3324 - "${D}"/etc/modprobe.d/nvidia.conf || die
3325 - fi
3326 - fi
3327 -
3328 - # Clean the dynamic libGL stuff's home to ensure
3329 - # we dont have stale libs floating around
3330 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
3331 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
3332 - fi
3333 - # Make sure we nuke the old nvidia-glx's env.d file
3334 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
3335 - rm -f "${ROOT}"/etc/env.d/09nvidia
3336 - fi
3337 -}
3338 -
3339 -pkg_postinst() {
3340 - use driver && use kernel_linux && linux-mod_pkg_postinst
3341 -
3342 - # Switch to the nvidia implementation
3343 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
3344 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
3345 -
3346 - readme.gentoo_print_elog
3347 -
3348 - if ! use X; then
3349 - elog "You have elected to not install the X.org driver. Along with"
3350 - elog "this the OpenGL libraries and VDPAU libraries were not"
3351 - elog "installed. Additionally, once the driver is loaded your card"
3352 - elog "and fan will run at max speed which may not be desirable."
3353 - elog "Use the 'nvidia-smi' init script to have your card and fan"
3354 - elog "speed scale appropriately."
3355 - elog
3356 - fi
3357 - if ! use tools; then
3358 - elog "USE=tools controls whether the nvidia-settings application"
3359 - elog "is installed. If you would like to use it, enable that"
3360 - elog "flag and re-emerge this ebuild. Optionally you can install"
3361 - elog "media-video/nvidia-settings"
3362 - elog
3363 - fi
3364 -}
3365 -
3366 -pkg_prerm() {
3367 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3368 -}
3369 -
3370 -pkg_postrm() {
3371 - use driver && use kernel_linux && linux-mod_pkg_postrm
3372 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3373 -}
3374
3375 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-375.66.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-375.66.ebuild
3376 deleted file mode 100644
3377 index 3cf67f83bcf..00000000000
3378 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-375.66.ebuild
3379 +++ /dev/null
3380 @@ -1,564 +0,0 @@
3381 -# Copyright 1999-2017 Gentoo Foundation
3382 -# Distributed under the terms of the GNU General Public License v2
3383 -
3384 -EAPI=6
3385 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
3386 - portability toolchain-funcs unpacker user udev
3387 -
3388 -NV_URI="http://http.download.nvidia.com/XFree86/"
3389 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
3390 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
3391 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
3392 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
3393 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
3394 -
3395 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
3396 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
3397 -SRC_URI="
3398 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
3399 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
3400 - arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
3401 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
3402 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
3403 - tools? (
3404 - https://github.com/NVIDIA/nvidia-settings/archive/${PV}.tar.gz -> nvidia-settings-${PV}.tar.gz
3405 - )
3406 -"
3407 -
3408 -LICENSE="GPL-2 NVIDIA-r2"
3409 -SLOT="0/${PV%.*}"
3410 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
3411 -RESTRICT="bindist mirror"
3412 -EMULTILIB_PKG="true"
3413 -
3414 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
3415 -REQUIRED_USE="
3416 - tools? ( X )
3417 - static-libs? ( tools )
3418 -"
3419 -
3420 -COMMON="
3421 - app-eselect/eselect-opencl
3422 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
3423 - tools? (
3424 - dev-libs/atk
3425 - dev-libs/glib:2
3426 - dev-libs/jansson
3427 - gtk3? (
3428 - x11-libs/gtk+:3
3429 - )
3430 - x11-libs/cairo
3431 - x11-libs/gdk-pixbuf[X]
3432 - x11-libs/gtk+:2
3433 - x11-libs/libX11
3434 - x11-libs/libXext
3435 - x11-libs/libXrandr
3436 - x11-libs/libXv
3437 - x11-libs/libXxf86vm
3438 - x11-libs/pango[X]
3439 - )
3440 - X? (
3441 - >=app-eselect/eselect-opengl-1.0.9
3442 - app-misc/pax-utils
3443 - )
3444 -"
3445 -DEPEND="
3446 - ${COMMON}
3447 - kernel_linux? ( virtual/linux-sources )
3448 -"
3449 -RDEPEND="
3450 - ${COMMON}
3451 - acpi? ( sys-power/acpid )
3452 - tools? ( !media-video/nvidia-settings )
3453 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
3454 - X? (
3455 - <x11-base/xorg-server-1.19.99:=
3456 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
3457 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
3458 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
3459 - sys-libs/zlib[${MULTILIB_USEDEP}]
3460 - )
3461 -"
3462 -
3463 -QA_PREBUILT="opt/* usr/lib*"
3464 -
3465 -S=${WORKDIR}/
3466 -
3467 -nvidia_drivers_versions_check() {
3468 - if use amd64 && has_multilib_profile && \
3469 - [ "${DEFAULT_ABI}" != "amd64" ]; then
3470 - eerror "This ebuild doesn't currently support changing your default ABI"
3471 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
3472 - fi
3473 -
3474 - if use kernel_linux && kernel_is ge 4 12; then
3475 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
3476 - ewarn "which are limited to the following kernels:"
3477 - ewarn "<sys-kernel/gentoo-sources-4.12"
3478 - ewarn "<sys-kernel/vanilla-sources-4.12"
3479 - ewarn ""
3480 - ewarn "You are free to utilize epatch_user to provide whatever"
3481 - ewarn "support you feel is appropriate, but will not receive"
3482 - ewarn "support as a result of those changes."
3483 - ewarn ""
3484 - ewarn "Do not file a bug report about this."
3485 - ewarn ""
3486 - fi
3487 -
3488 - # Since Nvidia ships many different series of drivers, we need to give the user
3489 - # some kind of guidance as to what version they should install. This tries
3490 - # to point the user in the right direction but can't be perfect. check
3491 - # nvidia-driver.eclass
3492 - nvidia-driver-check-warning
3493 -
3494 - # Kernel features/options to check for
3495 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
3496 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
3497 -
3498 - # Now do the above checks
3499 - use kernel_linux && check_extra_config
3500 -}
3501 -
3502 -pkg_pretend() {
3503 - nvidia_drivers_versions_check
3504 -}
3505 -
3506 -pkg_setup() {
3507 - nvidia_drivers_versions_check
3508 -
3509 - # try to turn off distcc and ccache for people that have a problem with it
3510 - export DISTCC_DISABLE=1
3511 - export CCACHE_DISABLE=1
3512 -
3513 - if use driver && use kernel_linux; then
3514 - MODULE_NAMES="nvidia(video:${S}/kernel)"
3515 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
3516 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
3517 -
3518 - # This needs to run after MODULE_NAMES (so that the eclass checks
3519 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
3520 - # is set (so that KV_DIR is populated).
3521 - linux-mod_pkg_setup
3522 -
3523 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
3524 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
3525 -
3526 - # linux-mod_src_compile calls set_arch_to_kernel, which
3527 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
3528 - # expects x86_64 or i386 and then converts it to x86
3529 - # later on in the build process
3530 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
3531 - fi
3532 -
3533 - if use kernel_linux && kernel_is lt 2 6 9; then
3534 - eerror "You must build this against 2.6.9 or higher kernels."
3535 - fi
3536 -
3537 - # set variables to where files are in the package structure
3538 - if use kernel_FreeBSD; then
3539 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
3540 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
3541 - NV_DOC="${S}/doc"
3542 - NV_OBJ="${S}/obj"
3543 - NV_SRC="${S}/src"
3544 - NV_MAN="${S}/x11/man"
3545 - NV_X11="${S}/obj"
3546 - NV_SOVER=1
3547 - elif use kernel_linux; then
3548 - NV_DOC="${S}"
3549 - NV_OBJ="${S}"
3550 - NV_SRC="${S}/kernel"
3551 - NV_MAN="${S}"
3552 - NV_X11="${S}"
3553 - NV_SOVER=${PV}
3554 - else
3555 - die "Could not determine proper NVIDIA package"
3556 - fi
3557 -}
3558 -
3559 -src_prepare() {
3560 - eapply "${FILESDIR}"/${P}-profiles-rc.patch
3561 -
3562 - if use pax_kernel; then
3563 - ewarn "Using PAX patches is not supported. You will be asked to"
3564 - ewarn "use a standard kernel should you have issues. Should you"
3565 - ewarn "need support with these patches, contact the PaX team."
3566 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
3567 - fi
3568 -
3569 - # Allow user patches so they can support RC kernels and whatever else
3570 - eapply_user
3571 -}
3572 -
3573 -src_compile() {
3574 - # This is already the default on Linux, as there's no toplevel Makefile, but
3575 - # on FreeBSD there's one and triggers the kernel module build, as we install
3576 - # it by itself, pass this.
3577 -
3578 - cd "${NV_SRC}"
3579 - if use kernel_FreeBSD; then
3580 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
3581 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
3582 - elif use driver && use kernel_linux; then
3583 - MAKEOPTS=-j1 linux-mod_src_compile
3584 - fi
3585 -
3586 - if use tools; then
3587 - emake -C "${S}"/nvidia-settings-${PV}/src \
3588 - AR="$(tc-getAR)" \
3589 - CC="$(tc-getCC)" \
3590 - LIBDIR="$(get_libdir)" \
3591 - NV_VERBOSE=1 \
3592 - RANLIB="$(tc-getRANLIB)" \
3593 - DO_STRIP= \
3594 - build-xnvctrl
3595 -
3596 - emake -C "${S}"/nvidia-settings-${PV}/src \
3597 - CC="$(tc-getCC)" \
3598 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
3599 - LD="$(tc-getCC)" \
3600 - LIBDIR="$(get_libdir)" \
3601 - NVML_ENABLED=0 \
3602 - NV_USE_BUNDLED_LIBJANSSON=0 \
3603 - NV_VERBOSE=1 \
3604 - DO_STRIP=
3605 - fi
3606 -}
3607 -
3608 -# Install nvidia library:
3609 -# the first parameter is the library to install
3610 -# the second parameter is the provided soversion
3611 -# the third parameter is the target directory if it is not /usr/lib
3612 -donvidia() {
3613 - # Full path to library
3614 - nv_LIB="${1}"
3615 -
3616 - # SOVER to use
3617 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
3618 -
3619 - # Where to install
3620 - nv_DEST="${2}"
3621 -
3622 - # Get just the library name
3623 - nv_LIBNAME=$(basename "${nv_LIB}")
3624 -
3625 - if [[ "${nv_DEST}" ]]; then
3626 - exeinto ${nv_DEST}
3627 - action="doexe"
3628 - else
3629 - nv_DEST="/usr/$(get_libdir)"
3630 - action="dolib.so"
3631 - fi
3632 -
3633 - # Install the library
3634 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
3635 -
3636 - # If the library has a SONAME and SONAME does not match the library name,
3637 - # then we need to create a symlink
3638 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
3639 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
3640 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
3641 - fi
3642 -
3643 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
3644 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
3645 -}
3646 -
3647 -src_install() {
3648 - if use driver && use kernel_linux; then
3649 - linux-mod_src_install
3650 -
3651 - # Add the aliases
3652 - # This file is tweaked with the appropriate video group in
3653 - # pkg_preinst, see bug #491414
3654 - insinto /etc/modprobe.d
3655 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
3656 - doins "${FILESDIR}"/nvidia-rmmod.conf
3657 -
3658 - # Ensures that our device nodes are created when not using X
3659 - exeinto "$(get_udevdir)"
3660 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
3661 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
3662 - elif use kernel_FreeBSD; then
3663 - if use x86-fbsd; then
3664 - insinto /boot/modules
3665 - doins "${S}/src/nvidia.kld"
3666 - fi
3667 -
3668 - exeinto /boot/modules
3669 - doexe "${S}/src/nvidia.ko"
3670 - fi
3671 -
3672 - # NVIDIA kernel <-> userspace driver config lib
3673 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
3674 -
3675 - # NVIDIA framebuffer capture library
3676 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
3677 -
3678 - # NVIDIA video encode/decode <-> CUDA
3679 - if use kernel_linux; then
3680 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
3681 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
3682 - fi
3683 -
3684 - if use X; then
3685 - # Xorg DDX driver
3686 - insinto /usr/$(get_libdir)/xorg/modules/drivers
3687 - doins ${NV_X11}/nvidia_drv.so
3688 -
3689 - # Xorg GLX driver
3690 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
3691 - /usr/$(get_libdir)/opengl/nvidia/extensions
3692 -
3693 - # Xorg nvidia.conf
3694 - if has_version '>=x11-base/xorg-server-1.16'; then
3695 - insinto /usr/share/X11/xorg.conf.d
3696 - newins {,50-}nvidia-drm-outputclass.conf
3697 - fi
3698 -
3699 - insinto /usr/share/glvnd/egl_vendor.d
3700 - doins ${NV_X11}/10_nvidia.json
3701 - fi
3702 -
3703 - # OpenCL ICD for NVIDIA
3704 - if use kernel_linux; then
3705 - insinto /etc/OpenCL/vendors
3706 - doins ${NV_OBJ}/nvidia.icd
3707 - fi
3708 -
3709 - # Documentation
3710 - if use kernel_FreeBSD; then
3711 - dodoc "${NV_DOC}/README"
3712 - use X && doman "${NV_MAN}/nvidia-xconfig.1"
3713 - use tools && doman "${NV_MAN}/nvidia-settings.1"
3714 - else
3715 - # Docs
3716 - newdoc "${NV_DOC}/README.txt" README
3717 - dodoc "${NV_DOC}/NVIDIA_Changelog"
3718 - doman "${NV_MAN}/nvidia-smi.1.gz"
3719 - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
3720 - use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
3721 - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
3722 - fi
3723 -
3724 - docinto html
3725 - dodoc -r ${NV_DOC}/html/*
3726 -
3727 - # Helper Apps
3728 - exeinto /opt/bin/
3729 -
3730 - if use X; then
3731 - doexe ${NV_OBJ}/nvidia-xconfig
3732 -
3733 - insinto /etc/vulkan/icd.d
3734 - doins nvidia_icd.json
3735 - fi
3736 -
3737 - if use kernel_linux; then
3738 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
3739 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
3740 - doexe ${NV_OBJ}/nvidia-debugdump
3741 - doexe ${NV_OBJ}/nvidia-persistenced
3742 - doexe ${NV_OBJ}/nvidia-smi
3743 -
3744 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
3745 - doexe ${NV_OBJ}/nvidia-modprobe
3746 - fowners root:video /opt/bin/nvidia-modprobe
3747 - fperms 4710 /opt/bin/nvidia-modprobe
3748 - dosym /{opt,usr}/bin/nvidia-modprobe
3749 -
3750 - doman nvidia-cuda-mps-control.1.gz
3751 - doman nvidia-modprobe.1.gz
3752 - doman nvidia-persistenced.1.gz
3753 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
3754 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
3755 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
3756 - fi
3757 -
3758 - if use tools; then
3759 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
3760 - DESTDIR="${D}" \
3761 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
3762 - LIBDIR="${D}/usr/$(get_libdir)" \
3763 - NV_USE_BUNDLED_LIBJANSSON=0 \
3764 - NV_VERBOSE=1 \
3765 - PREFIX=/usr \
3766 - DO_STRIP= \
3767 - install
3768 -
3769 - if use static-libs; then
3770 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
3771 -
3772 - insinto /usr/include/NVCtrl
3773 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
3774 - fi
3775 -
3776 - insinto /usr/share/nvidia/
3777 - doins nvidia-application-profiles-${PV}-key-documentation
3778 -
3779 - insinto /etc/nvidia
3780 - newins \
3781 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
3782 -
3783 - # There is no icon in the FreeBSD tarball.
3784 - use kernel_FreeBSD || \
3785 - doicon ${NV_OBJ}/nvidia-settings.png
3786 -
3787 - domenu "${FILESDIR}"/nvidia-settings.desktop
3788 -
3789 - exeinto /etc/X11/xinit/xinitrc.d
3790 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
3791 - fi
3792 -
3793 - dobin ${NV_OBJ}/nvidia-bug-report.sh
3794 -
3795 - if has_multilib_profile && use multilib; then
3796 - local OABI=${ABI}
3797 - for ABI in $(get_install_abis); do
3798 - src_install-libs
3799 - done
3800 - ABI=${OABI}
3801 - unset OABI
3802 - else
3803 - src_install-libs
3804 - fi
3805 -
3806 - is_final_abi || die "failed to iterate through all ABIs"
3807 -
3808 - readme.gentoo_create_doc
3809 -}
3810 -
3811 -src_install-libs() {
3812 - local inslibdir=$(get_libdir)
3813 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
3814 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
3815 - local libdir=${NV_OBJ}
3816 -
3817 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
3818 - libdir=${NV_OBJ}/32
3819 - fi
3820 -
3821 - if use X; then
3822 - NV_GLX_LIBRARIES=(
3823 - "libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
3824 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3825 - "libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
3826 - "libGLESv1_CM.so.1 ${GL_ROOT}"
3827 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3828 - "libGLESv2.so.2 ${GL_ROOT}"
3829 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3830 - "libGLX.so.0 ${GL_ROOT}"
3831 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
3832 - "libGLdispatch.so.0 ${GL_ROOT}"
3833 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
3834 - "libOpenGL.so.0 ${GL_ROOT}"
3835 - "libcuda.so.${NV_SOVER}"
3836 - "libnvcuvid.so.${NV_SOVER}"
3837 - "libnvidia-compiler.so.${NV_SOVER}"
3838 - "libnvidia-eglcore.so.${NV_SOVER}"
3839 - "libnvidia-encode.so.${NV_SOVER}"
3840 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
3841 - "libnvidia-fbc.so.${NV_SOVER}"
3842 - "libnvidia-glcore.so.${NV_SOVER}"
3843 - "libnvidia-glsi.so.${NV_SOVER}"
3844 - "libnvidia-ifr.so.${NV_SOVER}"
3845 - "libnvidia-opencl.so.${NV_SOVER}"
3846 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
3847 - "libvdpau_nvidia.so.${NV_SOVER}"
3848 - )
3849 -
3850 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
3851 - then
3852 - NV_GLX_LIBRARIES+=(
3853 - "libnvidia-egl-wayland.so.${NV_SOVER}"
3854 - )
3855 - fi
3856 -
3857 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
3858 - then
3859 - NV_GLX_LIBRARIES+=(
3860 - "libnvidia-wfb.so.${NV_SOVER}"
3861 - )
3862 - fi
3863 -
3864 - if use kernel_FreeBSD; then
3865 - NV_GLX_LIBRARIES+=(
3866 - "libnvidia-tls.so.${NV_SOVER}"
3867 - )
3868 - fi
3869 -
3870 - if use kernel_linux; then
3871 - NV_GLX_LIBRARIES+=(
3872 - "libnvidia-ml.so.${NV_SOVER}"
3873 - "tls/libnvidia-tls.so.${NV_SOVER}"
3874 - )
3875 - fi
3876 -
3877 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
3878 - donvidia ${libdir}/${NV_LIB}
3879 - done
3880 - fi
3881 -}
3882 -
3883 -pkg_preinst() {
3884 - if use driver && use kernel_linux; then
3885 - linux-mod_pkg_preinst
3886 -
3887 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
3888 - if [ -z "${videogroup}" ]; then
3889 - eerror "Failed to determine the video group gid"
3890 - die "Failed to determine the video group gid"
3891 - else
3892 - sed -i \
3893 - -e "s:PACKAGE:${PF}:g" \
3894 - -e "s:VIDEOGID:${videogroup}:" \
3895 - "${D}"/etc/modprobe.d/nvidia.conf || die
3896 - fi
3897 - fi
3898 -
3899 - # Clean the dynamic libGL stuff's home to ensure
3900 - # we dont have stale libs floating around
3901 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
3902 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
3903 - fi
3904 - # Make sure we nuke the old nvidia-glx's env.d file
3905 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
3906 - rm -f "${ROOT}"/etc/env.d/09nvidia
3907 - fi
3908 -}
3909 -
3910 -pkg_postinst() {
3911 - use driver && use kernel_linux && linux-mod_pkg_postinst
3912 -
3913 - # Switch to the nvidia implementation
3914 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
3915 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
3916 -
3917 - readme.gentoo_print_elog
3918 -
3919 - if ! use X; then
3920 - elog "You have elected to not install the X.org driver. Along with"
3921 - elog "this the OpenGL libraries and VDPAU libraries were not"
3922 - elog "installed. Additionally, once the driver is loaded your card"
3923 - elog "and fan will run at max speed which may not be desirable."
3924 - elog "Use the 'nvidia-smi' init script to have your card and fan"
3925 - elog "speed scale appropriately."
3926 - elog
3927 - fi
3928 - if ! use tools; then
3929 - elog "USE=tools controls whether the nvidia-settings application"
3930 - elog "is installed. If you would like to use it, enable that"
3931 - elog "flag and re-emerge this ebuild. Optionally you can install"
3932 - elog "media-video/nvidia-settings"
3933 - elog
3934 - fi
3935 -}
3936 -
3937 -pkg_prerm() {
3938 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3939 -}
3940 -
3941 -pkg_postrm() {
3942 - use driver && use kernel_linux && linux-mod_pkg_postrm
3943 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3944 -}
3945
3946 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-384.59-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-384.59-r1.ebuild
3947 deleted file mode 100644
3948 index 0244ed71c40..00000000000
3949 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-384.59-r1.ebuild
3950 +++ /dev/null
3951 @@ -1,578 +0,0 @@
3952 -# Copyright 1999-2017 Gentoo Foundation
3953 -# Distributed under the terms of the GNU General Public License v2
3954 -
3955 -EAPI=6
3956 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
3957 - portability toolchain-funcs unpacker user udev
3958 -
3959 -NV_URI="http://http.download.nvidia.com/XFree86/"
3960 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
3961 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
3962 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
3963 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
3964 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
3965 -
3966 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
3967 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
3968 -SRC_URI="
3969 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
3970 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
3971 - arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
3972 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
3973 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
3974 - tools? (
3975 - https://github.com/NVIDIA/nvidia-settings/archive/${PV}.tar.gz -> nvidia-settings-${PV}.tar.gz
3976 - )
3977 -"
3978 -
3979 -LICENSE="GPL-2 NVIDIA-r2"
3980 -SLOT="0/${PV%.*}"
3981 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
3982 -RESTRICT="bindist mirror"
3983 -EMULTILIB_PKG="true"
3984 -
3985 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
3986 -REQUIRED_USE="
3987 - tools? ( X )
3988 - static-libs? ( tools )
3989 -"
3990 -
3991 -COMMON="
3992 - app-eselect/eselect-opencl
3993 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
3994 - tools? (
3995 - dev-libs/atk
3996 - dev-libs/glib:2
3997 - dev-libs/jansson
3998 - gtk3? (
3999 - x11-libs/gtk+:3
4000 - )
4001 - x11-libs/cairo
4002 - x11-libs/gdk-pixbuf[X]
4003 - x11-libs/gtk+:2
4004 - x11-libs/libX11
4005 - x11-libs/libXext
4006 - x11-libs/libXrandr
4007 - x11-libs/libXv
4008 - x11-libs/libXxf86vm
4009 - x11-libs/pango[X]
4010 - )
4011 - X? (
4012 - >=app-eselect/eselect-opengl-1.0.9
4013 - app-misc/pax-utils
4014 - )
4015 -"
4016 -DEPEND="
4017 - ${COMMON}
4018 - kernel_linux? ( virtual/linux-sources )
4019 - tools? ( sys-apps/dbus )
4020 -"
4021 -RDEPEND="
4022 - ${COMMON}
4023 - acpi? ( sys-power/acpid )
4024 - tools? ( !media-video/nvidia-settings )
4025 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
4026 - X? (
4027 - <x11-base/xorg-server-1.19.99:=
4028 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
4029 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
4030 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
4031 - sys-libs/zlib[${MULTILIB_USEDEP}]
4032 - )
4033 -"
4034 -
4035 -QA_PREBUILT="opt/* usr/lib*"
4036 -
4037 -S=${WORKDIR}/
4038 -
4039 -nvidia_drivers_versions_check() {
4040 - if use amd64 && has_multilib_profile && \
4041 - [ "${DEFAULT_ABI}" != "amd64" ]; then
4042 - eerror "This ebuild doesn't currently support changing your default ABI"
4043 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
4044 - fi
4045 -
4046 - if use kernel_linux && kernel_is ge 4 13; then
4047 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
4048 - ewarn "which are limited to the following kernels:"
4049 - ewarn "<sys-kernel/gentoo-sources-4.13"
4050 - ewarn "<sys-kernel/vanilla-sources-4.13"
4051 - ewarn ""
4052 - ewarn "You are free to utilize epatch_user to provide whatever"
4053 - ewarn "support you feel is appropriate, but will not receive"
4054 - ewarn "support as a result of those changes."
4055 - ewarn ""
4056 - ewarn "Do not file a bug report about this."
4057 - ewarn ""
4058 - fi
4059 -
4060 - # Since Nvidia ships many different series of drivers, we need to give the user
4061 - # some kind of guidance as to what version they should install. This tries
4062 - # to point the user in the right direction but can't be perfect. check
4063 - # nvidia-driver.eclass
4064 - nvidia-driver-check-warning
4065 -
4066 - # Kernel features/options to check for
4067 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
4068 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
4069 -
4070 - # Now do the above checks
4071 - use kernel_linux && check_extra_config
4072 -}
4073 -
4074 -pkg_pretend() {
4075 - nvidia_drivers_versions_check
4076 -}
4077 -
4078 -pkg_setup() {
4079 - nvidia_drivers_versions_check
4080 -
4081 - # try to turn off distcc and ccache for people that have a problem with it
4082 - export DISTCC_DISABLE=1
4083 - export CCACHE_DISABLE=1
4084 -
4085 - if use driver && use kernel_linux; then
4086 - MODULE_NAMES="nvidia(video:${S}/kernel)"
4087 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
4088 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
4089 -
4090 - # This needs to run after MODULE_NAMES (so that the eclass checks
4091 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
4092 - # is set (so that KV_DIR is populated).
4093 - linux-mod_pkg_setup
4094 -
4095 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
4096 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
4097 -
4098 - # linux-mod_src_compile calls set_arch_to_kernel, which
4099 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
4100 - # expects x86_64 or i386 and then converts it to x86
4101 - # later on in the build process
4102 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
4103 - fi
4104 -
4105 - if use kernel_linux && kernel_is lt 2 6 9; then
4106 - eerror "You must build this against 2.6.9 or higher kernels."
4107 - fi
4108 -
4109 - # set variables to where files are in the package structure
4110 - if use kernel_FreeBSD; then
4111 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
4112 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
4113 - NV_DOC="${S}/doc"
4114 - NV_OBJ="${S}/obj"
4115 - NV_SRC="${S}/src"
4116 - NV_MAN="${S}/x11/man"
4117 - NV_X11="${S}/obj"
4118 - NV_SOVER=1
4119 - elif use kernel_linux; then
4120 - NV_DOC="${S}"
4121 - NV_OBJ="${S}"
4122 - NV_SRC="${S}/kernel"
4123 - NV_MAN="${S}"
4124 - NV_X11="${S}"
4125 - NV_SOVER=${PV}
4126 - else
4127 - die "Could not determine proper NVIDIA package"
4128 - fi
4129 -}
4130 -
4131 -src_prepare() {
4132 - if use pax_kernel; then
4133 - ewarn "Using PAX patches is not supported. You will be asked to"
4134 - ewarn "use a standard kernel should you have issues. Should you"
4135 - ewarn "need support with these patches, contact the PaX team."
4136 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
4137 - fi
4138 -
4139 - local man_file
4140 - for man_file in "${NV_MAN}"/*1.gz; do
4141 - gunzip $man_file || die
4142 - done
4143 -
4144 - # Allow user patches so they can support RC kernels and whatever else
4145 - eapply_user
4146 -
4147 - if ! [ -f nvidia_icd.json ]; then
4148 - cp nvidia_icd.json.template nvidia_icd.json || die
4149 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
4150 - fi
4151 -}
4152 -
4153 -src_compile() {
4154 - # This is already the default on Linux, as there's no toplevel Makefile, but
4155 - # on FreeBSD there's one and triggers the kernel module build, as we install
4156 - # it by itself, pass this.
4157 -
4158 - cd "${NV_SRC}"
4159 - if use kernel_FreeBSD; then
4160 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
4161 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
4162 - elif use driver && use kernel_linux; then
4163 - MAKEOPTS=-j1 linux-mod_src_compile
4164 - fi
4165 -
4166 - if use tools; then
4167 - emake -C "${S}"/nvidia-settings-${PV}/src \
4168 - AR="$(tc-getAR)" \
4169 - CC="$(tc-getCC)" \
4170 - LIBDIR="$(get_libdir)" \
4171 - NV_VERBOSE=1 \
4172 - RANLIB="$(tc-getRANLIB)" \
4173 - DO_STRIP= \
4174 - build-xnvctrl
4175 -
4176 - emake -C "${S}"/nvidia-settings-${PV}/src \
4177 - CC="$(tc-getCC)" \
4178 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
4179 - LD="$(tc-getCC)" \
4180 - LIBDIR="$(get_libdir)" \
4181 - NVML_ENABLED=0 \
4182 - NV_USE_BUNDLED_LIBJANSSON=0 \
4183 - NV_VERBOSE=1 \
4184 - DO_STRIP=
4185 - fi
4186 -}
4187 -
4188 -# Install nvidia library:
4189 -# the first parameter is the library to install
4190 -# the second parameter is the provided soversion
4191 -# the third parameter is the target directory if it is not /usr/lib
4192 -donvidia() {
4193 - # Full path to library
4194 - nv_LIB="${1}"
4195 -
4196 - # SOVER to use
4197 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
4198 -
4199 - # Where to install
4200 - nv_DEST="${2}"
4201 -
4202 - # Get just the library name
4203 - nv_LIBNAME=$(basename "${nv_LIB}")
4204 -
4205 - if [[ "${nv_DEST}" ]]; then
4206 - exeinto ${nv_DEST}
4207 - action="doexe"
4208 - else
4209 - nv_DEST="/usr/$(get_libdir)"
4210 - action="dolib.so"
4211 - fi
4212 -
4213 - # Install the library
4214 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
4215 -
4216 - # If the library has a SONAME and SONAME does not match the library name,
4217 - # then we need to create a symlink
4218 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
4219 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
4220 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
4221 - fi
4222 -
4223 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
4224 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
4225 -}
4226 -
4227 -src_install() {
4228 - if use driver && use kernel_linux; then
4229 - linux-mod_src_install
4230 -
4231 - # Add the aliases
4232 - # This file is tweaked with the appropriate video group in
4233 - # pkg_preinst, see bug #491414
4234 - insinto /etc/modprobe.d
4235 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
4236 - doins "${FILESDIR}"/nvidia-rmmod.conf
4237 -
4238 - # Ensures that our device nodes are created when not using X
4239 - exeinto "$(get_udevdir)"
4240 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
4241 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
4242 - elif use kernel_FreeBSD; then
4243 - if use x86-fbsd; then
4244 - insinto /boot/modules
4245 - doins "${S}/src/nvidia.kld"
4246 - fi
4247 -
4248 - exeinto /boot/modules
4249 - doexe "${S}/src/nvidia.ko"
4250 - fi
4251 -
4252 - # NVIDIA kernel <-> userspace driver config lib
4253 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
4254 -
4255 - # NVIDIA framebuffer capture library
4256 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
4257 -
4258 - # NVIDIA video encode/decode <-> CUDA
4259 - if use kernel_linux; then
4260 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
4261 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
4262 - fi
4263 -
4264 - if use X; then
4265 - # Xorg DDX driver
4266 - insinto /usr/$(get_libdir)/xorg/modules/drivers
4267 - doins ${NV_X11}/nvidia_drv.so
4268 -
4269 - # Xorg GLX driver
4270 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
4271 - /usr/$(get_libdir)/opengl/nvidia/extensions
4272 -
4273 - # Xorg nvidia.conf
4274 - if has_version '>=x11-base/xorg-server-1.16'; then
4275 - insinto /usr/share/X11/xorg.conf.d
4276 - newins {,50-}nvidia-drm-outputclass.conf
4277 - fi
4278 -
4279 - insinto /usr/share/glvnd/egl_vendor.d
4280 - doins ${NV_X11}/10_nvidia.json
4281 - fi
4282 -
4283 - if use wayland; then
4284 - insinto /usr/share/egl/egl_external_platform.d
4285 - doins ${NV_X11}/10_nvidia_wayland.json
4286 - fi
4287 -
4288 - # OpenCL ICD for NVIDIA
4289 - if use kernel_linux; then
4290 - insinto /etc/OpenCL/vendors
4291 - doins ${NV_OBJ}/nvidia.icd
4292 - fi
4293 -
4294 - # Documentation
4295 - if use kernel_FreeBSD; then
4296 - dodoc "${NV_DOC}/README"
4297 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
4298 - use tools && doman "${NV_MAN}"/nvidia-settings.1
4299 - else
4300 - # Docs
4301 - newdoc "${NV_DOC}/README.txt" README
4302 - dodoc "${NV_DOC}/NVIDIA_Changelog"
4303 - doman "${NV_MAN}"/nvidia-smi.1
4304 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
4305 - use tools && doman "${NV_MAN}"/nvidia-settings.1
4306 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
4307 - fi
4308 -
4309 - docinto html
4310 - dodoc -r ${NV_DOC}/html/*
4311 -
4312 - # Helper Apps
4313 - exeinto /opt/bin/
4314 -
4315 - if use X; then
4316 - doexe ${NV_OBJ}/nvidia-xconfig
4317 -
4318 - insinto /etc/vulkan/icd.d
4319 - doins nvidia_icd.json
4320 - fi
4321 -
4322 - if use kernel_linux; then
4323 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
4324 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
4325 - doexe ${NV_OBJ}/nvidia-debugdump
4326 - doexe ${NV_OBJ}/nvidia-persistenced
4327 - doexe ${NV_OBJ}/nvidia-smi
4328 -
4329 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
4330 - doexe ${NV_OBJ}/nvidia-modprobe
4331 - fowners root:video /opt/bin/nvidia-modprobe
4332 - fperms 4710 /opt/bin/nvidia-modprobe
4333 - dosym /{opt,usr}/bin/nvidia-modprobe
4334 -
4335 - doman nvidia-cuda-mps-control.1
4336 - doman nvidia-modprobe.1
4337 - doman nvidia-persistenced.1
4338 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
4339 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
4340 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
4341 - fi
4342 -
4343 - if use tools; then
4344 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
4345 - DESTDIR="${D}" \
4346 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
4347 - LIBDIR="${D}/usr/$(get_libdir)" \
4348 - NV_USE_BUNDLED_LIBJANSSON=0 \
4349 - NV_VERBOSE=1 \
4350 - PREFIX=/usr \
4351 - DO_STRIP= \
4352 - install
4353 -
4354 - if use static-libs; then
4355 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
4356 -
4357 - insinto /usr/include/NVCtrl
4358 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
4359 - fi
4360 -
4361 - insinto /usr/share/nvidia/
4362 - doins nvidia-application-profiles-${PV}-key-documentation
4363 -
4364 - insinto /etc/nvidia
4365 - newins \
4366 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
4367 -
4368 - # There is no icon in the FreeBSD tarball.
4369 - use kernel_FreeBSD || \
4370 - doicon ${NV_OBJ}/nvidia-settings.png
4371 -
4372 - domenu "${FILESDIR}"/nvidia-settings.desktop
4373 -
4374 - exeinto /etc/X11/xinit/xinitrc.d
4375 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
4376 - fi
4377 -
4378 - dobin ${NV_OBJ}/nvidia-bug-report.sh
4379 -
4380 - if has_multilib_profile && use multilib; then
4381 - local OABI=${ABI}
4382 - for ABI in $(get_install_abis); do
4383 - src_install-libs
4384 - done
4385 - ABI=${OABI}
4386 - unset OABI
4387 - else
4388 - src_install-libs
4389 - fi
4390 -
4391 - is_final_abi || die "failed to iterate through all ABIs"
4392 -
4393 - readme.gentoo_create_doc
4394 -}
4395 -
4396 -src_install-libs() {
4397 - local inslibdir=$(get_libdir)
4398 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
4399 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
4400 - local nv_libdir="${NV_OBJ}"
4401 -
4402 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
4403 - nv_libdir="${NV_OBJ}"/32
4404 - fi
4405 -
4406 - if use X; then
4407 - NV_GLX_LIBRARIES=(
4408 - "libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
4409 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4410 - "libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
4411 - "libGLESv1_CM.so.1 ${GL_ROOT}"
4412 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4413 - "libGLESv2.so.2 ${GL_ROOT}"
4414 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4415 - "libGLX.so.0 ${GL_ROOT}"
4416 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4417 - "libGLdispatch.so.0 ${GL_ROOT}"
4418 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
4419 - "libOpenGL.so.0 ${GL_ROOT}"
4420 - "libcuda.so.${NV_SOVER}"
4421 - "libnvcuvid.so.${NV_SOVER}"
4422 - "libnvidia-compiler.so.${NV_SOVER}"
4423 - "libnvidia-eglcore.so.${NV_SOVER}"
4424 - "libnvidia-encode.so.${NV_SOVER}"
4425 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
4426 - "libnvidia-fbc.so.${NV_SOVER}"
4427 - "libnvidia-glcore.so.${NV_SOVER}"
4428 - "libnvidia-glsi.so.${NV_SOVER}"
4429 - "libnvidia-ifr.so.${NV_SOVER}"
4430 - "libnvidia-opencl.so.${NV_SOVER}"
4431 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
4432 - "libvdpau_nvidia.so.${NV_SOVER}"
4433 - )
4434 -
4435 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
4436 - then
4437 - NV_GLX_LIBRARIES+=(
4438 - "libnvidia-egl-wayland.so.1.0.1"
4439 - )
4440 - fi
4441 -
4442 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
4443 - then
4444 - NV_GLX_LIBRARIES+=(
4445 - "libnvidia-wfb.so.${NV_SOVER}"
4446 - )
4447 - fi
4448 -
4449 - if use kernel_FreeBSD; then
4450 - NV_GLX_LIBRARIES+=(
4451 - "libnvidia-tls.so.${NV_SOVER}"
4452 - )
4453 - fi
4454 -
4455 - if use kernel_linux; then
4456 - NV_GLX_LIBRARIES+=(
4457 - "libnvidia-ml.so.${NV_SOVER}"
4458 - "tls/libnvidia-tls.so.${NV_SOVER}"
4459 - )
4460 - fi
4461 -
4462 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
4463 - donvidia "${nv_libdir}"/${NV_LIB}
4464 - done
4465 - fi
4466 -}
4467 -
4468 -pkg_preinst() {
4469 - if use driver && use kernel_linux; then
4470 - linux-mod_pkg_preinst
4471 -
4472 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
4473 - if [ -z "${videogroup}" ]; then
4474 - eerror "Failed to determine the video group gid"
4475 - die "Failed to determine the video group gid"
4476 - else
4477 - sed -i \
4478 - -e "s:PACKAGE:${PF}:g" \
4479 - -e "s:VIDEOGID:${videogroup}:" \
4480 - "${D}"/etc/modprobe.d/nvidia.conf || die
4481 - fi
4482 - fi
4483 -
4484 - # Clean the dynamic libGL stuff's home to ensure
4485 - # we dont have stale libs floating around
4486 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
4487 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
4488 - fi
4489 - # Make sure we nuke the old nvidia-glx's env.d file
4490 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
4491 - rm -f "${ROOT}"/etc/env.d/09nvidia
4492 - fi
4493 -}
4494 -
4495 -pkg_postinst() {
4496 - use driver && use kernel_linux && linux-mod_pkg_postinst
4497 -
4498 - # Switch to the nvidia implementation
4499 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
4500 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
4501 -
4502 - readme.gentoo_print_elog
4503 -
4504 - if ! use X; then
4505 - elog "You have elected to not install the X.org driver. Along with"
4506 - elog "this the OpenGL libraries and VDPAU libraries were not"
4507 - elog "installed. Additionally, once the driver is loaded your card"
4508 - elog "and fan will run at max speed which may not be desirable."
4509 - elog "Use the 'nvidia-smi' init script to have your card and fan"
4510 - elog "speed scale appropriately."
4511 - elog
4512 - fi
4513 - if ! use tools; then
4514 - elog "USE=tools controls whether the nvidia-settings application"
4515 - elog "is installed. If you would like to use it, enable that"
4516 - elog "flag and re-emerge this ebuild. Optionally you can install"
4517 - elog "media-video/nvidia-settings"
4518 - elog
4519 - fi
4520 -}
4521 -
4522 -pkg_prerm() {
4523 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
4524 -}
4525 -
4526 -pkg_postrm() {
4527 - use driver && use kernel_linux && linux-mod_pkg_postrm
4528 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
4529 -}
4530
4531 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-384.69.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-384.69.ebuild
4532 deleted file mode 100644
4533 index fd2e8713d11..00000000000
4534 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-384.69.ebuild
4535 +++ /dev/null
4536 @@ -1,578 +0,0 @@
4537 -# Copyright 1999-2017 Gentoo Foundation
4538 -# Distributed under the terms of the GNU General Public License v2
4539 -
4540 -EAPI=6
4541 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
4542 - portability toolchain-funcs unpacker user udev
4543 -
4544 -NV_URI="http://http.download.nvidia.com/XFree86/"
4545 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
4546 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
4547 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
4548 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
4549 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
4550 -
4551 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
4552 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
4553 -SRC_URI="
4554 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
4555 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
4556 - arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
4557 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
4558 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
4559 - tools? (
4560 - https://github.com/NVIDIA/nvidia-settings/archive/${PV}.tar.gz -> nvidia-settings-${PV}.tar.gz
4561 - )
4562 -"
4563 -
4564 -LICENSE="GPL-2 NVIDIA-r2"
4565 -SLOT="0/${PV%.*}"
4566 -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
4567 -RESTRICT="bindist mirror"
4568 -EMULTILIB_PKG="true"
4569 -
4570 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
4571 -REQUIRED_USE="
4572 - tools? ( X )
4573 - static-libs? ( tools )
4574 -"
4575 -
4576 -COMMON="
4577 - app-eselect/eselect-opencl
4578 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
4579 - tools? (
4580 - dev-libs/atk
4581 - dev-libs/glib:2
4582 - dev-libs/jansson
4583 - gtk3? (
4584 - x11-libs/gtk+:3
4585 - )
4586 - x11-libs/cairo
4587 - x11-libs/gdk-pixbuf[X]
4588 - x11-libs/gtk+:2
4589 - x11-libs/libX11
4590 - x11-libs/libXext
4591 - x11-libs/libXrandr
4592 - x11-libs/libXv
4593 - x11-libs/libXxf86vm
4594 - x11-libs/pango[X]
4595 - )
4596 - X? (
4597 - >=app-eselect/eselect-opengl-1.0.9
4598 - app-misc/pax-utils
4599 - )
4600 -"
4601 -DEPEND="
4602 - ${COMMON}
4603 - kernel_linux? ( virtual/linux-sources )
4604 - tools? ( sys-apps/dbus )
4605 -"
4606 -RDEPEND="
4607 - ${COMMON}
4608 - acpi? ( sys-power/acpid )
4609 - tools? ( !media-video/nvidia-settings )
4610 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
4611 - X? (
4612 - <x11-base/xorg-server-1.19.99:=
4613 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
4614 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
4615 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
4616 - sys-libs/zlib[${MULTILIB_USEDEP}]
4617 - )
4618 -"
4619 -
4620 -QA_PREBUILT="opt/* usr/lib*"
4621 -
4622 -S=${WORKDIR}/
4623 -
4624 -nvidia_drivers_versions_check() {
4625 - if use amd64 && has_multilib_profile && \
4626 - [ "${DEFAULT_ABI}" != "amd64" ]; then
4627 - eerror "This ebuild doesn't currently support changing your default ABI"
4628 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
4629 - fi
4630 -
4631 - if use kernel_linux && kernel_is ge 4 13; then
4632 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
4633 - ewarn "which are limited to the following kernels:"
4634 - ewarn "<sys-kernel/gentoo-sources-4.13"
4635 - ewarn "<sys-kernel/vanilla-sources-4.13"
4636 - ewarn ""
4637 - ewarn "You are free to utilize epatch_user to provide whatever"
4638 - ewarn "support you feel is appropriate, but will not receive"
4639 - ewarn "support as a result of those changes."
4640 - ewarn ""
4641 - ewarn "Do not file a bug report about this."
4642 - ewarn ""
4643 - fi
4644 -
4645 - # Since Nvidia ships many different series of drivers, we need to give the user
4646 - # some kind of guidance as to what version they should install. This tries
4647 - # to point the user in the right direction but can't be perfect. check
4648 - # nvidia-driver.eclass
4649 - nvidia-driver-check-warning
4650 -
4651 - # Kernel features/options to check for
4652 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
4653 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
4654 -
4655 - # Now do the above checks
4656 - use kernel_linux && check_extra_config
4657 -}
4658 -
4659 -pkg_pretend() {
4660 - nvidia_drivers_versions_check
4661 -}
4662 -
4663 -pkg_setup() {
4664 - nvidia_drivers_versions_check
4665 -
4666 - # try to turn off distcc and ccache for people that have a problem with it
4667 - export DISTCC_DISABLE=1
4668 - export CCACHE_DISABLE=1
4669 -
4670 - if use driver && use kernel_linux; then
4671 - MODULE_NAMES="nvidia(video:${S}/kernel)"
4672 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
4673 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
4674 -
4675 - # This needs to run after MODULE_NAMES (so that the eclass checks
4676 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
4677 - # is set (so that KV_DIR is populated).
4678 - linux-mod_pkg_setup
4679 -
4680 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
4681 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
4682 -
4683 - # linux-mod_src_compile calls set_arch_to_kernel, which
4684 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
4685 - # expects x86_64 or i386 and then converts it to x86
4686 - # later on in the build process
4687 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
4688 - fi
4689 -
4690 - if use kernel_linux && kernel_is lt 2 6 9; then
4691 - eerror "You must build this against 2.6.9 or higher kernels."
4692 - fi
4693 -
4694 - # set variables to where files are in the package structure
4695 - if use kernel_FreeBSD; then
4696 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
4697 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
4698 - NV_DOC="${S}/doc"
4699 - NV_OBJ="${S}/obj"
4700 - NV_SRC="${S}/src"
4701 - NV_MAN="${S}/x11/man"
4702 - NV_X11="${S}/obj"
4703 - NV_SOVER=1
4704 - elif use kernel_linux; then
4705 - NV_DOC="${S}"
4706 - NV_OBJ="${S}"
4707 - NV_SRC="${S}/kernel"
4708 - NV_MAN="${S}"
4709 - NV_X11="${S}"
4710 - NV_SOVER=${PV}
4711 - else
4712 - die "Could not determine proper NVIDIA package"
4713 - fi
4714 -}
4715 -
4716 -src_prepare() {
4717 - if use pax_kernel; then
4718 - ewarn "Using PAX patches is not supported. You will be asked to"
4719 - ewarn "use a standard kernel should you have issues. Should you"
4720 - ewarn "need support with these patches, contact the PaX team."
4721 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
4722 - fi
4723 -
4724 - local man_file
4725 - for man_file in "${NV_MAN}"/*1.gz; do
4726 - gunzip $man_file || die
4727 - done
4728 -
4729 - # Allow user patches so they can support RC kernels and whatever else
4730 - eapply_user
4731 -
4732 - if ! [ -f nvidia_icd.json ]; then
4733 - cp nvidia_icd.json.template nvidia_icd.json || die
4734 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
4735 - fi
4736 -}
4737 -
4738 -src_compile() {
4739 - # This is already the default on Linux, as there's no toplevel Makefile, but
4740 - # on FreeBSD there's one and triggers the kernel module build, as we install
4741 - # it by itself, pass this.
4742 -
4743 - cd "${NV_SRC}"
4744 - if use kernel_FreeBSD; then
4745 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
4746 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
4747 - elif use driver && use kernel_linux; then
4748 - MAKEOPTS=-j1 linux-mod_src_compile
4749 - fi
4750 -
4751 - if use tools; then
4752 - emake -C "${S}"/nvidia-settings-${PV}/src \
4753 - AR="$(tc-getAR)" \
4754 - CC="$(tc-getCC)" \
4755 - LIBDIR="$(get_libdir)" \
4756 - NV_VERBOSE=1 \
4757 - RANLIB="$(tc-getRANLIB)" \
4758 - DO_STRIP= \
4759 - build-xnvctrl
4760 -
4761 - emake -C "${S}"/nvidia-settings-${PV}/src \
4762 - CC="$(tc-getCC)" \
4763 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
4764 - LD="$(tc-getCC)" \
4765 - LIBDIR="$(get_libdir)" \
4766 - NVML_ENABLED=0 \
4767 - NV_USE_BUNDLED_LIBJANSSON=0 \
4768 - NV_VERBOSE=1 \
4769 - DO_STRIP=
4770 - fi
4771 -}
4772 -
4773 -# Install nvidia library:
4774 -# the first parameter is the library to install
4775 -# the second parameter is the provided soversion
4776 -# the third parameter is the target directory if it is not /usr/lib
4777 -donvidia() {
4778 - # Full path to library
4779 - nv_LIB="${1}"
4780 -
4781 - # SOVER to use
4782 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
4783 -
4784 - # Where to install
4785 - nv_DEST="${2}"
4786 -
4787 - # Get just the library name
4788 - nv_LIBNAME=$(basename "${nv_LIB}")
4789 -
4790 - if [[ "${nv_DEST}" ]]; then
4791 - exeinto ${nv_DEST}
4792 - action="doexe"
4793 - else
4794 - nv_DEST="/usr/$(get_libdir)"
4795 - action="dolib.so"
4796 - fi
4797 -
4798 - # Install the library
4799 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
4800 -
4801 - # If the library has a SONAME and SONAME does not match the library name,
4802 - # then we need to create a symlink
4803 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
4804 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
4805 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
4806 - fi
4807 -
4808 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
4809 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
4810 -}
4811 -
4812 -src_install() {
4813 - if use driver && use kernel_linux; then
4814 - linux-mod_src_install
4815 -
4816 - # Add the aliases
4817 - # This file is tweaked with the appropriate video group in
4818 - # pkg_preinst, see bug #491414
4819 - insinto /etc/modprobe.d
4820 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
4821 - doins "${FILESDIR}"/nvidia-rmmod.conf
4822 -
4823 - # Ensures that our device nodes are created when not using X
4824 - exeinto "$(get_udevdir)"
4825 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
4826 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
4827 - elif use kernel_FreeBSD; then
4828 - if use x86-fbsd; then
4829 - insinto /boot/modules
4830 - doins "${S}/src/nvidia.kld"
4831 - fi
4832 -
4833 - exeinto /boot/modules
4834 - doexe "${S}/src/nvidia.ko"
4835 - fi
4836 -
4837 - # NVIDIA kernel <-> userspace driver config lib
4838 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
4839 -
4840 - # NVIDIA framebuffer capture library
4841 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
4842 -
4843 - # NVIDIA video encode/decode <-> CUDA
4844 - if use kernel_linux; then
4845 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
4846 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
4847 - fi
4848 -
4849 - if use X; then
4850 - # Xorg DDX driver
4851 - insinto /usr/$(get_libdir)/xorg/modules/drivers
4852 - doins ${NV_X11}/nvidia_drv.so
4853 -
4854 - # Xorg GLX driver
4855 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
4856 - /usr/$(get_libdir)/opengl/nvidia/extensions
4857 -
4858 - # Xorg nvidia.conf
4859 - if has_version '>=x11-base/xorg-server-1.16'; then
4860 - insinto /usr/share/X11/xorg.conf.d
4861 - newins {,50-}nvidia-drm-outputclass.conf
4862 - fi
4863 -
4864 - insinto /usr/share/glvnd/egl_vendor.d
4865 - doins ${NV_X11}/10_nvidia.json
4866 - fi
4867 -
4868 - if use wayland; then
4869 - insinto /usr/share/egl/egl_external_platform.d
4870 - doins ${NV_X11}/10_nvidia_wayland.json
4871 - fi
4872 -
4873 - # OpenCL ICD for NVIDIA
4874 - if use kernel_linux; then
4875 - insinto /etc/OpenCL/vendors
4876 - doins ${NV_OBJ}/nvidia.icd
4877 - fi
4878 -
4879 - # Documentation
4880 - if use kernel_FreeBSD; then
4881 - dodoc "${NV_DOC}/README"
4882 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
4883 - use tools && doman "${NV_MAN}"/nvidia-settings.1
4884 - else
4885 - # Docs
4886 - newdoc "${NV_DOC}/README.txt" README
4887 - dodoc "${NV_DOC}/NVIDIA_Changelog"
4888 - doman "${NV_MAN}"/nvidia-smi.1
4889 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
4890 - use tools && doman "${NV_MAN}"/nvidia-settings.1
4891 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
4892 - fi
4893 -
4894 - docinto html
4895 - dodoc -r ${NV_DOC}/html/*
4896 -
4897 - # Helper Apps
4898 - exeinto /opt/bin/
4899 -
4900 - if use X; then
4901 - doexe ${NV_OBJ}/nvidia-xconfig
4902 -
4903 - insinto /etc/vulkan/icd.d
4904 - doins nvidia_icd.json
4905 - fi
4906 -
4907 - if use kernel_linux; then
4908 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
4909 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
4910 - doexe ${NV_OBJ}/nvidia-debugdump
4911 - doexe ${NV_OBJ}/nvidia-persistenced
4912 - doexe ${NV_OBJ}/nvidia-smi
4913 -
4914 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
4915 - doexe ${NV_OBJ}/nvidia-modprobe
4916 - fowners root:video /opt/bin/nvidia-modprobe
4917 - fperms 4710 /opt/bin/nvidia-modprobe
4918 - dosym /{opt,usr}/bin/nvidia-modprobe
4919 -
4920 - doman nvidia-cuda-mps-control.1
4921 - doman nvidia-modprobe.1
4922 - doman nvidia-persistenced.1
4923 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
4924 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
4925 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
4926 - fi
4927 -
4928 - if use tools; then
4929 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
4930 - DESTDIR="${D}" \
4931 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
4932 - LIBDIR="${D}/usr/$(get_libdir)" \
4933 - NV_USE_BUNDLED_LIBJANSSON=0 \
4934 - NV_VERBOSE=1 \
4935 - PREFIX=/usr \
4936 - DO_STRIP= \
4937 - install
4938 -
4939 - if use static-libs; then
4940 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
4941 -
4942 - insinto /usr/include/NVCtrl
4943 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
4944 - fi
4945 -
4946 - insinto /usr/share/nvidia/
4947 - doins nvidia-application-profiles-${PV}-key-documentation
4948 -
4949 - insinto /etc/nvidia
4950 - newins \
4951 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
4952 -
4953 - # There is no icon in the FreeBSD tarball.
4954 - use kernel_FreeBSD || \
4955 - doicon ${NV_OBJ}/nvidia-settings.png
4956 -
4957 - domenu "${FILESDIR}"/nvidia-settings.desktop
4958 -
4959 - exeinto /etc/X11/xinit/xinitrc.d
4960 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
4961 - fi
4962 -
4963 - dobin ${NV_OBJ}/nvidia-bug-report.sh
4964 -
4965 - if has_multilib_profile && use multilib; then
4966 - local OABI=${ABI}
4967 - for ABI in $(get_install_abis); do
4968 - src_install-libs
4969 - done
4970 - ABI=${OABI}
4971 - unset OABI
4972 - else
4973 - src_install-libs
4974 - fi
4975 -
4976 - is_final_abi || die "failed to iterate through all ABIs"
4977 -
4978 - readme.gentoo_create_doc
4979 -}
4980 -
4981 -src_install-libs() {
4982 - local inslibdir=$(get_libdir)
4983 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
4984 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
4985 - local nv_libdir="${NV_OBJ}"
4986 -
4987 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
4988 - nv_libdir="${NV_OBJ}"/32
4989 - fi
4990 -
4991 - if use X; then
4992 - NV_GLX_LIBRARIES=(
4993 - "libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
4994 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4995 - "libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
4996 - "libGLESv1_CM.so.1 ${GL_ROOT}"
4997 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
4998 - "libGLESv2.so.2 ${GL_ROOT}"
4999 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
5000 - "libGLX.so.0 ${GL_ROOT}"
5001 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
5002 - "libGLdispatch.so.0 ${GL_ROOT}"
5003 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
5004 - "libOpenGL.so.0 ${GL_ROOT}"
5005 - "libcuda.so.${NV_SOVER}"
5006 - "libnvcuvid.so.${NV_SOVER}"
5007 - "libnvidia-compiler.so.${NV_SOVER}"
5008 - "libnvidia-eglcore.so.${NV_SOVER}"
5009 - "libnvidia-encode.so.${NV_SOVER}"
5010 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
5011 - "libnvidia-fbc.so.${NV_SOVER}"
5012 - "libnvidia-glcore.so.${NV_SOVER}"
5013 - "libnvidia-glsi.so.${NV_SOVER}"
5014 - "libnvidia-ifr.so.${NV_SOVER}"
5015 - "libnvidia-opencl.so.${NV_SOVER}"
5016 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
5017 - "libvdpau_nvidia.so.${NV_SOVER}"
5018 - )
5019 -
5020 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
5021 - then
5022 - NV_GLX_LIBRARIES+=(
5023 - "libnvidia-egl-wayland.so.1.0.1"
5024 - )
5025 - fi
5026 -
5027 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
5028 - then
5029 - NV_GLX_LIBRARIES+=(
5030 - "libnvidia-wfb.so.${NV_SOVER}"
5031 - )
5032 - fi
5033 -
5034 - if use kernel_FreeBSD; then
5035 - NV_GLX_LIBRARIES+=(
5036 - "libnvidia-tls.so.${NV_SOVER}"
5037 - )
5038 - fi
5039 -
5040 - if use kernel_linux; then
5041 - NV_GLX_LIBRARIES+=(
5042 - "libnvidia-ml.so.${NV_SOVER}"
5043 - "tls/libnvidia-tls.so.${NV_SOVER}"
5044 - )
5045 - fi
5046 -
5047 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
5048 - donvidia "${nv_libdir}"/${NV_LIB}
5049 - done
5050 - fi
5051 -}
5052 -
5053 -pkg_preinst() {
5054 - if use driver && use kernel_linux; then
5055 - linux-mod_pkg_preinst
5056 -
5057 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
5058 - if [ -z "${videogroup}" ]; then
5059 - eerror "Failed to determine the video group gid"
5060 - die "Failed to determine the video group gid"
5061 - else
5062 - sed -i \
5063 - -e "s:PACKAGE:${PF}:g" \
5064 - -e "s:VIDEOGID:${videogroup}:" \
5065 - "${D}"/etc/modprobe.d/nvidia.conf || die
5066 - fi
5067 - fi
5068 -
5069 - # Clean the dynamic libGL stuff's home to ensure
5070 - # we dont have stale libs floating around
5071 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
5072 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
5073 - fi
5074 - # Make sure we nuke the old nvidia-glx's env.d file
5075 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
5076 - rm -f "${ROOT}"/etc/env.d/09nvidia
5077 - fi
5078 -}
5079 -
5080 -pkg_postinst() {
5081 - use driver && use kernel_linux && linux-mod_pkg_postinst
5082 -
5083 - # Switch to the nvidia implementation
5084 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
5085 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
5086 -
5087 - readme.gentoo_print_elog
5088 -
5089 - if ! use X; then
5090 - elog "You have elected to not install the X.org driver. Along with"
5091 - elog "this the OpenGL libraries and VDPAU libraries were not"
5092 - elog "installed. Additionally, once the driver is loaded your card"
5093 - elog "and fan will run at max speed which may not be desirable."
5094 - elog "Use the 'nvidia-smi' init script to have your card and fan"
5095 - elog "speed scale appropriately."
5096 - elog
5097 - fi
5098 - if ! use tools; then
5099 - elog "USE=tools controls whether the nvidia-settings application"
5100 - elog "is installed. If you would like to use it, enable that"
5101 - elog "flag and re-emerge this ebuild. Optionally you can install"
5102 - elog "media-video/nvidia-settings"
5103 - elog
5104 - fi
5105 -}
5106 -
5107 -pkg_prerm() {
5108 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
5109 -}
5110 -
5111 -pkg_postrm() {
5112 - use driver && use kernel_linux && linux-mod_pkg_postrm
5113 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
5114 -}