mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-27 16:41:11 +02:00
x11-drivers/nvidia-drivers: Sync with Gentoo
It's from Gentoo commit 2bfd33b1aa879a5171e2b83b99fd30936f85b832. Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
This commit is contained in:
parent
1c6978465f
commit
350a9e851e
@ -1,71 +1,63 @@
|
||||
DIST NVIDIA-Linux-aarch64-535.247.01.run 269861217 BLAKE2B c72eb28472c6a5ee5344618b343efc3f8edac94a5d2c994b86d113f7258c0df228076462d3fb84791f8f1c666554d20116ebb6a7444b680128556a4b9e8b2b29 SHA512 a0bd487238d41fd907c7e87d8ce10b4e19a367c8faafafc914fe6d741b348619e7427a5ff22dd2a475e4dd5cf3148965934b746bcc34b3f572bc01e8a6429bda
|
||||
DIST NVIDIA-Linux-aarch64-535.261.03.run 269926298 BLAKE2B 78b696ed9ef01fdc4bec8b955c7f7acb7475f743c7483b5ab799d63f5917e12e97ea522865c1b4e2fa03586977ccefdc4518339c705ff9e8165ac9bd4af32e30 SHA512 3bc4a141fc159e88a3cda19519d325ddfc03fdcd328a50b5a0c6c9f06089ff2a97edb03dbfd1d23ec0e60a4fc549a8f0143e0c4d6beb98771ad8c243ef699faf
|
||||
DIST NVIDIA-Linux-aarch64-550.163.01.run 236409124 BLAKE2B 21c79346f6b739f44d7ed2d4955129613f51e1329ff15948ef50a9a06b82975ad890d6142e5dfb163e7b0da19bf5c26029cf507d120037f8a76abc177a286403 SHA512 0ef4ab4aae308ec0cfb5458cef34a1503ac1a85f0e1d0c9f061d8e28f939b15784e3862d96d83e93123d9eb56807a6804318ce230ee68917fb75e363011f8304
|
||||
DIST NVIDIA-Linux-aarch64-570.153.02.run 289829452 BLAKE2B aae0e65be8f5d617b4c270d9042b410773cc476446f922e3f8b27d87f64cfe38cc12a586c369fc824cb185977d648854953803f203707294043d6a30361c4c01 SHA512 e5e3bc0f0f5684ef5b1fd54e7dbc92b455242b4b54511ecce41534890c552d29d6985c9ac41bb150a6ba3f24b39122fe36fcac339a7cb8587b79d4ead7b28c64
|
||||
DIST NVIDIA-Linux-aarch64-570.169.run 290106494 BLAKE2B b8b332c3b121063af061f1ab19f87db6c528da977847423f6d7f0b6c6d7d8bd118e6f0518fbd66c6c633647efb64a3a670cd5ecadffd41faf6271916446f2143 SHA512 551615d6ecc982acdbb52049c5afd11cd8ca69999d097f076884c3f632b3880f95c707ebadf66c3aabf5452aab52cd372894eff574382ed2d79444a65c368369
|
||||
DIST NVIDIA-Linux-aarch64-575.57.08.run 304970395 BLAKE2B 5c490e71ced2ad94916e660686518063f440ec6be3b00e25dd46969107cd313680092b18efa5a4bb050105ebbf2ec1891b6eb172cac95e52ab1fef3193032853 SHA512 c0e33f925f7e9c121bd5af813898a272eb8d2b99a3e1761aab6965bb95b24c17a994120dcfaf509360bd8087e97cc36fd3dfc95677a59af5f0b1da9321b99746
|
||||
DIST NVIDIA-Linux-aarch64-570.172.08.run 290144917 BLAKE2B 095a9362f8729f854e0a976d90456d2d061d1a21f3c110b94a4eef0264fda81078058d8e24a76eb7d13066feee8d17d9aee2de4f111debc361362d7a73d119b0 SHA512 291012513c2b9bff94a0892248207734b1d12a13ff994036045fd159f60bf410508fd66873d78388d0e289ded1b76f8d0980219c289fa2ba99303f2cf872e9d6
|
||||
DIST NVIDIA-Linux-aarch64-575.64.03.run 305150077 BLAKE2B 5b7a9e0ec90130f8009e9612102e87cc513fef04ffc34e47cc8eb3b787c4642d3445aef0a064005bb33972925a110d7f4716dccc71840e273010b519b019be55 SHA512 16f9fae89102ee1d9f587c8e85098e34e5cd84299766a97920ea4c23aae7e353837e4e69c4c067c27a85ce0d8f18df90c8cc368a100ddc846744d6bff09ad7da
|
||||
DIST NVIDIA-Linux-aarch64-575.64.run 307581538 BLAKE2B 3d15baff14400022abdb7f147c1972fc10b48429c0efbb6d2594c4eaafb760781519538be5505976b98247ce8b342fa790e4f85fd827fee5198a693e6b13ee1b SHA512 e006cf3641245ff2fe92c23273e0e05c2da33577527450672349a20605531836f57b43c4e131995b7f0934113be2cbe8e0c820f70af9ff1073d797daf611933a
|
||||
DIST NVIDIA-Linux-x86-390.157.run 49417041 BLAKE2B 435b5e0e60468cc74b41cc5d9b5bb0105d29c11a2d408457835212a96519c9334ecf19278b36749d3ff7f498f5b0ae45a2efae2d428703dac21245c62f1efebe SHA512 dae9ac2c12f9ad90f7441e00e01a984147c577892421911d7f67f6a31e616ac1cb7d434bc9c7f58fbd9b8ae909521b5bece607a63c79588c0bb9d99c6bad5fb0
|
||||
DIST NVIDIA-Linux-x86_64-390.157.run 85835541 BLAKE2B 44b855cd11f3b2f231f9fb90492ae2e67a67ea3ea83c413e7c90956d38c9730a8bd0321281ae03c6afce633d102f5b499aed25622b9bfd31bdd2c98f0717e95b SHA512 4780503a4cff0180b1b1f37d20a6ba3438dd78b51fa7f69b98d35521835e5d61099129746929d51d63afa2d47b672b3e145e1e1897584dc3799e7f822c5b3a0a
|
||||
DIST NVIDIA-Linux-x86_64-470.256.02.run 272850014 BLAKE2B 0fdc867f92b82b2a60810c3b43751cad7ac2c39928c92c6c343c0c6044f4d7d923d93b8599db3f7c999c0ee7d16940e65d991a61cbb30e1d9e49c5639ac6bdc8 SHA512 a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88
|
||||
DIST NVIDIA-Linux-x86_64-535.247.01.run 341853459 BLAKE2B ef91097a36add821a623c8d1f19eca8ca9571fe4a08b8e25eb70f09923899bcb3bd2c0f408dd6ff045ffdccb192be3a46cec4fd7b7d8d7bc17449c436cc2cbde SHA512 f8e04e5f7cf8b7fdae9135cb5f0f2740d5eae0ef9a44a41dbf78996d3c2d4139bdbec99be14f73aa2d275d78658b4a91a274f20545e4325cef787548e3d073a6
|
||||
DIST NVIDIA-Linux-x86_64-535.261.03.run 341775057 BLAKE2B d72ed6d4d442c204721667302d300e8e8ec9b8288a0945ba090aa4e4666fb7fbd6bffe8a242c134e6ce8a7947954d7771ec142cf6b6cf1a32b773edf9119e71e SHA512 52ac6db0a057977652f56a279c6e5482fd602d1c637b22e7bb8ae5e5f5a9fbddb8492196371c2bdcacfbd9e7c1bf3954c22254e842f413cb6af1b3c79a6e7ec2
|
||||
DIST NVIDIA-Linux-x86_64-550.163.01.run 307143336 BLAKE2B 256106bcd3bace402289e60aca4cd3b447d0fd8ec3dabd50e2bb303c5e866f8da5c28f9b578d95775bf69158f100d68a91d20d9a91426285a8e799817f21db6b SHA512 676b1de35d21e80091528a49080c114e0870ea90b3f3721265ae8071abbc2183c851e6f11ba96a332c743fedfaf4ec9a014ad6ceed586fdbb03d94d33405e356
|
||||
DIST NVIDIA-Linux-x86_64-570.123.18.run 376011120 BLAKE2B 4e58db37bee9caafc49120cb3739847787e08382d50543e3a2a22b9e75fcd515969e3637ad60686bc12150f80c028af8caae14427a24e54fce220761683e81d8 SHA512 64cc8fca0b2d0c3b5c118940b4ae3ffecb297cb1595cc71f66927926e1467cb6577b15d2bcf46cbda4d928a0218ca1d019b0ed27e2c03bfebf244b8551cbb485
|
||||
DIST NVIDIA-Linux-x86_64-570.153.02.run 375742097 BLAKE2B 608facd79c913fdd58829e2639429e0834feacd52997980d1c143453346790cebaf8dd9295a4cd05947548821891e16bdddf291875e03736ffca7b5d1c9834c6 SHA512 6da277640a4727a420379b43b44c6222869e2fd10794627e73a0a1fe7db6213c0cbab7901799cc9ee2431df54e0c4857eaf1b293fd1750a3bc68c2bf3852413f
|
||||
DIST NVIDIA-Linux-x86_64-570.123.19.run 375997440 BLAKE2B bc96faaeeb3c52d3c54bc9c5b87d04503ca9d329ad6d4ddb0003d02b7f0ede81ad00ea812dcfe7158acfeb3b9e1714d363d19b7c89c25ec2d8fe239934ccd2d3 SHA512 f892a1fd621ee536a03a1114b69b2d512a4144651c3f146eeb22b70b6b4ad43feb7e5eaf0a8c023f889591c124778471a64ce6356320342b74b69eaef73fbe8e
|
||||
DIST NVIDIA-Linux-x86_64-570.169.run 375816796 BLAKE2B 1934cc5276433b6ee54b31358d85f88e3e81dd23732fa72848a6c60c455399b5217301e1c8aa1795dd8292bf4e604c6cbc144700775ec2661029b737ba2e3324 SHA512 79cf53770f11405ea416b4a3fe91edd34e8bc99e2f8e0d47dd2b01045b17f23998bfd3d60fc660c0826c69305ee928dec56fb251205e183ede9235e31d01d7d5
|
||||
DIST NVIDIA-Linux-x86_64-575.57.08.run 389558524 BLAKE2B 04274c2fa9a97767a13c9896ba1132388b4edfb521856e235fcb6e1a2350bbccdfcf3329d41283b98260f51b9af8ebb10b46d19fae4383c3fdc0147d308766f6 SHA512 6ade3fb7227e51f88671f460d990bbd090ac9d4f8968c3c5c6d22011a78c1267c959916e9cdd18ba165c6f0b8f459c9b3534fa39eae9ae527232911fdd8f2417
|
||||
DIST NVIDIA-Linux-x86_64-570.172.08.run 375905456 BLAKE2B 58418e039f378d78950345edac3c95fc9e4d5ed23419dfb7b256afdb918368ec15653744fcc4625c54cacdd7df00c0e57835ec4ffbf865384b27c623a351bd14 SHA512 8000f31575392ca8a575879f36b6e3e0fdee14e63efb856b77035e5aa434a02de0fd4ff5472d01984cbc541d40656ed6b7b77c78d00f6e1bc4341864bad725c5
|
||||
DIST NVIDIA-Linux-x86_64-575.64.03.run 387655074 BLAKE2B af4c42095bff2b195f46cb3472cde599e6b8cea7841110da75f7659c41cb83d8a4ee33b242aab44af606353456d9163bc9a73562be4693ac2d5a31621fb9af13 SHA512 ca705ad35dbb6e3e4872ec85dd78e70760e86b28d5d4b9bfe7b5d5ad0fca3bfdcf794e8708f3b1dfcea8edeabc208e820388af4a57dc9c6dcffb5d1761598779
|
||||
DIST NVIDIA-Linux-x86_64-575.64.run 387052180 BLAKE2B 8ae4ff774e76815c839f1dc150e4750332e4dd59f048b00d19f1ef3c462877776249b4b8275c2960b8ae2b3b19c3196f63047168b2f468e15a8c864917ef3ae1 SHA512 21951798f0823ba63dc47ee94d9b27c72ae1788899f2181df0d6352b1d4b3f19a4e051687f3bb5f9f3e0fbda8f256748171a283837bf369a85fd9d8b552ac068
|
||||
DIST NVIDIA-kernel-module-source-535.247.01.tar.xz 12517152 BLAKE2B b12497621ba32da4ca80ca6736d559bc98ba45974e06bbb63c08695c3b24c45752b3fd3dc2854ed64950e89e99b38d1006ce672096e35daced0ebe0a9dda77f6 SHA512 ed8e10d5245447fcdf348509ad62e9ac3d56a052d254b764e3a574a711cfa5c8831a759d425f42795c2db752f3d91d60b6097f6901c88654f242c94768faddb6
|
||||
DIST NVIDIA-kernel-module-source-535.261.03.tar.xz 12521372 BLAKE2B 214f52874a3cac43ad135e57577f8879b605d67d4cec1756ee2a5ee3986568ce621bae603637fdb9ff0be9295e262a1f14f9dee6d871737bce02ea163aff7505 SHA512 346b12fdcd1a7b5b8067e6cee6567f4ab2a89e8d246ebec4ad0eeb6dc91782c701b9b4d7ef4903c2492726fc8c242572a63a3cb8a06a9fb4a6039b65ce11b8ec
|
||||
DIST NVIDIA-kernel-module-source-550.163.01.tar.xz 13552400 BLAKE2B e1fd753127d10097c5f1d3c90d95c7eb0934c0d5e1df0a371aed2a0d7669960b67c46eed20eec3c42ca41c0f34bf6d7d3d2a77a94308c9f86d4f5d831da19363 SHA512 c9f4ce2890db3fdc66dd080da4d6802a8bc3b18feba96be5d33641b02cca637b1bcd2a3748f36f93a32f26ba57eb352156314f139688b0d3a102efdfde6c32ba
|
||||
DIST NVIDIA-kernel-module-source-570.153.02.tar.xz 17938000 BLAKE2B 9d4ac90b48b80dc0d2263347dff51f1340227b99bef737bc43b3d44b695a27c2bd34ea6f760cbf0e1cc09ba22cad9286681c351c243a7d4c3559eda6084cf913 SHA512 b0cb2e748746906a973df597c91bac087c033bcb06b62e1778f7df5d2499ae90392759a2e7e28187d28211f11b7ca7200f2a903db9fa64854ea93768c362e0a7
|
||||
DIST NVIDIA-kernel-module-source-570.169.tar.xz 17928016 BLAKE2B 4d68cbcbbb14f0b9741c09dedad5abf859f971676869d46e8a6749c04dfc39a6f24098aff9c55d8d33e1e5b1f67be16a99af702f29003354635019ff94ee683f SHA512 7d5a06e596235d90ba5b26a4b04b68623b501643ea8c6bcd7342add6563684486f32b6399335a853f03cb588dc57cdb1397e2705bce512a8be57d3b615b8eb22
|
||||
DIST NVIDIA-kernel-module-source-575.57.08.tar.xz 18201104 BLAKE2B 893696ba425f659aa35e7762b7d50e3bff4b9088a79e10b47127662c4dacb9eda9ab4ce072bcd39e68ca0f75110cbdde0e2762f20b8d0d9623e16b9bd28ada7f SHA512 1fbb0c3da87b61666dff3d6838df291ded0d7d62a83d914233cd11c9fc3ed4becf55ecd00763261a5a87975276a5749fb4a38ed59eb10807b891fd444a1bba75
|
||||
DIST NVIDIA-kernel-module-source-570.172.08.tar.xz 17948096 BLAKE2B 23220805e6555e556c99659d9e17f5ab822b0e221cdce2c2639377680fdda9267eea200f7ca579d28497c89fa2167d524497e4c53cdcfaa20a1b0d7eb3aa7522 SHA512 969158a46d70b23911f77d08832c6b307503988bf1cee0b2a0f75a49612d447c23ff1fefa3eac373b53b79475f87f3470de7df72a395fdb8cd57eefa51bc1ad8
|
||||
DIST NVIDIA-kernel-module-source-575.64.03.tar.xz 18219744 BLAKE2B 4207f768bdcd1c72a42a1030e5f8e38afb3f3e23ea368a19f0b01dbdaf66d552d4a2573cc4aba31f31f006f6c829e99ccbb3775bf629b41cc1ddf13632a4ea40 SHA512 2acd48d39e9aabc892ad0eb3d98bc9b723fd79a9b7f24b9f55b3e591e5d27445fe5ffc9d1bd8042e9741d56ca815c47065f36d88a3a008e635af2011eb07cf40
|
||||
DIST NVIDIA-kernel-module-source-575.64.tar.xz 18197028 BLAKE2B 9bd4ccc572af84821cd591c871b961dd01f3b2e8faccc47101d2aea8bc9adeb16c464e7a28393d145411d0361d3f1462fe343c9e2821ec8819a3370b54d3c6f0 SHA512 634cd78335eab2841aa6b662eb67c0c90c313ae6fe1c436b62befb02a9a8c89d36c45ff9d6ca7b3c031f80dbc8be195e5faa7f1e8c0e65740d6b569aea7a017d
|
||||
DIST nvidia-installer-390.157.tar.bz2 150323 BLAKE2B 8058ca87a6dea956d564af9f7eab9b1fc82b1f2382bd5cb2f6d97cbe2e19292533522d5f8f2eacbeb16520372715fcb72f8f9b0998962af5d4e75522c8d74524 SHA512 93a7ece648602157496c8e27a88864ede341a100f5328a4c1a25faf8f0b94d252060e5e2f71d0c302fd0566c10773c30b76b3b5f431d8039b71c90a7969f7d7e
|
||||
DIST nvidia-installer-470.256.02.tar.bz2 146269 BLAKE2B 4402e725c8fd0157eb84d4ec140a33f97e873014577487ef1e32fb8921cabe79c60ff46532e5bfaabb2b6ac894f7c80086dbab19e61906e2e27346fb85f98829 SHA512 c962dc17d9696256d1ebedcaeb3010994f2ce3895aedc47987599ebfec132a9b9a249d2ece6502b15bd4a93f9b0106aa13487a7da5f64199c274ce11eba27cfd
|
||||
DIST nvidia-installer-535.247.01.tar.bz2 148887 BLAKE2B 3455f064d3a5745971e8ca6574bfe16258544e669f05fa6e1f31cc88a7224f76cbf5d1ea26a62e70e908b7261c3264664e090209221a6e64030c6f486b9452b3 SHA512 be97915091e60c56b442dcec45f76380ab316e95b7417d99133419a7883e1cf547ac0c03d7e763574613dfe5bc27dbc6c887ed9870e528ae056b2400175044e4
|
||||
DIST nvidia-installer-535.261.03.tar.bz2 148694 BLAKE2B e113e3a548f5cb562b064f97f3f81dad952dbf8acc9158a79caf14d0868bbc673ed2b5038f51361243547792a044f8d7306c69f5ccaa36717fe6de0ae39a89d8 SHA512 4f899eec7ef869bf9b89732bc29a1198792a4b984d308908d3b17917d4824425640ac988bc04f0eb539ad4eace38e7462f204bdb9cc6a6ac583c2e8b6e06f8e5
|
||||
DIST nvidia-installer-550.163.01.tar.bz2 155861 BLAKE2B 662064b3ceb4aadebde419057d85c6b4e28b91944bd5bab241bcba9b3c9a105e507afc7651b17fff01e1cccb78d66fdc6789597ce059f882a6f322b08f28e832 SHA512 f8df7a0eccdecb7d4d4f47d96050cdbefff91289b29550b061358614845648451d4b161d9bdbfbf5a9a87ce650d272cb3b795e6d2ed4d0274844a56db097bd15
|
||||
DIST nvidia-installer-570.153.02.tar.bz2 169264 BLAKE2B 527574c76c3732d6e0ce81b55f9a92ae9d4a757151bdf6a5449d677b2991c48af652f61199c235e3253ae173ed314b8e58b968cb074022659a0d00e0ca23c389 SHA512 22a51690e159468b732109005c75a77a46c9e531f869c1590d859a515b6b9325dd076fb81b1542aee8617b68b4f7b7df1d8b7507123a73064a6a34ec435b5334
|
||||
DIST nvidia-installer-570.169.tar.bz2 169301 BLAKE2B 2676261d50cfe235d099475bcedcc96549d5140bf0c95b8f41b49d62eb0cd5fdf5c2ed53a59f79c778011b50e95ef440cc7a3a7a6673de7311e4508fa8f5960b SHA512 5864343b23a27cf994e414bb8a3b90e7b740df54188d43172456ea163162cea74e0b38a0b41717756818262d9f80b25cfc7566900bc682ea0546a825d52e3cfd
|
||||
DIST nvidia-installer-575.57.08.tar.bz2 169416 BLAKE2B 12bbde414a119911402bae54befb218890cb29d64b3b32b807e44eb2e56f0592da0881c605c6df2941aaf2c4eef9fb3fe25c5afa2b8b7fa6e6d7af6b22c1e1cf SHA512 d3e365590aacb075d647c320e43f237c90bd124e3aca257e623bb7780b368903ca861244f91773f8dd8f1910fb245beba94d11f82d97abe4fa491711d210543f
|
||||
DIST nvidia-installer-570.172.08.tar.bz2 169388 BLAKE2B 44d0650e1a7cef00a47b828dc60af5a76eddd6733cef4539ce0199136bcb490355d72a3bc52b6028333d270b950884997dbcbe7d50bceb7a52876f9394a03734 SHA512 e64913fd6c66ee4d33e3de047ff9d901dedee514501c12421688494c995e66d201e69bbf87877f1c8fabe0b2a1d47f0f5a6e7cf865a62b2557526c2030386cd5
|
||||
DIST nvidia-installer-575.64.03.tar.bz2 169433 BLAKE2B b7e5b7e064739eff7088f329446db56892f0b2d5c29895da097aced366e248ddc88ba3922b3e94bf12883a7551edee7c9229787d0748df202823f6399cb480a0 SHA512 e32cbb2bfd94769c6808218a939380afc9a2da98c528a195e838c11e807438a6adcdc757bcbdcf7859c54d72f60c69f96bc21008d4cd38b67ac274e193fb6b1f
|
||||
DIST nvidia-installer-575.64.tar.bz2 169449 BLAKE2B d32cfada19098ff9cdd2c32eebed422ca77048bec18555f9b6358765ceaa944ce4216c49893a2d3903f1ac31f69362d108661aa232bf006a559d5de069d3ea91 SHA512 f1086367a43ab87bcfa9b50772d9b2c21b313148fe44e9a0e99b2206dde06dda8ca13b569c7d203ea9ae58a8603cd3e3f5b5475b125a77fd998a07402cd2144c
|
||||
DIST nvidia-modprobe-390.157.tar.bz2 35306 BLAKE2B 80d202b39c2f95ec0f909712c2e101483af50124092c32efb33bd98ff58ddfb97b737ff07f1ddc941f688c1b4c26a15f392566d522e18506771f10422fcd571c SHA512 109bbe24a3758b568ea65fe1e9d78f69fae6108ec0497b796c885a3912825fe04ffd7389a3e22987f1a10a2926bf6eaa384faabc59478aa3ee244dd3ac91c6d3
|
||||
DIST nvidia-modprobe-470.256.02.tar.bz2 38769 BLAKE2B 0db444b09b0b6d24c04877fae95249e781d82b3141f90eb05d869b64d2b6e65ad00bf44c4e427c64dbd4765fa99a8699f80a1d95b00c66137a54dc878d7ea298 SHA512 c1cbfa6c8e188e5a5eb5d390b9a903406cbff103d212fc30e611e4023be3fde896ad84e8bb45b030beb5d1bcd8155c9e55a8f9636c45ce1e2a5c03f672989a31
|
||||
DIST nvidia-modprobe-535.247.01.tar.bz2 40736 BLAKE2B 31172b50777fb0bcc7696af660fd4f8ddc42bb126ff42edcee12097fe37748727c6357ef46b65a96004345fdc501487f8b5ad89eccef991eeb3c83e958f41a09 SHA512 f28340f935804e3cb07d394ad103b296a5e4fbfadeef7905266b85afd7cd145de033d603a4bd7947348add23a866548605264c814b48f4f6a5a1f4254f82cdc1
|
||||
DIST nvidia-modprobe-535.261.03.tar.bz2 40757 BLAKE2B 96ecb65511ff1ca033768f1f86e10e553bf686ff42c7f995a43c0e111ad5ddf97bd7b6fe439e5fb207f9b765e2200807703489815dba76599adaa24e4fd1bebc SHA512 755ec96dcdad34472f884383d104aa015ac5b964cded12046316f4dbd033ca723d225026866b59d0637294ebc185706204f889403db37552dd7d716467aea37e
|
||||
DIST nvidia-modprobe-550.163.01.tar.bz2 41448 BLAKE2B 23e567d612e669ec6ae9f389651c9e1cebe7ba59ee95bb5961e5071952697860df77f02026040e29135338eb7cf96bba0015b3d94548297235fb5214f35bec48 SHA512 0f5b59468a6e5e95dcdef1d938ea78f4ce09a0c9784e3c70d83f1c3b1bd52e8055b6b332147316445c3be714abab3629320d6117878d50aa7a2d7d2d9b9b6485
|
||||
DIST nvidia-modprobe-570.153.02.tar.bz2 41627 BLAKE2B 685205e27589941884243d7440390b572d03395d9758881ae69d86b8c6a3c33e3960411c3fde9d2d8efa0ef09d1476734cf06f0facea468faaf4382862c2e6c0 SHA512 3d25d3576630c9d3468102868b4f09036ffc72ba51494b2d07125643bbbd925ce5a9b6f305bd8e10aa51516754625170c184a05848ec6d84e642cfecd4429807
|
||||
DIST nvidia-modprobe-570.169.tar.bz2 41618 BLAKE2B ce6967fea67a387ab177d75cf0bec4162127e7f440ffc971115b2307d68307fdbddcded8e932022088f1815d7208d4b7b8d1895125866d443750307c1353867a SHA512 e7f4d0ad9b29f13b2fccddd27570832d7a95925d82aac0ea0af8b8dcf80ba220c82352b0394eff2184b7f6da227df2462d5579ed75c1a952727820503f37ea7e
|
||||
DIST nvidia-modprobe-575.57.08.tar.bz2 41665 BLAKE2B 6b9aba76113854f16955bcdcab23a24d4fbdd1defc44b7087d8429f62035f0e9c8c69a47c69c88aacca4e0626b123ed847712b4f4e78cfe61a2a857ca50c5721 SHA512 c201cf42e274a89a4ff9f7881bbb4f5dde281513ac9811fa4a65c3359047fb2f477a8c3357c9bd08158f7478807d2dfe078324671c79dabb9206844b65c1391a
|
||||
DIST nvidia-modprobe-570.172.08.tar.bz2 41640 BLAKE2B 7055228ef51da259fc93bd2047b2ba89a4a4cf6a34dc0a3dfe3f2738aa64acc88ff2a3be6d9fa80428d6b6e389084955b2647da9fff91eac7caa751e1ac330c2 SHA512 f3e6f51adfc9eb528cc4ab2f99153f2355ae03bd0f4f49879f165564023603e7fc32598ea768f77f7f901175e03a49e97ceda25f434e6a05aa74e372560f3cde
|
||||
DIST nvidia-modprobe-575.64.03.tar.bz2 41690 BLAKE2B dc2811d4c4febba18e0e1dd6632c5f4c3b1e289a27aa2f3b44eaa1e8ef5fc2daf37f52046ac27da1126fd4732be1ad8fa47f11ecc0850a5ff22d606b64710650 SHA512 7b2f99ae0c796e5099b775bee3e7edee898ed504d7165a916ad8a9c289859482866800cf6954f04f5058eb60479c867936fc019b9d2bf6578375534a19482129
|
||||
DIST nvidia-modprobe-575.64.tar.bz2 41705 BLAKE2B e69272e05302f6033dc56bd9a4e7d1e2abbb9e087813f2f361047b4fa82c7777d3fdfe7b9315a71c47332e82259e5fbdccbe5c9739782be3e06aa49700d775e7 SHA512 2ce516db4d3549717c8933c46258d6fdde8804a6b5cd10ab2eb2eca67dae2941adeacd66659182dd62d9e743426c0085d1e40eb90a10cd7102c206e28b137cb7
|
||||
DIST nvidia-persistenced-390.157.tar.bz2 48654 BLAKE2B 2cf6c92da90acff55e8c180a06b0c6a29d48be9fd8ca3c541202fd14f0697220fba6b66452942aa7ae7cc8821f5c5eb9fa8f7a31d2248624e5f9141d83a176b8 SHA512 70f0707ed6f2b877e69ef90cf782f66cbc9d2071db53ca09ceb7b89427b0fe176708517340621fa251539b7d481b238adeeb60261674eed74de1f62db6dbb72e
|
||||
DIST nvidia-persistenced-470.256.02.tar.bz2 46567 BLAKE2B 8f837322a3b88412fd2f6acf38721b49a6cb444fbd842d652519e5596f2e545d8f06bbdf017f46a22301ce87455f96147fab2829ca5fbf26131ec3e4a772e282 SHA512 4fd19258649b7d39945fb5c8578bf11ab118617dd14f3d11cdf15cb3fe77daf7b4719e4ae57af59031b1b809d02f4e8e8afed0ec60b9d0aed4d2488bd3013cd9
|
||||
DIST nvidia-persistenced-535.247.01.tar.bz2 48589 BLAKE2B 1b641fb85fb74e5314c0f525361cba23ac08d5f6570bcd9a6d89b376497bd0aa1cbbb52fe391a8f7bf41734e49d46d464440573b0298b5c0fd5db7fcf3100d58 SHA512 be23e7790d582a340e14c7df16f9ed09447ef8efb352d8b8e53e5be91b624953d8237c988ce0b0b0c90e1b15077af7efd6c6a0e628345f2188b6dbe09122373b
|
||||
DIST nvidia-persistenced-535.261.03.tar.bz2 48574 BLAKE2B 71e6be9fd37da2532219a025293a286d87efa31c7fb1d2827b859688f0ed433ffda848a8964980f08d61e74b888b81e694ef8622231642e46e800a346890eb9b SHA512 56d079434e18397516ecf7c398f242f5a3a48781f0ed8fcea30bf844c7bbf5b2618c5817f2df7032670a99cee4f93fe0e7798ef6bff7545e9824fb34919e38d5
|
||||
DIST nvidia-persistenced-550.163.01.tar.bz2 61450 BLAKE2B 1a11cb89981b88f8d14558227d9493f1f8a81ccb5502002c436e9311a38c9c8fe0402c65eac1517a2893985eec07699b2e7bc7a81aa14dc0d52198ac85a2cd1b SHA512 f17dbcafa917b5b450f7665f98fd24f06ad99e6bcd1fcf42ef95aa9337b55561b7b16eaad8fa408110d08ee7e6d812444792cccbb9c92865099891832da779ce
|
||||
DIST nvidia-persistenced-570.153.02.tar.bz2 61814 BLAKE2B 204e9b91d992aaea15634632d45684b982bc897d356a6dedefd70b4a0a3e51b285de52386992efebbe5392b41f0996eba69de518b4869daf0a2675908b444b91 SHA512 24ceb1e0dde5b4df0b46febc270966be40f6b40f23f25fe55c0f8798be8d03a1869f4cd0d272ef9525f3c9a10d8673e8ccd151734006fc870e9622af0b40a681
|
||||
DIST nvidia-persistenced-570.169.tar.bz2 61792 BLAKE2B 14568a42ee3473efe341bd9332081d2a1625f91662c58e75b1b218d5a3d19496071fcc5e9840fa1563aec2755c9d6810db531ed3616c825987311cf3690147f5 SHA512 c5e343be16719ba89f1a37ca8fdeb7f15a4fb028dbce554a7c524238ccb1ed1c1b0527a86a2e6dbdc01cd0b6f3a5d996a0895de4698a0ea98278cd93ef911d58
|
||||
DIST nvidia-persistenced-575.57.08.tar.bz2 61959 BLAKE2B aed09532346dfd4b34e14b37df9bfa75bf6cea89705084826521cdc3ad38919937bf206b77698d97b9f62324c998cc6d11abbf787301ddd134ea9848fc5c5fea SHA512 fc14e58e80798f0370639ac32d8e729ac5809587b42438725305a8b9b45f101a91b241de2d5196c1791b79c6ccebc612a3c3ec26d0b85d6f90d9d22996d1c3af
|
||||
DIST nvidia-persistenced-570.172.08.tar.bz2 61946 BLAKE2B e15575f73d94614912b5823b16bb64ac571ce5fe4e55bfb2d346ba9ebfdbb5c11562651518382638fe109bf7990bbcabd70d35916dfa0fd94dee317499d7487f SHA512 c43b18e01b46d99ebcd9b9760755984f96430d448f85421d2ad0ebad053aa7f6add6af2b03ebf76b5d5dea6e6958a6ee5baa30189e43ca1f2cc51e3487b41e27
|
||||
DIST nvidia-persistenced-575.64.03.tar.bz2 61943 BLAKE2B 745dc8114a0857d4ca0ebe928f4ebc82cf526c1b593717e0fa1148c3d62976e3c8b97b6a96ad9ca3abc10a7d0090fd8f8a9e135df498a4c2bb053db8faa273e2 SHA512 1872b34b4830984b5ea1b79dc328bcc2c013804fb8fbac549291750719a6493606e8d5580a857701fec12cd24e2319d1d1d6c124f2b129473bffa457f3a6ac9b
|
||||
DIST nvidia-persistenced-575.64.tar.bz2 61990 BLAKE2B aaa52db7ea3be3cc5839a34f1b91f08ff2decc53b9264aa72aa88fb32e9a1bd12f9ae9ffaff8120cd32ef5439995bfc8b4649e3cc2c6bd602889b61befdd38b8 SHA512 085e742ab6f4b50eb5e6afeb34ccd5eec9506c104f4207f4f1af8327333e0d39ee0ed850af5e0d53e17d813f5046d0c9cbde55bb9d441010ee288bbaa3ac1f81
|
||||
DIST nvidia-settings-390.157.tar.bz2 1108938 BLAKE2B d9ec1ab5d7f157d74627272adf752a671dd17e2ede02069437b6180b927fe315b15cc6416d584ab2f038b76fe01e5b64514a834f24d88ac16676e55205fdecdd SHA512 b16699009bf56a1ff3b623a528c58061c4f5a2c5c4a373756a07bcd667743a1df7c733a572d2d0baa835a904ac2fda8a5c85890dcc00c3a0f223e0467aea902d
|
||||
DIST nvidia-settings-470.256.02.tar.bz2 1062273 BLAKE2B 8e66201e7861469b12932595ef8f9fd29d4cfd570c2576ae7fbb7383f61c55ac71fe721cc431e79d6d69f86d998b5b4c3cafe531b573f439e6b499b0fc047a19 SHA512 626e66118ae2e62eacfdf44e37529c409b945a6f33637b9690d74abd87a2afb581aaca5f90328d280da99ceb659959d0e5dc5c22ef8013b2205b2b1c72e08007
|
||||
DIST nvidia-settings-535.247.01.tar.bz2 1094617 BLAKE2B 26a12ea76be9ab930553fcdd0f19db1de8e8fd41a5f180a09f418bdbec38aab6f05c019a85249de3fe523df4aba6ffd339ccce4758e739fe092ecaaf25fb5008 SHA512 9651cc907fa78139f4774764132f5a46c1feee016aae021905a463100f102e6321b79c2c4f5b1fe149cde481a5baac17017770244ad35c6d7f14e7975f23a7c9
|
||||
DIST nvidia-settings-535.261.03.tar.bz2 1094587 BLAKE2B 3be599e733be97e0a23182d9bfc2862a2ff1d386a8339a34f369ac3e7a29b951ef7c900424502b31d8a50b8a5571c440ba6fd1314874a5ca594657742ef0aca1 SHA512 418f078caed68e9d1feef10a3a772fb9a265fac5a74822e2637c0b8bdbdc43629a8ced83549ee1c237b327490783d7da59e749f3c284a17edea2bbab62462f68
|
||||
DIST nvidia-settings-550.163.01.tar.bz2 1099317 BLAKE2B 25419c1796deeea238b3e44fd8d648a8627272565be40cb0745132cef1c16e0c422242a1e6369745d577e674a68bf9dfc3c009e281a84ba58db5429d97ac9cff SHA512 5306ab05f284ba06852d7c96ff62ded7b8b615d3a002009cd5d781fdad716db37f53d1c8a43337ada60d524b4f7d183d98ad2673f40a5ca1ca4c5112bb913e74
|
||||
DIST nvidia-settings-570.153.02.tar.bz2 1123390 BLAKE2B 2ad8e171a984ce3cbfc6b98e59d8a9534cbc89610f1840e0c12428a5c7f561d4726b6770a7c56953d8cd97969579fbdce6bc934dc35c4751bc7ad1a6ab6a31dd SHA512 0a109d9ed1827673100cb32a47f132cf196bdd7bfd42a329de1e19000dcf47c72b49815bd6c273a16d1cc714132dfcef5ac1c94e24c9645bb90665f55b7c8144
|
||||
DIST nvidia-settings-570.169.tar.bz2 1123877 BLAKE2B df4309c9230352b88467537e9de9372e3e422a1b346c01ca807191aa322638ead912ffd80eeef8e404231f9d28ec9e45fddb1fe1a94777f6ca122e378c0c5b7b SHA512 34c25843c55e80efc987f344b3226e2715ccbf60e9d9f75f665c1a4199d69bef005f5c27d04f5d1cdf4fee38e4d44857d32f2dd97f84764e054d0050881a6377
|
||||
DIST nvidia-settings-575.57.08.tar.bz2 1127882 BLAKE2B 5fd286849e13b30510a14b64248d7e3073198a6a1b4d4048528dcd82ca459811ff77faf2195a54a6bf1f2ee249a8bef4adcf82fecc111871bb7253bfd449cb1a SHA512 73b82a74efd4d22e6ff8876e8b975ab8cb6d8735b2e484154ceba411accc36c9cfd49cd1c70715077d322e2bc38e47264e149bab772a5e948bfbf8689edac44b
|
||||
DIST nvidia-settings-570.172.08.tar.bz2 1124326 BLAKE2B 7f47c998b914d15af1612134ffd09ba2c01b649b23813c4170c3b3d529ace5e04322f201b5a80277439cb4ed20a84803eb225539d9c06b7cbe035ed886d3ab64 SHA512 2697ccce69c005550dda5c01a5da975d0dcfe67a32b7872b7c215392397a471152dfdd858920842388800c2f34f4d284735bf9ba34fcae1fd0ca426f10568f77
|
||||
DIST nvidia-settings-575.64.03.tar.bz2 1127787 BLAKE2B fc1d1748054261a6a9a86bfdad07955ddea9de1cabdf4a56fa714c2782a018215fd3a12690aaec16a50a7fabc5c3e24d2cb7f18eed2c41f7c9308fbb2cfd0ccf SHA512 fddfe256939f279e86f5ab8cbcee599b052d712be94b724003199c11a8d702742e03a0d9e473a6ae7671e8f56f10e2e86e7f216022dc45558412ae4d045aaeb0
|
||||
DIST nvidia-settings-575.64.tar.bz2 1127867 BLAKE2B 27d5e8a4ec8371bf91e050100ce49b00ca3b6c294118bab0af171b153c22a0470b18a933368b22424e1a132465370948e763fd44cc83ed87bd5eafdc20a451ef SHA512 054866076d8499cc880cc5e4e3106f0b017f1621e6dc9fa0df341689436a5fc3d56eefeee0d1e9ae11b257e4cfe001b1ccd1054048a8e93289036a679e59eb42
|
||||
DIST nvidia-xconfig-390.157.tar.bz2 107399 BLAKE2B 0cbb3b1ba508ddc3ba4a161c290b31bf7a67f67880bdbd01171a962c5fa97ca945b1ef17932403f8589309380743f1da632c728d8accb6d4e56dbd895e7486bb SHA512 50b390811c9bf091b14add41f886925b17496b41006b7d3981d2398caa65cf5db8a579c8cebed78278384bf3acc629befb07b54339c61abcc75852c0dcb8b8ca
|
||||
DIST nvidia-xconfig-470.256.02.tar.bz2 108698 BLAKE2B e468574e4bc57e7279d4120e2b08a201671b50d408be0c530eabe5da7d45daaf21cbf5c7fa31410d0d732fe8ea1551cbfb21d1ae193c1b3f5b5c50c764c9e236 SHA512 9dcec1e0c2b56b4d38a5f2c76086302f8bc0860cc15012cce29c3a5062f801a48b6a2bb78344361b07a2717b58502783441a2daf402d9973a17526175b1f15ca
|
||||
DIST nvidia-xconfig-535.247.01.tar.bz2 110621 BLAKE2B 3d567d30e19dfc449e23c80e6fe25536f02e2450bb82c4cdc2b508493cad6d6b4f58467d302fd64a8b37e8a129be4c04b365ec3e4e9f18966d25cd23c6adc91c SHA512 2748aa9997e84e0f39b52bc6f49e2b53ffa7181aaf0ce5b9d06d8e6e010ecd589ee77388807d922c3be4a847b8a4e9e1eeba42c905a32ebb5d3f9b93d6f30511
|
||||
DIST nvidia-xconfig-535.261.03.tar.bz2 110637 BLAKE2B aafefde5e5079401951432072f27f6500bf3a4390e01b83e46b7230c75b05cd5806fffbde98f8bd8a39afe1a27bec0f52e13920fa1fd156d083b6ef81e482edb SHA512 4c0ee56495dedb08d6ea0e452cadf02ebcfffb86e8649c9b7904285d5dd8959879a1e00396d1560253c755c9490643458e737afcc0613c0c36dcd37411c76607
|
||||
DIST nvidia-xconfig-550.163.01.tar.bz2 111149 BLAKE2B d19ef0427e3432798e674dc66447090e8fb8fcb549ebe27aaee19aa38294cf178e175a067b2da5313342c93ea2aebef35861d05cc4cc0ee2c3eae955b3ddbbb3 SHA512 35f95d85928c82bc5de8e462ca5e90a6d8fe03e5b5367b9cdaadddc1e956f0d26b6dc42e716ae7c88512afdfb98cc841fe9b22846f6d6acc578c5dba4d0a16e1
|
||||
DIST nvidia-xconfig-570.153.02.tar.bz2 111136 BLAKE2B 6f7e8f46182d945ddf457595b5829742fa826a19ef279b87d8f8d35ffa5c2377a96be4f76f9ca5a4e271b1678b4a9b00fe6dbcb475cb15efba5a7b902230d9bd SHA512 066ab2a230c56cced0faa2e3bf8c4b135795fc457cabd3b716709db94b82d5515580e6b2768955a877ae224b6b56e0d97c0315a122087a6da77442754935bad8
|
||||
DIST nvidia-xconfig-570.169.tar.bz2 111343 BLAKE2B ff9c00145277241a5acb290fddfa01a906ba26601c45f12d06ea8754be9d29c836f68640db411de6e904d608523bd9d10b644bf1976ef201c58d55db2fc16a47 SHA512 5db772f2cecb3436a42b0f5cad550afae3453d3b17897f457e8f6b48a9c2a71997a317b121837f68e7f23d9a3e141464485144ce362f33adf3d70b326205bbb8
|
||||
DIST nvidia-xconfig-575.57.08.tar.bz2 111794 BLAKE2B 52f3080a29fdffe167439c911187432f880dfefd7005f5eea378bc3eae887f6a181accc2705c81dc5929472b3eeb29e2703190289c4a539ba4122cd4f7e4d7ec SHA512 6bdb5a3778f6d18a8588a7d8b4b226860cfb2770ed1f52c512a05a98b367d1d52d727132473475a1dce27a0fde0b82519938b5cfb1db7f6668de7f9121928321
|
||||
DIST nvidia-xconfig-570.172.08.tar.bz2 111153 BLAKE2B ac099f751dbd81c062667eb6fdd9b4007e38ee109fe1da125463e599f6c1e46eb45029a9499f0007c058601e620184affb5ede9f288532cb8d2d8fe52d90349d SHA512 4b2aa9f425380108cd534b68fc2b77ff43498fd18003f644a33f789aa4b9e898f4a02c7a0938e6862bebbb8bc0c1e450345f038a3e77ccbbc5c93814571fdcfa
|
||||
DIST nvidia-xconfig-575.64.03.tar.bz2 111258 BLAKE2B 9375391caf27760915417bb9beab02061def4b58a1e4bbd72ca95877931f9431258838f3db56000ddfa7684b3d3ac6d935d3aab790526d670d5ff0ddce7c0461 SHA512 9cc6a87f3ae9cc5dc3a07750c1f4d50b339a4eacee1ab320b47a339d191e0a150536563adaff265f5611a927fc4efc1f5009f22597489cf8521812c55ffc334f
|
||||
DIST nvidia-xconfig-575.64.tar.bz2 111310 BLAKE2B 72af0b794a3d2f226898419d39fec494a8ecb99ffb5c96a412fb25285db2ea2b556929b261969a820fbeee4c28cdc7bfba41796f261422091ecc87db82c59349 SHA512 359ff35920f97b963352f7ff7273fed1a1d232ef094bd00e8d2d3a88b10339cfeb3f0bab94f448c74fc39c17f3ac3bdedb1de5fcbc8d9affe94cfc2973a807aa
|
||||
DIST open-gpu-kernel-modules-570.123.18.tar.gz 18685315 BLAKE2B 26886a8d92642d498f30d5a7b9e715c9ca203fecd1389ebe66982395054ee684ea05b69a84d679722d6fc9207c31a20edf29b7fdebe6bfd508ffb88cf6c9962a SHA512 5a4c01153d4033ebc5b3b5f67b00ca8331bd13ed67b850af9ffe65380593f575764d07a56b5278e1af09c74610d36fd76e738a229713afa0e0102f54ceefcdfc
|
||||
DIST open-gpu-kernel-modules-570.123.19.tar.gz 18685718 BLAKE2B 67503cefeb07be00ef16eb2d3ffb1287dc1f460f1ad908526046795cdaf2662fef01affcd23a957e97610560d8380d42c0a24d916a4cfd09d77d5b7f1ebfe7da SHA512 88bb3db9f8d38b03a92f60a56ff31b1c27695151fd6cd892d562fc9e31adc8303d54e35bfca59d368ca8d0fdb847674d3b4a240aabed476d6e89c8dcdbbf2d2c
|
||||
|
@ -1,71 +0,0 @@
|
||||
Only needed with USE=-kernel-open to avoid GPL-only __vma_start_write,
|
||||
not really runtime-tested but at least code does nothing for stable users
|
||||
with <6.15..
|
||||
|
||||
https://github.com/NVIDIA/open-gpu-kernel-modules/issues/840#issuecomment-2906864735
|
||||
https://github.com/CachyOS/kernel-patches/commit/914aea4298e3
|
||||
--- a/kernel/nvidia/nv-mmap.c
|
||||
+++ b/kernel/nvidia/nv-mmap.c
|
||||
@@ -24,8 +24,15 @@
|
||||
#define __NO_VERSION__
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
#include "os-interface.h"
|
||||
#include "nv-linux.h"
|
||||
#include "nv_speculation_barrier.h"
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
+#define nv_vm_flags_set(v, f) vm_flags_reset((v), (v)->vm_flags | (f))
|
||||
+#define nv_vm_flags_clear(v, f) vm_flags_reset((v), (v)->vm_flags & ~(f))
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* The 'struct vm_operations' open() callback is called by the Linux
|
||||
--- a/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c
|
||||
+++ b/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c
|
||||
@@ -45,4 +45,11 @@
|
||||
#endif
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
+#define nv_vm_flags_set(v, f) vm_flags_reset((v), (v)->vm_flags | (f))
|
||||
+#define nv_vm_flags_clear(v, f) vm_flags_reset((v), (v)->vm_flags & ~(f))
|
||||
+#endif
|
||||
+
|
||||
static inline
|
||||
void __nv_drm_gem_user_memory_free(struct nv_drm_gem_object *nv_gem)
|
||||
--- a/kernel/nvidia-drm/nvidia-drm-gem.c
|
||||
+++ b/kernel/nvidia-drm/nvidia-drm-gem.c
|
||||
@@ -52,4 +52,11 @@
|
||||
#include "nv-mm.h"
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
+#define nv_vm_flags_set(v, f) vm_flags_reset((v), (v)->vm_flags | (f))
|
||||
+#define nv_vm_flags_clear(v, f) vm_flags_reset((v), (v)->vm_flags & ~(f))
|
||||
+#endif
|
||||
+
|
||||
void nv_drm_gem_free(struct drm_gem_object *gem)
|
||||
{
|
||||
--- a/kernel/nvidia-uvm/uvm.c
|
||||
+++ b/kernel/nvidia-uvm/uvm.c
|
||||
@@ -22,4 +22,6 @@
|
||||
*******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
#include "uvm_api.h"
|
||||
#include "uvm_global.h"
|
||||
@@ -41,4 +43,9 @@
|
||||
#define NVIDIA_UVM_DEVICE_NAME "nvidia-uvm"
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
+#define nv_vm_flags_set(v, f) vm_flags_reset((v), (v)->vm_flags | (f))
|
||||
+#define nv_vm_flags_clear(v, f) vm_flags_reset((v), (v)->vm_flags & ~(f))
|
||||
+#endif
|
||||
+
|
||||
static dev_t g_uvm_base_dev;
|
||||
static struct cdev g_uvm_cdev;
|
@ -4,7 +4,7 @@
|
||||
EAPI=8
|
||||
|
||||
MODULES_OPTIONAL_IUSE=+modules
|
||||
inherit desktop dot-a eapi9-pipestatus flag-o-matic linux-mod-r1
|
||||
inherit desktop dot-a eapi9-pipestatus flag-o-matic linux-mod-r1 multilib
|
||||
inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info
|
||||
|
||||
MODULES_KERNEL_MAX=6.15
|
||||
@ -24,10 +24,7 @@ S=${WORKDIR}
|
||||
|
||||
LICENSE="NVIDIA-2023 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl"
|
||||
SLOT="0/${PV%%.*}"
|
||||
KEYWORDS="-* amd64 ~arm64"
|
||||
# TODO: enable kernel-open by default to match nvidia upstream, but should
|
||||
# first setup a supported-gpus.json "kernelopen" check to abort and avoid bad
|
||||
# surprises (should abort for legacy cards too, and have a bypass variable)
|
||||
KEYWORDS="-* ~amd64 ~arm64"
|
||||
IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland"
|
||||
REQUIRED_USE="kernel-open? ( modules )"
|
||||
|
||||
@ -63,9 +60,9 @@ RDEPEND="
|
||||
)
|
||||
powerd? ( sys-apps/dbus[abi_x86_32(-)?] )
|
||||
wayland? (
|
||||
>=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?]
|
||||
>=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?]
|
||||
X? ( gui-libs/egl-x11[abi_x86_32(-)?] )
|
||||
gui-libs/egl-gbm
|
||||
>=gui-libs/egl-wayland-1.1.10
|
||||
media-libs/libglvnd
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
@ -76,7 +73,6 @@ DEPEND="
|
||||
x11-libs/libXext
|
||||
)
|
||||
tools? (
|
||||
dev-util/vulkan-headers
|
||||
media-libs/libglvnd
|
||||
sys-apps/dbus
|
||||
x11-base/xorg-proto
|
||||
@ -94,22 +90,18 @@ BDEPEND="
|
||||
QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/nvidia-kernel-module-source-515.86.01-raw-ldflags.patch
|
||||
"${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch
|
||||
"${FILESDIR}"/nvidia-settings-390.144-raw-ldflags.patch
|
||||
"${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch
|
||||
"${FILESDIR}"/nvidia-drivers-570.153.02-kernel-6.15.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use modules && [[ ${MERGE_TYPE} != binary ]] || return
|
||||
|
||||
# do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK
|
||||
get_version
|
||||
require_configured_kernel
|
||||
|
||||
local CONFIG_CHECK="
|
||||
PROC_FS
|
||||
~DRM_KMS_HELPER
|
||||
~DRM_FBDEV_EMULATION
|
||||
~SYSVIPC
|
||||
~!LOCKDEP
|
||||
~!PREEMPT_RT
|
||||
@ -118,29 +110,25 @@ pkg_setup() {
|
||||
$(usev powerd '~CPU_FREQ')
|
||||
"
|
||||
|
||||
kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION &&
|
||||
CONFIG_CHECK+=" DRM_TTM_HELPER"
|
||||
local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection
|
||||
of drivers (no custom config), and for wayland / nvidia-drm.modeset=1.
|
||||
Cannot be directly selected in the kernel's menuconfig, and may need
|
||||
selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or
|
||||
DRM_I915=y, DRM_NOUVEAU=m also acceptable if a module and not built-in."
|
||||
|
||||
local ERROR_X86_KERNEL_IBT="CONFIG_X86_KERNEL_IBT: is set and, if the CPU supports the feature,
|
||||
this *could* lead to modules load failure with ENDBR errors, or to
|
||||
broken CUDA/NVENC. Please ignore if not having issues, but otherwise
|
||||
try to unset or pass ibt=off to the kernel's command line." #911142
|
||||
use kernel-open || CONFIG_CHECK+=" ~!X86_KERNEL_IBT"
|
||||
|
||||
use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764
|
||||
|
||||
use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827
|
||||
|
||||
local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need
|
||||
selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or
|
||||
DRM_AMDGPU=m (among others, consult the kernel config's help), can
|
||||
also use DRM_NOUVEAU=m as long as built as module *not* built-in."
|
||||
local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection
|
||||
of drivers (no custom config), and for wayland / nvidia-drm.modeset=1.
|
||||
${drm_helper_msg}"
|
||||
local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using
|
||||
kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set.
|
||||
${drm_helper_msg}"
|
||||
local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for
|
||||
nvidia-drm.fbdev=1 support, currently off-by-default and it could
|
||||
be ignored, but note that is due to change in the future."
|
||||
local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open.
|
||||
Cannot be directly selected in the kernel's menuconfig, and may need
|
||||
selection of another option that requires it such as CONFIG_KVM."
|
||||
|
||||
local ERROR_PREEMPT_RT="CONFIG_PREEMPT_RT: is set but is unsupported by NVIDIA upstream and
|
||||
will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is
|
||||
set. Please do not report issues if run into e.g. kernel panics while
|
||||
@ -171,16 +159,24 @@ src_prepare() {
|
||||
use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die
|
||||
|
||||
# enable nvidia-drm.modeset=1 by default with USE=wayland
|
||||
cp "${FILESDIR}"/nvidia-570.conf "${T}"/nvidia.conf || die
|
||||
cp "${FILESDIR}"/nvidia-470.conf "${T}"/nvidia.conf || die
|
||||
use !wayland || sed -i '/^#.*modeset=1$/s/^#//' "${T}"/nvidia.conf || die
|
||||
|
||||
# makefile attempts to install wayland library even if not built
|
||||
use wayland || sed -i 's/ WAYLAND_LIB_install$//' \
|
||||
nvidia-settings/src/Makefile || die
|
||||
|
||||
# temporary option, nvidia will remove in the future
|
||||
use !kernel-open ||
|
||||
sed -i '/blacklist/a\
|
||||
\
|
||||
# Enable using kernel-open with workstation GPUs (experimental)\
|
||||
options nvidia NVreg_OpenRmEnableUnsupportedGpus=1' "${T}"/nvidia.conf || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR CC CXX LD OBJCOPY OBJDUMP PKG_CONFIG
|
||||
local -x RAW_LDFLAGS="$(get_abi_LDFLAGS) $(raw-ldflags)" # raw-ldflags.patch
|
||||
|
||||
# extra flags for the libXNVCtrl.a static library
|
||||
local xnvflags=-fPIC #840389
|
||||
@ -200,6 +196,11 @@ src_compile() {
|
||||
if use modules; then
|
||||
local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS}
|
||||
|
||||
# conftest.sh is broken with c23 due to func() changing meaning,
|
||||
# and then fails later due to ealier misdetections
|
||||
# TODO: try without now and then + drop modargs' CC= (bug #944092)
|
||||
KERNEL_CC+=" -std=gnu17"
|
||||
|
||||
local modlistargs=video:kernel
|
||||
if use kernel-open; then
|
||||
modlistargs+=-module-source:kernel-module-source/kernel-open
|
||||
@ -209,12 +210,11 @@ src_compile() {
|
||||
filter-flags -fno-plt #912949
|
||||
filter-lto
|
||||
CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags
|
||||
|
||||
LDFLAGS=$(raw-ldflags)
|
||||
fi
|
||||
|
||||
local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} )
|
||||
local modargs=(
|
||||
CC="${KERNEL_CC}" # needed for above gnu17 workaround
|
||||
IGNORE_CC_MISMATCH=yes NV_VERBOSE=1
|
||||
SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}"
|
||||
|
||||
@ -259,7 +259,6 @@ src_install() {
|
||||
[GBM_BACKEND_LIB_SYMLINK]=/usr/${libdir}/gbm
|
||||
[GLVND_EGL_ICD_JSON]=/usr/share/glvnd/egl_vendor.d
|
||||
[OPENGL_DATA]=/usr/share/nvidia
|
||||
[VULKANSC_ICD_JSON]=/usr/share/vulkansc
|
||||
[VULKAN_ICD_JSON]=/usr/share/vulkan
|
||||
[WINE_LIB]=/usr/${libdir}/nvidia/wine
|
||||
[XORG_OUTPUTCLASS_CONFIG]=/usr/share/X11/xorg.conf.d
|
||||
@ -271,12 +270,11 @@ src_install() {
|
||||
|
||||
local skip_files=(
|
||||
$(usev !X "libGLX_nvidia libglxserver_nvidia")
|
||||
$(usev !wayland libnvidia-vulkan-producer)
|
||||
libGLX_indirect # non-glvnd unused fallback
|
||||
libnvidia-{gtk,wayland-client} nvidia-{settings,xconfig} # from source
|
||||
libnvidia-egl-gbm 15_nvidia_gbm # gui-libs/egl-gbm
|
||||
libnvidia-egl-wayland 10_nvidia_wayland # gui-libs/egl-wayland
|
||||
libnvidia-egl-xcb 20_nvidia_xcb.json # gui-libs/egl-x11
|
||||
libnvidia-egl-xlib 20_nvidia_xlib.json # gui-libs/egl-x11
|
||||
libnvidia-pkcs11.so # using the openssl3 version instead
|
||||
)
|
||||
local skip_modules=(
|
||||
@ -322,12 +320,6 @@ $(use amd64 && usev !abi_x86_32 "
|
||||
Note that without USE=abi_x86_32 on ${PN}, 32bit applications
|
||||
(typically using wine / steam) will not be able to use GPU acceleration.")
|
||||
|
||||
Be warned that USE=kernel-open may need to be either enabled or
|
||||
disabled for certain cards to function:
|
||||
- GTX 50xx (blackwell) and higher require it to be enabled
|
||||
- GTX 1650 and higher (pre-blackwell) should work either way
|
||||
- Older cards require it to be disabled
|
||||
|
||||
For additional information or for troubleshooting issues, please see
|
||||
https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers and NVIDIA's own
|
||||
documentation that is installed alongside this README."
|
||||
@ -416,9 +408,8 @@ documentation that is installed alongside this README."
|
||||
dosym ${m[4]} ${into}/${m[0]}
|
||||
continue
|
||||
fi
|
||||
# avoid portage warning due to missing soname links in manifest
|
||||
[[ ${m[0]} =~ ^libnvidia-ngx.so ]] &&
|
||||
dosym ${m[0]} ${into}/${m[0]%.so*}.so.1
|
||||
[[ ${m[0]} =~ ^libnvidia-ngx.so|^libnvidia-egl-gbm.so ]] &&
|
||||
dosym ${m[0]} ${into}/${m[0]%.so*}.so.1 # soname not in .manifest
|
||||
|
||||
printf -v m[1] %o $((m[1] | 0200)) # 444->644
|
||||
insopts -m${m[1]}
|
||||
@ -432,13 +423,10 @@ documentation that is installed alongside this README."
|
||||
exeinto "${_#"${EPREFIX}"}"
|
||||
doexe systemd/system-sleep/nvidia
|
||||
dobin systemd/nvidia-sleep.sh
|
||||
systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend,suspend-then-hibernate}.service
|
||||
systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend}.service
|
||||
|
||||
dobin nvidia-bug-report.sh
|
||||
|
||||
insinto /usr/share/nvidia/files.d
|
||||
doins sandboxutils-filelist.json
|
||||
|
||||
# MODULE:powerd extras
|
||||
if use powerd; then
|
||||
newinitd "${FILESDIR}"/nvidia-powerd.initd nvidia-powerd #923117
|
||||
@ -457,8 +445,6 @@ documentation that is installed alongside this README."
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-resume.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-suspend.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-resume.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-suspend-then-hibernate.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-resume.service
|
||||
# also add a custom elogind hook to do the equivalent of the above
|
||||
exeinto /usr/lib/elogind/system-sleep
|
||||
newexe "${FILESDIR}"/system-sleep.elogind nvidia
|
||||
@ -489,12 +475,12 @@ documentation that is installed alongside this README."
|
||||
# don't attempt to strip firmware files (silences errors)
|
||||
dostrip -x ${paths[FIRMWARE]}
|
||||
|
||||
# sandbox issues with /dev/nvidiactl and others (bug #904292,#921578)
|
||||
# sandbox issues with /dev/nvidiactl (and /dev/char wrt bug #904292)
|
||||
# are widespread and sometime affect revdeps of packages built with
|
||||
# USE=opencl/cuda making it hard to manage in ebuilds (minimal set,
|
||||
# ebuilds should handle manually if need others or addwrite)
|
||||
insinto /etc/sandbox.d
|
||||
newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-caps:/dev/char"'
|
||||
newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/char"'
|
||||
|
||||
# dracut does not use /etc/modprobe.d if hostonly=no, but want to make sure
|
||||
# our settings are used for bug 932781#c8 and nouveau blacklist if either
|
||||
@ -506,7 +492,6 @@ documentation that is installed alongside this README."
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN=
|
||||
has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND=
|
||||
|
||||
use modules || return
|
||||
@ -571,17 +556,20 @@ pkg_postinst() {
|
||||
ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau"
|
||||
fi
|
||||
|
||||
if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then
|
||||
if use kernel-open; then
|
||||
ewarn
|
||||
ewarn "Open source variant of ${PN} was selected, note that it requires"
|
||||
ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues."
|
||||
ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html"
|
||||
ewarn "Open source variant of ${PN} was selected, be warned it is experimental"
|
||||
ewarn "and only for modern GPUs (e.g. GTX 1650+). Try to disable if run into issues."
|
||||
ewarn "Please also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html"
|
||||
fi
|
||||
|
||||
if use wayland && use modules && [[ ! -v NV_HAD_WAYLAND ]]; then
|
||||
elog
|
||||
elog "Note that with USE=wayland, nvidia-drm.modeset=1 will be enabled"
|
||||
elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. *If* experience issues,"
|
||||
elog "either disable wayland or edit nvidia.conf."
|
||||
elog "With USE=wayland, this version of ${PN} sets nvidia-drm.modeset=1"
|
||||
elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. This feature is considered"
|
||||
elog "experimental but is required for wayland."
|
||||
elog
|
||||
elog "If you experience issues, either disable wayland or edit nvidia.conf."
|
||||
elog "Of note, may possibly cause issues with SLI and Reverse PRIME."
|
||||
fi
|
||||
}
|
@ -8,7 +8,7 @@ inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1
|
||||
inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info
|
||||
|
||||
MODULES_KERNEL_MAX=6.14
|
||||
NV_PIN=570.153.02
|
||||
NV_PIN=570.169
|
||||
|
||||
DESCRIPTION="NVIDIA Accelerated Graphics Driver"
|
||||
HOMEPAGE="https://developer.nvidia.com/vulkan-driver"
|
@ -22,10 +22,7 @@ SRC_URI="
|
||||
# nvidia-installer is unused but here for GPL-2's "distribute sources"
|
||||
S=${WORKDIR}
|
||||
|
||||
LICENSE="
|
||||
NVIDIA-2025 Apache-2.0 Boost-1.0 BSD BSD-2 GPL-2 MIT ZLIB
|
||||
curl openssl public-domain
|
||||
"
|
||||
LICENSE="NVIDIA-2025 Apache-2.0 BSD BSD-2 GPL-2 MIT ZLIB curl openssl"
|
||||
SLOT="0/${PV%%.*}"
|
||||
KEYWORDS="-* ~amd64 ~arm64"
|
||||
# TODO: enable kernel-open by default to match nvidia upstream, but should
|
||||
@ -89,7 +86,6 @@ DEPEND="
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
app-alternatives/awk
|
||||
sys-devel/m4
|
||||
virtual/pkgconfig
|
||||
"
|
||||
@ -285,7 +281,7 @@ src_install() {
|
||||
local skip_modules=(
|
||||
$(usev !X "nvfbc vdpau xdriver")
|
||||
$(usev !modules gsp)
|
||||
$(usev !powerd nvtopps)
|
||||
$(usev !powerd powerd)
|
||||
installer nvpd # handled separately / built from source
|
||||
)
|
||||
local skip_types=(
|
@ -1,605 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MODULES_OPTIONAL_IUSE=+modules
|
||||
inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1
|
||||
inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info
|
||||
|
||||
MODULES_KERNEL_MAX=6.15
|
||||
NV_URI="https://download.nvidia.com/XFree86/"
|
||||
|
||||
DESCRIPTION="NVIDIA Accelerated Graphics Driver"
|
||||
HOMEPAGE="https://www.nvidia.com/"
|
||||
SRC_URI="
|
||||
amd64? ( ${NV_URI}Linux-x86_64/${PV}/NVIDIA-Linux-x86_64-${PV}.run )
|
||||
arm64? ( ${NV_URI}Linux-aarch64/${PV}/NVIDIA-Linux-aarch64-${PV}.run )
|
||||
$(printf "${NV_URI}%s/%s-${PV}.tar.bz2 " \
|
||||
nvidia-{installer,modprobe,persistenced,settings,xconfig}{,})
|
||||
${NV_URI}NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-${PV}.tar.xz
|
||||
"
|
||||
# nvidia-installer is unused but here for GPL-2's "distribute sources"
|
||||
S=${WORKDIR}
|
||||
|
||||
LICENSE="
|
||||
NVIDIA-2023 Apache-2.0 Boost-1.0 BSD BSD-2 GPL-2 MIT ZLIB
|
||||
curl openssl public-domain
|
||||
"
|
||||
SLOT="0/${PV%%.*}"
|
||||
KEYWORDS="-* ~amd64 ~arm64"
|
||||
# TODO: enable kernel-open by default to match nvidia upstream, but should
|
||||
# first setup a supported-gpus.json "kernelopen" check to abort and avoid bad
|
||||
# surprises (should abort for legacy cards too, and have a bypass variable)
|
||||
IUSE="+X abi_x86_32 abi_x86_64 kernel-open persistenced powerd +static-libs +tools wayland"
|
||||
REQUIRED_USE="kernel-open? ( modules )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
acct-group/video
|
||||
X? ( x11-libs/libpciaccess )
|
||||
persistenced? (
|
||||
acct-user/nvpd
|
||||
net-libs/libtirpc:=
|
||||
)
|
||||
tools? (
|
||||
>=app-accessibility/at-spi2-core-2.46:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/jansson:=
|
||||
media-libs/harfbuzz:=
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3[X]
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXxf86vm
|
||||
x11-libs/pango
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
dev-libs/openssl:0/3
|
||||
sys-libs/glibc
|
||||
X? (
|
||||
media-libs/libglvnd[X,abi_x86_32(-)?]
|
||||
x11-libs/libX11[abi_x86_32(-)?]
|
||||
x11-libs/libXext[abi_x86_32(-)?]
|
||||
)
|
||||
powerd? ( sys-apps/dbus[abi_x86_32(-)?] )
|
||||
wayland? (
|
||||
>=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?]
|
||||
>=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?]
|
||||
X? ( gui-libs/egl-x11[abi_x86_32(-)?] )
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
static-libs? (
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
)
|
||||
tools? (
|
||||
dev-util/vulkan-headers
|
||||
media-libs/libglvnd
|
||||
sys-apps/dbus
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXv
|
||||
x11-libs/libvdpau
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
app-alternatives/awk
|
||||
sys-devel/m4
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
# there is some non-prebuilt exceptions but rather not maintain a list
|
||||
QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch
|
||||
"${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch
|
||||
"${FILESDIR}"/nvidia-drivers-570.153.02-kernel-6.15.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use modules && [[ ${MERGE_TYPE} != binary ]] || return
|
||||
|
||||
# do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK
|
||||
get_version
|
||||
require_configured_kernel
|
||||
|
||||
local CONFIG_CHECK="
|
||||
PROC_FS
|
||||
~DRM_KMS_HELPER
|
||||
~DRM_FBDEV_EMULATION
|
||||
~SYSVIPC
|
||||
~!LOCKDEP
|
||||
~!PREEMPT_RT
|
||||
~!SLUB_DEBUG_ON
|
||||
!DEBUG_MUTEXES
|
||||
$(usev powerd '~CPU_FREQ')
|
||||
"
|
||||
|
||||
kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION &&
|
||||
CONFIG_CHECK+=" DRM_TTM_HELPER"
|
||||
|
||||
use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764
|
||||
|
||||
use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827
|
||||
|
||||
local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need
|
||||
selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or
|
||||
DRM_AMDGPU=m (among others, consult the kernel config's help), can
|
||||
also use DRM_NOUVEAU=m as long as built as module *not* built-in."
|
||||
local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection
|
||||
of drivers (no custom config), and for wayland / nvidia-drm.modeset=1.
|
||||
${drm_helper_msg}"
|
||||
local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using
|
||||
kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set.
|
||||
${drm_helper_msg}"
|
||||
local ERROR_DRM_FBDEV_EMULATION="CONFIG_DRM_FBDEV_EMULATION: is not set but is needed for
|
||||
nvidia-drm.fbdev=1 support, currently off-by-default and it could
|
||||
be ignored, but note that is due to change in the future."
|
||||
local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open.
|
||||
Cannot be directly selected in the kernel's menuconfig, and may need
|
||||
selection of another option that requires it such as CONFIG_KVM."
|
||||
local ERROR_PREEMPT_RT="CONFIG_PREEMPT_RT: is set but is unsupported by NVIDIA upstream and
|
||||
will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is
|
||||
set. Please do not report issues if run into e.g. kernel panics while
|
||||
ignoring this."
|
||||
|
||||
linux-mod-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# make patches usable across versions
|
||||
rm nvidia-modprobe && mv nvidia-modprobe{-${PV},} || die
|
||||
rm nvidia-persistenced && mv nvidia-persistenced{-${PV},} || die
|
||||
rm nvidia-settings && mv nvidia-settings{-${PV},} || die
|
||||
rm nvidia-xconfig && mv nvidia-xconfig{-${PV},} || die
|
||||
mv NVIDIA-kernel-module-source-${PV} kernel-module-source || die
|
||||
|
||||
default
|
||||
|
||||
# prevent detection of incomplete kernel DRM support (bug #603818)
|
||||
sed 's/defined(CONFIG_DRM/defined(CONFIG_DRM_KMS_HELPER/g' \
|
||||
-i kernel{,-module-source/kernel-open}/conftest.sh || die
|
||||
|
||||
sed 's/__USER__/nvpd/' \
|
||||
nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \
|
||||
> "${T}"/nvidia-persistenced.service || die
|
||||
|
||||
# use alternative vulkan icd option if USE=-X (bug #909181)
|
||||
use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die
|
||||
|
||||
# enable nvidia-drm.modeset=1 by default with USE=wayland
|
||||
cp "${FILESDIR}"/nvidia-570.conf "${T}"/nvidia.conf || die
|
||||
use !wayland || sed -i '/^#.*modeset=1$/s/^#//' "${T}"/nvidia.conf || die
|
||||
|
||||
# makefile attempts to install wayland library even if not built
|
||||
use wayland || sed -i 's/ WAYLAND_LIB_install$//' \
|
||||
nvidia-settings/src/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR CC CXX LD OBJCOPY OBJDUMP PKG_CONFIG
|
||||
|
||||
# extra flags for the libXNVCtrl.a static library
|
||||
local xnvflags=-fPIC #840389
|
||||
tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)"
|
||||
|
||||
NV_ARGS=(
|
||||
PREFIX="${EPREFIX}"/usr
|
||||
HOST_CC="$(tc-getBUILD_CC)"
|
||||
HOST_LD="$(tc-getBUILD_LD)"
|
||||
BUILD_GTK2LIB=
|
||||
NV_USE_BUNDLED_LIBJANSSON=0
|
||||
NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out
|
||||
WAYLAND_AVAILABLE=$(usex wayland 1 0)
|
||||
XNVCTRL_CFLAGS="${xnvflags}"
|
||||
)
|
||||
|
||||
if use modules; then
|
||||
local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS}
|
||||
|
||||
local modlistargs=video:kernel
|
||||
if use kernel-open; then
|
||||
modlistargs+=-module-source:kernel-module-source/kernel-open
|
||||
|
||||
# environment flags are normally unused for modules, but nvidia
|
||||
# uses it for building the "blob" and it is a bit fragile
|
||||
filter-flags -fno-plt #912949
|
||||
filter-lto
|
||||
CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags
|
||||
|
||||
LDFLAGS=$(raw-ldflags)
|
||||
fi
|
||||
|
||||
local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} )
|
||||
local modargs=(
|
||||
IGNORE_CC_MISMATCH=yes NV_VERBOSE=1
|
||||
SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}"
|
||||
|
||||
# kernel takes "x86" and "x86_64" as meaning the same, but nvidia
|
||||
# makes the distinction (since 550.135) and is not happy with "x86"
|
||||
# TODO?: it should be ok/better for tc-arch-kernel to do x86_64
|
||||
$(usev amd64 ARCH=x86_64)
|
||||
)
|
||||
|
||||
# temporary workaround for bug #914468
|
||||
addpredict "${KV_OUT_DIR}"
|
||||
|
||||
linux-mod-r1_src_compile
|
||||
CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags}
|
||||
fi
|
||||
|
||||
emake "${NV_ARGS[@]}" -C nvidia-modprobe
|
||||
use persistenced && emake "${NV_ARGS[@]}" -C nvidia-persistenced
|
||||
use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig
|
||||
|
||||
if use tools; then
|
||||
# avoid noisy *very* noisy logs with deprecation warnings
|
||||
CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \
|
||||
emake "${NV_ARGS[@]}" -C nvidia-settings
|
||||
elif use static-libs; then
|
||||
# pretend GTK+3 is available, not actually used (bug #880879)
|
||||
emake "${NV_ARGS[@]}" BUILD_GTK3LIB=1 \
|
||||
-C nvidia-settings/src out/libXNVCtrl.a
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=$(get_libdir) libdir32=$(ABI=x86 get_libdir)
|
||||
|
||||
NV_ARGS+=( DESTDIR="${D}" LIBDIR="${ED}"/usr/${libdir} )
|
||||
|
||||
local -A paths=(
|
||||
[APPLICATION_PROFILE]=/usr/share/nvidia
|
||||
[CUDA_ICD]=/etc/OpenCL/vendors
|
||||
[EGL_EXTERNAL_PLATFORM_JSON]=/usr/share/egl/egl_external_platform.d
|
||||
[FIRMWARE]=/lib/firmware/nvidia/${PV}
|
||||
[GBM_BACKEND_LIB_SYMLINK]=/usr/${libdir}/gbm
|
||||
[GLVND_EGL_ICD_JSON]=/usr/share/glvnd/egl_vendor.d
|
||||
[OPENGL_DATA]=/usr/share/nvidia
|
||||
[VULKANSC_ICD_JSON]=/usr/share/vulkansc
|
||||
[VULKAN_ICD_JSON]=/usr/share/vulkan
|
||||
[WINE_LIB]=/usr/${libdir}/nvidia/wine
|
||||
[XORG_OUTPUTCLASS_CONFIG]=/usr/share/X11/xorg.conf.d
|
||||
|
||||
[GLX_MODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules/extensions
|
||||
[GLX_MODULE_SYMLINK]=/usr/${libdir}/xorg/modules
|
||||
[XMODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules
|
||||
)
|
||||
|
||||
local skip_files=(
|
||||
$(usev !X "libGLX_nvidia libglxserver_nvidia")
|
||||
libGLX_indirect # non-glvnd unused fallback
|
||||
libnvidia-{gtk,wayland-client} nvidia-{settings,xconfig} # from source
|
||||
libnvidia-egl-gbm 15_nvidia_gbm # gui-libs/egl-gbm
|
||||
libnvidia-egl-wayland 10_nvidia_wayland # gui-libs/egl-wayland
|
||||
libnvidia-egl-xcb 20_nvidia_xcb.json # gui-libs/egl-x11
|
||||
libnvidia-egl-xlib 20_nvidia_xlib.json # gui-libs/egl-x11
|
||||
libnvidia-pkcs11.so # using the openssl3 version instead
|
||||
)
|
||||
local skip_modules=(
|
||||
$(usev !X "nvfbc vdpau xdriver")
|
||||
$(usev !modules gsp)
|
||||
$(usev !powerd nvtopps)
|
||||
installer nvpd # handled separately / built from source
|
||||
)
|
||||
local skip_types=(
|
||||
GLVND_LIB GLVND_SYMLINK EGL_CLIENT.\* GLX_CLIENT.\* # media-libs/libglvnd
|
||||
OPENCL_WRAPPER.\* # virtual/opencl
|
||||
DOCUMENTATION DOT_DESKTOP .\*_SRC DKMS_CONF SYSTEMD_UNIT # handled separately / unused
|
||||
)
|
||||
|
||||
local DOCS=(
|
||||
README.txt NVIDIA_Changelog supported-gpus/supported-gpus.json
|
||||
nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt
|
||||
)
|
||||
local HTML_DOCS=( html/. )
|
||||
einstalldocs
|
||||
|
||||
local DISABLE_AUTOFORMATTING=yes
|
||||
local DOC_CONTENTS="\
|
||||
Trusted users should be in the 'video' group to use NVIDIA devices.
|
||||
You can add yourself by using: gpasswd -a my-user video\
|
||||
$(usev modules "
|
||||
|
||||
Like all out-of-tree kernel modules, it is necessary to rebuild
|
||||
${PN} after upgrading or rebuilding the Linux kernel
|
||||
by for example running \`emerge @module-rebuild\`. Alternatively,
|
||||
if using a distribution kernel (sys-kernel/gentoo-kernel{,-bin}),
|
||||
this can be automated by setting USE=dist-kernel globally.
|
||||
|
||||
Loaded kernel modules also must not mismatch with the installed
|
||||
${PN} version (excluding -r revision), meaning should
|
||||
ensure \`eselect kernel list\` points to the kernel that will be
|
||||
booted before building and preferably reboot after upgrading
|
||||
${PN} (the ebuild will emit a warning if mismatching).
|
||||
|
||||
See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.")\
|
||||
$(use amd64 && usev !abi_x86_32 "
|
||||
|
||||
Note that without USE=abi_x86_32 on ${PN}, 32bit applications
|
||||
(typically using wine / steam) will not be able to use GPU acceleration.")
|
||||
|
||||
Be warned that USE=kernel-open may need to be either enabled or
|
||||
disabled for certain cards to function:
|
||||
- GTX 50xx (blackwell) and higher require it to be enabled
|
||||
- GTX 1650 and higher (pre-blackwell) should work either way
|
||||
- Older cards require it to be disabled
|
||||
|
||||
For additional information or for troubleshooting issues, please see
|
||||
https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers and NVIDIA's own
|
||||
documentation that is installed alongside this README."
|
||||
readme.gentoo_create_doc
|
||||
|
||||
if use modules; then
|
||||
linux-mod-r1_src_install
|
||||
|
||||
insinto /etc/modprobe.d
|
||||
doins "${T}"/nvidia.conf
|
||||
|
||||
# used for gpu verification with binpkgs (not kept, see pkg_preinst)
|
||||
insinto /usr/share/nvidia
|
||||
doins supported-gpus/supported-gpus.json
|
||||
fi
|
||||
|
||||
emake "${NV_ARGS[@]}" -C nvidia-modprobe install
|
||||
fowners :video /usr/bin/nvidia-modprobe #505092
|
||||
fperms 4710 /usr/bin/nvidia-modprobe
|
||||
|
||||
if use persistenced; then
|
||||
emake "${NV_ARGS[@]}" -C nvidia-persistenced install
|
||||
newconfd "${FILESDIR}"/nvidia-persistenced.confd nvidia-persistenced
|
||||
newinitd "${FILESDIR}"/nvidia-persistenced.initd nvidia-persistenced
|
||||
systemd_dounit "${T}"/nvidia-persistenced.service
|
||||
fi
|
||||
|
||||
if use tools; then
|
||||
emake "${NV_ARGS[@]}" -C nvidia-settings install
|
||||
|
||||
doicon nvidia-settings/doc/nvidia-settings.png
|
||||
domenu nvidia-settings/doc/nvidia-settings.desktop
|
||||
|
||||
exeinto /etc/X11/xinit/xinitrc.d
|
||||
newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
|
||||
fi
|
||||
|
||||
if use static-libs; then
|
||||
dolib.a nvidia-settings/src/out/libXNVCtrl.a
|
||||
strip-lto-bytecode
|
||||
|
||||
insinto /usr/include/NVCtrl
|
||||
doins nvidia-settings/src/libXNVCtrl/NVCtrl{Lib,}.h
|
||||
fi
|
||||
|
||||
use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig install
|
||||
|
||||
# mimic nvidia-installer by reading .manifest to install files
|
||||
# 0:file 1:perms 2:type 3+:subtype/arguments -:module
|
||||
local m into
|
||||
while IFS=' ' read -ra m; do
|
||||
! [[ ${#m[@]} -ge 2 && ${m[-1]} =~ MODULE: ]] ||
|
||||
[[ " ${m[0]##*/}" =~ ^(\ ${skip_files[*]/%/.*|\\} )$ ]] ||
|
||||
[[ " ${m[2]}" =~ ^(\ ${skip_types[*]/%/|\\} )$ ]] ||
|
||||
has ${m[-1]#MODULE:} "${skip_modules[@]}" && continue
|
||||
|
||||
case ${m[2]} in
|
||||
MANPAGE)
|
||||
gzip -dc ${m[0]} | newman - ${m[0]%.gz}
|
||||
pipestatus || die
|
||||
continue
|
||||
;;
|
||||
GBM_BACKEND_LIB_SYMLINK) m[4]=../${m[4]};; # missing ../
|
||||
VDPAU_SYMLINK) m[4]=vdpau/; m[5]=${m[5]#vdpau/};; # .so to vdpau/
|
||||
esac
|
||||
|
||||
if [[ -v 'paths[${m[2]}]' ]]; then
|
||||
into=${paths[${m[2]}]}
|
||||
elif [[ ${m[2]} == EXPLICIT_PATH ]]; then
|
||||
into=${m[3]}
|
||||
elif [[ ${m[2]} == *_BINARY ]]; then
|
||||
into=/usr/bin
|
||||
elif [[ ${m[3]} == COMPAT32 ]]; then
|
||||
use abi_x86_32 || continue
|
||||
into=/usr/${libdir32}
|
||||
elif [[ ${m[2]} == *_@(LIB|SYMLINK) ]]; then
|
||||
into=/usr/${libdir}
|
||||
else
|
||||
die "No known installation path for ${m[0]}"
|
||||
fi
|
||||
[[ ${m[3]: -2} == ?/ ]] && into+=/${m[3]%/}
|
||||
[[ ${m[4]: -2} == ?/ ]] && into+=/${m[4]%/}
|
||||
|
||||
if [[ ${m[2]} =~ _SYMLINK$ ]]; then
|
||||
[[ ${m[4]: -1} == / ]] && m[4]=${m[5]}
|
||||
dosym ${m[4]} ${into}/${m[0]}
|
||||
continue
|
||||
fi
|
||||
# avoid portage warning due to missing soname links in manifest
|
||||
[[ ${m[0]} =~ ^libnvidia-ngx.so ]] &&
|
||||
dosym ${m[0]} ${into}/${m[0]%.so*}.so.1
|
||||
|
||||
printf -v m[1] %o $((m[1] | 0200)) # 444->644
|
||||
insopts -m${m[1]}
|
||||
insinto ${into}
|
||||
doins ${m[0]}
|
||||
done < .manifest || die
|
||||
insopts -m0644 # reset
|
||||
|
||||
# MODULE:installer non-skipped extras
|
||||
: "$(systemd_get_sleepdir)"
|
||||
exeinto "${_#"${EPREFIX}"}"
|
||||
doexe systemd/system-sleep/nvidia
|
||||
dobin systemd/nvidia-sleep.sh
|
||||
systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend,suspend-then-hibernate}.service
|
||||
|
||||
dobin nvidia-bug-report.sh
|
||||
|
||||
insinto /usr/share/nvidia/files.d
|
||||
doins sandboxutils-filelist.json
|
||||
|
||||
# MODULE:powerd extras
|
||||
if use powerd; then
|
||||
newinitd "${FILESDIR}"/nvidia-powerd.initd nvidia-powerd #923117
|
||||
systemd_dounit systemd/system/nvidia-powerd.service
|
||||
|
||||
insinto /usr/share/dbus-1/system.d
|
||||
doins nvidia-dbus.conf
|
||||
fi
|
||||
|
||||
# enabling is needed for sleep to work properly and little reason not to do
|
||||
# it unconditionally for a better user experience
|
||||
: "$(systemd_get_systemunitdir)"
|
||||
local unitdir=${_#"${EPREFIX}"}
|
||||
# not using relative symlinks to match systemd's own links
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-hibernate.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-resume.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-suspend.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-resume.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-suspend-then-hibernate.service
|
||||
dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-resume.service
|
||||
# also add a custom elogind hook to do the equivalent of the above
|
||||
exeinto /usr/lib/elogind/system-sleep
|
||||
newexe "${FILESDIR}"/system-sleep.elogind nvidia
|
||||
# <elogind-255.5 used a different path (bug #939216), keep a compat symlink
|
||||
# TODO: cleanup after 255.5 been stable for a few months
|
||||
dosym {/usr/lib,/"${libdir}"}/elogind/system-sleep/nvidia
|
||||
|
||||
# needed with >=systemd-256 or may fail to resume with some setups
|
||||
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072722
|
||||
insinto "${unitdir}"/systemd-homed.service.d
|
||||
newins - 10-nvidia.conf <<-EOF
|
||||
[Service]
|
||||
Environment=SYSTEMD_HOME_LOCK_FREEZE_SESSION=false
|
||||
EOF
|
||||
insinto "${unitdir}"/systemd-suspend.service.d
|
||||
newins - 10-nvidia.conf <<-EOF
|
||||
[Service]
|
||||
Environment=SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=false
|
||||
EOF
|
||||
dosym -r "${unitdir}"/systemd-{suspend,hibernate}.service.d/10-nvidia.conf
|
||||
dosym -r "${unitdir}"/systemd-{suspend,hybrid-sleep}.service.d/10-nvidia.conf
|
||||
dosym -r "${unitdir}"/systemd-{suspend,suspend-then-hibernate}.service.d/10-nvidia.conf
|
||||
|
||||
# symlink non-versioned so nvidia-settings can use it even if misdetected
|
||||
dosym nvidia-application-profiles-${PV}-key-documentation \
|
||||
${paths[APPLICATION_PROFILE]}/nvidia-application-profiles-key-documentation
|
||||
|
||||
# don't attempt to strip firmware files (silences errors)
|
||||
dostrip -x ${paths[FIRMWARE]}
|
||||
|
||||
# sandbox issues with /dev/nvidiactl and others (bug #904292,#921578)
|
||||
# are widespread and sometime affect revdeps of packages built with
|
||||
# USE=opencl/cuda making it hard to manage in ebuilds (minimal set,
|
||||
# ebuilds should handle manually if need others or addwrite)
|
||||
insinto /etc/sandbox.d
|
||||
newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-caps:/dev/char"'
|
||||
|
||||
# dracut does not use /etc/modprobe.d if hostonly=no, but want to make sure
|
||||
# our settings are used for bug 932781#c8 and nouveau blacklist if either
|
||||
# modules are included (however, just best-effort without initramfs regen)
|
||||
if use modules; then
|
||||
echo "install_items+=\" ${EPREFIX}/etc/modprobe.d/nvidia.conf \"" >> \
|
||||
"${ED}"/usr/lib/dracut/dracut.conf.d/10-${PN}.conf || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN=
|
||||
has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND=
|
||||
|
||||
use modules || return
|
||||
|
||||
# set video group id based on live system (bug #491414)
|
||||
local g=$(egetent group video | cut -d: -f3)
|
||||
[[ ${g} =~ ^[0-9]+$ ]] || die "Failed to determine video group id (got '${g}')"
|
||||
sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die
|
||||
|
||||
# try to find driver mismatches using temporary supported-gpus.json
|
||||
for g in $(grep -l 0x10de /sys/bus/pci/devices/*/vendor 2>/dev/null); do
|
||||
g=$(grep -io "\"devid\":\"$(<${g%vendor}device)\"[^}]*branch\":\"[0-9]*" \
|
||||
"${ED}"/usr/share/nvidia/supported-gpus.json 2>/dev/null)
|
||||
if [[ ${g} ]]; then
|
||||
g=$((${g##*\"}+1))
|
||||
if ver_test -ge ${g}; then
|
||||
NV_LEGACY_MASK=">=${CATEGORY}/${PN}-${g}"
|
||||
break
|
||||
fi
|
||||
fi
|
||||
done
|
||||
rm "${ED}"/usr/share/nvidia/supported-gpus.json || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod-r1_pkg_postinst
|
||||
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if [[ -r /proc/driver/nvidia/version &&
|
||||
$(</proc/driver/nvidia/version) != *" ${PV} "* ]]; then
|
||||
ewarn "Currently loaded NVIDIA modules do not match the newly installed"
|
||||
ewarn "libraries and may prevent launching GPU-accelerated applications."
|
||||
if use modules; then
|
||||
ewarn "Easiest way to fix this is normally to reboot. If still run into issues"
|
||||
ewarn "(e.g. API mismatch messages in the \`dmesg\` output), please verify"
|
||||
ewarn "that the running kernel is ${KV_FULL} and that (if used) the"
|
||||
ewarn "initramfs does not include NVIDIA modules (or at least, not old ones)."
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $(</proc/cmdline) == *slub_debug=[!-]* ]]; then
|
||||
ewarn "Detected that the current kernel command line is using 'slub_debug=',"
|
||||
ewarn "this may lead to system instability/freezes with this version of"
|
||||
ewarn "${PN}. Bug: https://bugs.gentoo.org/796329"
|
||||
fi
|
||||
|
||||
if [[ -v NV_LEGACY_MASK ]]; then
|
||||
ewarn
|
||||
ewarn "***WARNING***"
|
||||
ewarn
|
||||
ewarn "You are installing a version of ${PN} known not to work"
|
||||
ewarn "with a GPU of the current system. If unwanted, add the mask:"
|
||||
if [[ -d ${EROOT}/etc/portage/package.mask ]]; then
|
||||
ewarn " echo '${NV_LEGACY_MASK}' > ${EROOT}/etc/portage/package.mask/${PN}"
|
||||
else
|
||||
ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask"
|
||||
fi
|
||||
ewarn "...then downgrade to a legacy[1] branch if possible (not all old versions"
|
||||
ewarn "are available or fully functional, may need to consider nouveau[2])."
|
||||
ewarn "[1] https://www.nvidia.com/object/IO_32667.html"
|
||||
ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau"
|
||||
fi
|
||||
|
||||
if use kernel-open && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then
|
||||
ewarn
|
||||
ewarn "Open source variant of ${PN} was selected, note that it requires"
|
||||
ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues."
|
||||
ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html"
|
||||
fi
|
||||
|
||||
if use wayland && use modules && [[ ! -v NV_HAD_WAYLAND ]]; then
|
||||
elog
|
||||
elog "Note that with USE=wayland, nvidia-drm.modeset=1 will be enabled"
|
||||
elog "in '${EROOT}/etc/modprobe.d/nvidia.conf'. *If* experience issues,"
|
||||
elog "either disable wayland or edit nvidia.conf."
|
||||
fi
|
||||
|
||||
[[ ${PV} == 575.57.08 ]] || die "TODO: recheck intel+nvidia status & cleanup"
|
||||
if use kernel-open && ver_replacing -lt 575; then
|
||||
ewarn
|
||||
ewarn "WARNING:"
|
||||
ewarn
|
||||
ewarn "*If* using a hybrid Intel+NVIDIA laptop, be warned that users have"
|
||||
ewarn "reported that the GSP firmware could fail to initialize (for some"
|
||||
ewarn "setups) when USE=kernel-open is enabled with ${PN}-575.x."
|
||||
ewarn "*If* X/wayland fails to come up and boot messages have GSP errors,"
|
||||
ewarn "try to either disable USE=kernel-open or stay on ${PN}-570.x"
|
||||
ewarn "for now. Note that blackwell cards (aka 50xx+) require USE=kernel-open,"
|
||||
ewarn "so downgrading will be the only option there for now."
|
||||
fi
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user