From 1bc9c3b9d5a8c51b67f6ea2f57bdd76ff5073097 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 28 Sep 2022 03:11:19 +0100 Subject: gentoo auto-resync : 28:09:2022 - 03:11:19 --- x11-drivers/nvidia-drivers/Manifest | 18 +- .../files/nvidia-extras-390.154-clang16.patch | 41 -- .../files/nvidia-extras-470.141.03-clang16.patch | 36 -- .../nvidia-drivers/nvidia-drivers-390.154.ebuild | 1 - .../nvidia-drivers-470.141.03.ebuild | 1 - .../nvidia-drivers/nvidia-drivers-510.85.02.ebuild | 1 - .../nvidia-drivers/nvidia-drivers-515.49.15.ebuild | 513 --------------------- .../nvidia-drivers/nvidia-drivers-515.49.18.ebuild | 512 ++++++++++++++++++++ .../nvidia-drivers/nvidia-drivers-515.65.01.ebuild | 1 - .../nvidia-drivers/nvidia-drivers-515.76.ebuild | 1 - 10 files changed, 520 insertions(+), 605 deletions(-) delete mode 100644 x11-drivers/nvidia-drivers/files/nvidia-extras-390.154-clang16.patch delete mode 100644 x11-drivers/nvidia-drivers/files/nvidia-extras-470.141.03-clang16.patch delete mode 100644 x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild create mode 100644 x11-drivers/nvidia-drivers/nvidia-drivers-515.49.18.ebuild (limited to 'x11-drivers/nvidia-drivers') diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest index f269da2cbcf4..197ee4bc52c2 100644 --- a/x11-drivers/nvidia-drivers/Manifest +++ b/x11-drivers/nvidia-drivers/Manifest @@ -5,8 +5,6 @@ AUX nvidia-drivers-390.154-clang15-x86.patch 1002 BLAKE2B a221d3063439eb492b4d5c AUX nvidia-drivers-390.154-clang15.patch 2832 BLAKE2B af69f8195ee42fc12ef9a001d6a0e169b3104f41ae62008c2c831907c345c9bca5008d5cd9204c64940706b4d248815edb8dc1cc659a33d541924fc82766a6bb SHA512 2005cf471ff804dbf0ca96800e30177a4b50a113c2d9ff6ee46b40d6a435c20b5ce9c13cef729d69204269b869f39c8109bca63186f7ff3c79baef08b7af0b73 AUX nvidia-drivers-470.141.03-clang15.patch 3674 BLAKE2B 58297ed0360c972641933c83f019c52ddfec71fa34b27bc2c9326ba5e50896f72a899196719af72e134716f7a54697ccca5c13cffd10ab5df64a5131a9a03cba SHA512 8aaae0dedb3e774046052cc5296c7c9fe24f01767f71ff837012a32775473bad8c5b3c26b8547761dcc6ca8f9fbc6aa8e256b58f15830b64dd187e64b0c96f20 AUX nvidia-drm-outputclass-390.conf 179 BLAKE2B 2a7d3bb2bb131db6ddf24c9fa157a1044e72a3229088654f4768f76eb871cdaacdee58e82be5504c1c0af928c343448b4d03f23d289a4479b64218d57fbd7a16 SHA512 8e5dfe54b9cf261d28c206ca1594183cba4945ed633a13ab4b1801b2ad4614ca10038ab7f0cf35dbf4eaa7b2de6e747c3be13ecb11d05740b22654626f09d774 -AUX nvidia-extras-390.154-clang16.patch 1493 BLAKE2B 55792c36e57b234247a20c313144159dcf2ddca81b6efe18ef5e7e510c37dd17fbd773c907614f95a77da5f081e915e80a758e8583a61ef5f56bdabf0569913c SHA512 5202d35a23c718c309454a95d32e25e8daef945bed6619fd2526c439c6af57e8d63ba1f450113b812edb97ddc4df35c2ea86f5a1627d66b6fc2a916b5e864fcd -AUX nvidia-extras-470.141.03-clang16.patch 1325 BLAKE2B bbc3a245e936cc729ff25850894b71dfdc58b78e7954b8f31b042ae74053e681a054b6f5859eadaa83ba457d964b9dc36e6c1ec5e550f40ba0dbf7384da83bd3 SHA512 e5cc9ad64cad2a27d37860cb961fb7adbd57177ad4e5ea54e2306e702963224364f8e4eadd0ec689386a05a3da76b1c435abadb6c0b51308c789e2ddc2759268 AUX nvidia-modprobe-390.141-uvm-perms.patch 563 BLAKE2B 9befd708ad2193e507583e066f306e11d55e82912f456e738d850b804d35331df2ca5de3a35e8ab551188c1103af762941098639fa9581b4437bc5e68595ddd6 SHA512 0546d51a86554985cd7cc036e7b8f65b457cd1a1c0549ef496422fa422d2757354a47b83247b100597f908c2653314878c721b3918ebc529cae4282824d4eada AUX nvidia-persistenced.confd 213 BLAKE2B dd57e63944a97a77e83a8373dd34ef2f56824dcfadcfbbb54cdf6eeac17066d78753bd1b21a9bad8f0437c279c95492319205c15b84b7f96e0515415dfddbc26 SHA512 a311b73bb47448538e5261ba658d42e923890c909c335eeac3cc90ad0ffd3fd5fb983df8e91077f3098eaa13b07f27b23dc24a4579b1df411ae272976ef089b3 AUX nvidia-persistenced.initd 404 BLAKE2B 2115075a9b0c9d0eeee55e2b3c531da82ae6aea5bf25bcedc618b108aeddab95c0ac852d6d9b96bd9bf6dba62a13db487d7c3627b244ef29c047bb7a137f2413 SHA512 34143639ca5456cacfbfcb2bc30e51dce02d9af4784791a84ba93a26f2f7f31f2dc75685bbed52138c35df310cca1c19072a5fab2b067f854550f5ee4d96aa9c @@ -21,7 +19,7 @@ DIST NVIDIA-Linux-x86-390.154.run 49362860 BLAKE2B 083d9dd234a37ec39a703ef7e0eb6 DIST NVIDIA-Linux-x86_64-390.154.run 84438529 BLAKE2B e1bd2982f9697e74b593380acf471e03192cd8d20f14bd9b43e6d5925421c518278e75515a0713be25b29bf99d7ea49c770adf2cede79736a03f323d5ed96a33 SHA512 cab7de6db783089c1e385da0296c43d2cbbe266bac2bc177044e279224a6ef9c76495b46c4b7056eb5a82b21932a2002e0c12f7659b446a2586f9df30a69a9a3 DIST NVIDIA-Linux-x86_64-470.141.03.run 272986406 BLAKE2B 12ef580dd98146715442e6b8e9f27bab4a12121f3edb2e291961f8dea96ec1b81d2c974d380018223999c67a7bec9873675487f436e60aab34e83b1a5b7065f1 SHA512 07aca8ea6aac5592060b4177ef43e9a3a5b2e3bc1a2d5959bf2ae349763fc62ed80b987af5607bf2d9a48e25c4e38e64970bca0177d63bd57a703d47debf5e18 DIST NVIDIA-Linux-x86_64-510.85.02.run 329836795 BLAKE2B f9f56a2498d223ee5a27b783bb2cffb8e77cdb9ed5139afce2bd6fc4e9eccb19b7068b9fa15b4e9f7242cfcdd1fe3f93faf342aae1eb5e9b32625663a0c32463 SHA512 ce04706b707d08f601ee23ed2f4b5d6b4c2e8c17d74557b720be64e0c0f4ff915bcf35efa2470c27d90a7e1bad4eab48e6d9b2b1f05442546d3324f2a10fa69b -DIST NVIDIA-Linux-x86_64-515.49.15.run 361696469 BLAKE2B 8d8111f61d1f5563a5cc3627cf37590768d8ccd50ff940b240ecea01e9dde1fccc37fb8f8bb217b614db18b86155990c49397c3454dc60978ded9f7c9ac996b4 SHA512 ce9b121cd73de3f127111ffaa0d2c6b6a15a052b6de3292b64a45d7a10531ad0c5bb4cb37063089b2533b5a96c3cc06eb6c5fb4241b6eee7941fc0c645f55113 +DIST NVIDIA-Linux-x86_64-515.49.18.run 360865817 BLAKE2B 483b462f25770909ac617cea7f2f5c44510782a88a5082403941b23976413d3e631dd78cc6cee298e983016a0ad44d132386b8d4a1823f93cb9940613fcba014 SHA512 6ac2b92af218c96e4904053365db5f4b40656bb45ce7f9df0b2cdab209ee4b3ec21caa7fd4bf9e2c3bc84e82d230ca77800b67750ce2bb3ada551693b2843af8 DIST NVIDIA-Linux-x86_64-515.65.01.run 364182561 BLAKE2B 552084a5347c0388f5cb0a6eecf41fb3d401356cbbbe957569e3eb0a4ca03b3db0dea0f7f6a37a6b66cf6d5377677ee57a6df73668002a13efd8140b153fcf03 SHA512 5221a4ac071eb39a37a841f19cfe4983286dc35e918956b40604404ef36c122612475df7b9a391a9a70bd60f44e598c8a0e5ec54ccc3e90d51f01e1b2fbe5e33 DIST NVIDIA-Linux-x86_64-515.76.run 364857760 BLAKE2B 05c39c66cdc90d78d0be7b1996bdbd8ce6bf1b6747d79876cd469e3d5e20d4df079e87edf17b3dcdcff92bf312fbe4154d06ce26d72d9c663273c8fcd38ce5c1 SHA512 517e23855acfcded81dc65290ff7354796c6c01a6cde255fa173ab26358f0fbeae79de2f5919787dbdb4c384a57c003045a461870439bc0acf81a501657d8775 DIST NVIDIA-kernel-module-source-515.65.01.tar.xz 7510104 BLAKE2B 806f895d2de136427702c21ae231ba0e304850b07f2f43f3f2f1ba7b0115b7c9bb36435ad53ade6c778ab74af976c4613427644c1c03e3a9df9ddcb6f79de0fc SHA512 2975a498d7dbeace6feae5611b27be640e05fedf5faa257abde839756f508bae238de59a3277fb3326a51c048d9478b19d9ef7968061aaac9f1f588851bdf983 @@ -51,11 +49,11 @@ DIST nvidia-xconfig-470.141.03.tar.bz2 108888 BLAKE2B 1701f6a7d81dd4eb7a17d79882 DIST nvidia-xconfig-510.85.02.tar.bz2 109790 BLAKE2B 09313f0f423c52c81550e8d94b82b88961bdab702bfa2086ffe148b517f82cdaada0ef5e2e5074c6bef174d64661ced63b4c52108c021e7cdadcb7b55cf8f6dc SHA512 5b9a0055643c9368689fd5d0fd47ddfb6352d903913271a577f8b0a8f92e0ce9700287c512269e91285ea9f385dcb4ed9c33410d5244234be7a7f34242df9bab DIST nvidia-xconfig-515.65.01.tar.bz2 109681 BLAKE2B b41b3ec377c79af6906a47c826d9930cc5ea6e85e8404e6882f3bc03cfccfa03d8ef7c280453ab29edb208173aeb576d33df00f92c225a86bc3cb571b352cdbc SHA512 6f0752e32af6772e85bd2799ea2d895bd5b5faee4c1b6813eb839e75af43d07ef09be6606e7dfc40491e07c25333e9c4145465f97dc0338053e8be1c19220bf9 DIST nvidia-xconfig-515.76.tar.bz2 110126 BLAKE2B de3c76133cdf20f927f242c39cc8db9bd8a03d27be2f3f3007ad69597e9aeeb5596602b18ea49d9de57d832e374568b19a05ce068521c4e0a067c359da55b873 SHA512 36d8831679427e331e3143ff1f46ff90498dcbefa5708f748be9ae608ff149ee23b8aaa80567a91f642de84be63a301c0b0bd9a46344cf6f2493c4a38466f709 -DIST open-gpu-kernel-modules-515.49.15.tar.gz 7413872 BLAKE2B af04b65096832cfdde54025559585197d3c24700551b866a79d170eee9aefaa99e7e1a9357a8be4762ec7d39789a22610e3d031c04d2e589cbbf086ee34a5ffe SHA512 efadd610126281def49fb5f559dd5a115f2bde6058500862e359faaac7d095f578c496fbb150b8c99cad990a8214662c9fae4428aa8e7a8060f2405d194341ac -EBUILD nvidia-drivers-390.154.ebuild 14713 BLAKE2B f3c132cce9313908e7511f4fc3db122a76cbdd6dd38bfd5b38e3adacc76c6210c39632b2e3c5db74d16164ecdfa2e6fecf67a7cf6f19fc4a022c540945c87b42 SHA512 6ea66b2ab4085708169d14d2485bd452aec4ccc6ca028e3069de4c86e84c812a4598edef65c3d295dc7f6253d143c43dd857eb4ce5512a835d718171fe49150e -EBUILD nvidia-drivers-470.141.03.ebuild 15364 BLAKE2B ceb9bcc7942bf0361e0a3409bca61eb5d24c97e02dd32a81a0147fd435388a47486781aa445de1824636c25a747ae9dc5dd172aa954abfb20d61ed4078736fd1 SHA512 cca91f5fe3f0817a645dba84ae473f04bb4207a47520530210bf57533b2dac8f2edb9f35f1ae056912d7fa0e8079dfe230488fa9859865f1ac030940a7631048 -EBUILD nvidia-drivers-510.85.02.ebuild 15694 BLAKE2B 3c31f0560f301d8965f2b58c037739bbf0745563f45fbc1155e4fc50d7a73e963654ebb80e5a460c677727b3d03e8e4b1415cbf1f9cab429c08741031037e3e0 SHA512 6d81b3238bcbf1fae6f7e5097cf822ce5c37233fa9967086e077d46b9c424f867ccbfcb04d5d748506d46ced2b87e80c9fbd81701688766204b7e7d71eb37e88 -EBUILD nvidia-drivers-515.49.15.ebuild 17477 BLAKE2B ad6cb56e4987e12c3a4557d0d3fb802bb0a6c19cb36fc25a531bb827ace710e856abbce86a6217ae28110b660347e7139d061521023e2a2f82208aec028edae3 SHA512 1a65482ef8b855c0585317651d2e67cb3e236c43597534b587f7e74f549347fe42d6cc86e309bf798a23411a0f0aab733e74f2dc661031daeceb79bfaa6b3062 -EBUILD nvidia-drivers-515.65.01.ebuild 17477 BLAKE2B 64f90490cd9402f8f3ad73fa5262230c5c8d767e6696449f0d756ffeaff6b11639172f3e7fe04815fd73b4df9f95bb161e8ea3ee936cb177091608f72ee7f0d4 SHA512 47a77c4ef680f44bdb6859bf1b7cfae1575a1d42707f670bada3e332789499f681bad21b113406e1c3d6285f213e8853c6ca445d64dcabae11b51de080bb0ac0 -EBUILD nvidia-drivers-515.76.ebuild 17478 BLAKE2B 2040450b7c57014014707e4e96fa45cd573d3524d33c00df2aa406302823224e371c424aee07093706915599cc94026e616c9ec893362a3e4db36e1278ba69cc SHA512 be1c224a5af801db92b8d5b52ff5e626e6df4ab178695ecd4438cbc6593ae36680ddd0e9d37f1d0b2f84ed0d1dd50aa2554193328aa2b669f132a8a80b30b688 +DIST open-gpu-kernel-modules-515.49.18.tar.gz 7418328 BLAKE2B 3f9e1a7c96ffdd1e963c94a36f88b4ac1be7ada7666ddd515638127c602ae9a93a85b9f16dbeab20913d0c80cfca2297cc2d2f74176146bd88ab3c39bb9b11fb SHA512 6767c04d7fc123309261e496111870cb71d0be3b7621d48a13da8cd8790df0a809407ff1a8dd139902005ebca89d77b1ddacf85ec911faa47d50fe61c82cf604 +EBUILD nvidia-drivers-390.154.ebuild 14662 BLAKE2B 54f3e7aca7aa14eadf25584be2ce8cd6ddd291a3ce066b79775f96691fd047f98bb03f9b5c4022b9a06fae2149745a20908715a58ceb219ab288fddb1269b4ff SHA512 f1e6b014aec0641317da609c17e0786342ad6eca4f571ed7b72872f3e12417ca3964ada536f8979bb4cf592cea8bd64387ad342ab843816dfacd76b46fb3d589 +EBUILD nvidia-drivers-470.141.03.ebuild 15310 BLAKE2B 6201097b868a6d677f5e1291e531c9e41b135c1f942da60b6aa236cd038dd5a1e3dd043dddd9a7ef3cfd3d81b940e2fba33fc58a007848fd871e2424631db4fc SHA512 932454b787a6c39d43b8dd81311c8ecd6168f04d21bcd3513ca6bad524bf3620ffd75bbf49d5b0d40406f023869f2ddccf7a3a0f9a52707e72dff4d1ad9c39ca +EBUILD nvidia-drivers-510.85.02.ebuild 15640 BLAKE2B 34822be14cbfa5fe82594cff668ba5a963246e54b7729406079e9835a0afa8069713d5e06de791ad37f5be499f9136ef73b956a17ea98348eaa469f825740b5d SHA512 aca9b75ea07e95ac22c6c4e0ea8e1ece8c34c307e90a3ba2f5ec3c15e859a79a2a9358d1ad4999d43718bf628a47cd5397d0a5239d74ff6265dea3f756ecbb55 +EBUILD nvidia-drivers-515.49.18.ebuild 17423 BLAKE2B 1dde7f8148acb92408827b1f4b5318c86055e15542e1983a9355e4674b2ad0adecb29834a85ddaa1d82fd30eeb96e6a60934403730976175f9cf110cd4ef0f8c SHA512 f7661c82fccd9ac2de07d022daa8707aed8d689cff24844893c7c6747e0c948248591bf005d2906c2837cf2011ab88c44cdc6a68882a15b107a258fec691b3c0 +EBUILD nvidia-drivers-515.65.01.ebuild 17423 BLAKE2B e1c7636e4a57c4496215a09460922ff688627e114947ad599b9cc2e47cafbca061cd3791b1f6f623488baff68c3e46d779aba056a6fe2e8faa086831c513c9ca SHA512 01d2001664a49658e8a0c6bb1767bddf2a05c353fc6dc571f06a86aab31a84c5866787132efce780544af53b702638c70673c06972ea033669ad92bf6b7c3626 +EBUILD nvidia-drivers-515.76.ebuild 17424 BLAKE2B 929f1b754efa76933b8ca566baf0b1ee82400b3d73b415058917b73658a2bedc38ec241043eacaefccfa3372e9fbde6c9264aa383a78c6f7ac4ef665d94f5bcc SHA512 3fd9cf4332c2fbbab9ae1ee5f7f00f35150e4b54773fe21662cf52eabb3650ee94ad299b738651fc83693d51f906cf85751272756bc58ab589abe4baf1b48e34 MISC metadata.xml 1320 BLAKE2B f8aa8f9a39d6da284b60afb50087acf75744057628e79b77a95e6bebb1e386e9d1a819f41e73d3e94b8ab74322ec8e8b077ad6d2af0804a5c6f20b4dd5f2897d SHA512 9fb939f8c8892ce43afc4f577181474c88a0aae3cc58af57987000b82f6c52f3f7b40fc538fa8eae0d5dbaf1fe3734d84f72fda2106853edd945149b3f2d2747 diff --git a/x11-drivers/nvidia-drivers/files/nvidia-extras-390.154-clang16.patch b/x11-drivers/nvidia-drivers/files/nvidia-extras-390.154-clang16.patch deleted file mode 100644 index 63e33af9d0db..000000000000 --- a/x11-drivers/nvidia-drivers/files/nvidia-extras-390.154-clang16.patch +++ /dev/null @@ -1,41 +0,0 @@ -https://bugs.gentoo.org/870412 ---- a/nvidia-modprobe/common-utils/msg.c -+++ b/nvidia-modprobe/common-utils/msg.c -@@ -45 +45 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-persistenced/common-utils/msg.c -+++ b/nvidia-persistenced/common-utils/msg.c -@@ -45 +45 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-persistenced/nvidia-persistenced.c -+++ b/nvidia-persistenced/nvidia-persistenced.c -@@ -502 +502 @@ --static NvPdStatus setup_rpc() -+static NvPdStatus setup_rpc(void) ---- a/nvidia-settings/src/common-unix/virtual-resolutions/nvvr.c -+++ b/nvidia-settings/src/common-unix/virtual-resolutions/nvvr.c -@@ -107 +107 @@ --const NVVRSize* NVVRGetCommonResolutions() -+const NVVRSize* NVVRGetCommonResolutions(void) ---- a/nvidia-settings/src/common-utils/msg.c -+++ b/nvidia-settings/src/common-utils/msg.c -@@ -45 +45 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-settings/src/gtk+-2.x/ctkslimm.c -+++ b/nvidia-settings/src/gtk+-2.x/ctkslimm.c -@@ -129 +129 @@ --GType ctk_slimm_get_type() -+GType ctk_slimm_get_type(void) ---- a/nvidia-settings/src/gtk+-2.x/ctkutils.c -+++ b/nvidia-settings/src/gtk+-2.x/ctkutils.c -@@ -251 +251 @@ --GtkWidget *ctk_combo_box_text_new_with_entry() -+GtkWidget *ctk_combo_box_text_new_with_entry(void) ---- a/nvidia-xconfig/common-utils/msg.c -+++ b/nvidia-xconfig/common-utils/msg.c -@@ -45 +45 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) diff --git a/x11-drivers/nvidia-drivers/files/nvidia-extras-470.141.03-clang16.patch b/x11-drivers/nvidia-drivers/files/nvidia-extras-470.141.03-clang16.patch deleted file mode 100644 index c0a1f138dd79..000000000000 --- a/x11-drivers/nvidia-drivers/files/nvidia-extras-470.141.03-clang16.patch +++ /dev/null @@ -1,36 +0,0 @@ -https://bugs.gentoo.org/870412 ---- a/nvidia-modprobe/common-utils/msg.c -+++ b/nvidia-modprobe/common-utils/msg.c -@@ -47 +47 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-persistenced/common-utils/msg.c -+++ b/nvidia-persistenced/common-utils/msg.c -@@ -47 +47 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-persistenced/nvidia-persistenced.c -+++ b/nvidia-persistenced/nvidia-persistenced.c -@@ -625 +625 @@ --static NvPdStatus setup_rpc() -+static NvPdStatus setup_rpc(void) ---- a/nvidia-settings/src/common-unix/virtual-resolutions/nvvr.c -+++ b/nvidia-settings/src/common-unix/virtual-resolutions/nvvr.c -@@ -107 +107 @@ --const NVVRSize* NVVRGetCommonResolutions() -+const NVVRSize* NVVRGetCommonResolutions(void) ---- a/nvidia-settings/src/common-utils/msg.c -+++ b/nvidia-settings/src/common-utils/msg.c -@@ -47 +47 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) ---- a/nvidia-settings/src/gtk+-2.x/ctkutils.c -+++ b/nvidia-settings/src/gtk+-2.x/ctkutils.c -@@ -260 +260 @@ --GtkWidget *ctk_combo_box_text_new_with_entry() -+GtkWidget *ctk_combo_box_text_new_with_entry(void) ---- a/nvidia-xconfig/common-utils/msg.c -+++ b/nvidia-xconfig/common-utils/msg.c -@@ -47 +47 @@ --NvVerbosity nv_get_verbosity() -+NvVerbosity nv_get_verbosity(void) diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild index 2ad4e5070ba9..12f9791b3462 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild @@ -73,7 +73,6 @@ BDEPEND=" QA_PREBUILT="opt/bin/* usr/lib*" PATCHES=( - "${FILESDIR}"/nvidia-extras-390.154-clang16.patch "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-390.141-fno-common.patch "${FILESDIR}"/nvidia-settings-390.144-desktop.patch diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild index 1a33c461bb33..f9289f18be17 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild @@ -77,7 +77,6 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - "${FILESDIR}"/nvidia-extras-470.141.03-clang16.patch "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-390.144-desktop.patch "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild index f90467ba3060..8046c6e58d68 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild @@ -80,7 +80,6 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - "${FILESDIR}"/nvidia-extras-470.141.03-clang16.patch "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-390.144-desktop.patch "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild deleted file mode 100644 index 92a3dc232374..000000000000 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild +++ /dev/null @@ -1,513 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MODULES_OPTIONAL_USE="driver" -inherit desktop flag-o-matic linux-mod multilib readme.gentoo-r1 \ - systemd toolchain-funcs unpacker user-info - -NV_KERNEL_MAX="5.19" -NV_PIN="515.65.01" - -DESCRIPTION="NVIDIA Accelerated Graphics Driver" -HOMEPAGE="https://developer.nvidia.com/vulkan-driver" -SRC_URI=" - https://developer.nvidia.com/vulkan-beta-${PV//.}-linux -> NVIDIA-Linux-x86_64-${PV}.run - $(printf "https://download.nvidia.com/XFree86/%s/%s-${NV_PIN}.tar.bz2 " \ - nvidia-{installer,modprobe,persistenced,settings,xconfig}{,}) - https://github.com/NVIDIA/open-gpu-kernel-modules/archive/refs/tags/${PV}.tar.gz - -> open-gpu-kernel-modules-${PV}.tar.gz" -# nvidia-installer is unused but here for GPL-2's "distribute sources" -S="${WORKDIR}" - -LICENSE="NVIDIA-r2 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" -SLOT="0/vulkan" -KEYWORDS="-* ~amd64" -IUSE="+X abi_x86_32 abi_x86_64 +driver kernel-open persistenced +static-libs +tools wayland" -REQUIRED_USE="kernel-open? ( driver )" - -COMMON_DEPEND=" - acct-group/video - sys-libs/glibc - X? ( x11-libs/libpciaccess ) - persistenced? ( - acct-user/nvpd - net-libs/libtirpc:= - ) - tools? ( - dev-libs/atk - dev-libs/glib:2 - dev-libs/jansson:= - media-libs/harfbuzz:= - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXxf86vm - x11-libs/pango - )" -RDEPEND=" - ${COMMON_DEPEND} - X? ( - media-libs/libglvnd[X,abi_x86_32(-)?] - x11-libs/libX11[abi_x86_32(-)?] - x11-libs/libXext[abi_x86_32(-)?] - ) - wayland? ( - gui-libs/egl-gbm - >=gui-libs/egl-wayland-1.1.10 - media-libs/libglvnd - )" -DEPEND=" - ${COMMON_DEPEND} - static-libs? ( - x11-libs/libX11 - x11-libs/libXext - ) - tools? ( - media-libs/libglvnd - sys-apps/dbus - x11-base/xorg-proto - x11-libs/libXrandr - x11-libs/libXv - x11-libs/libvdpau - )" -BDEPEND=" - sys-devel/m4 - virtual/pkgconfig" - -QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" - -PATCHES=( - "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - "${FILESDIR}"/nvidia-extras-470.141.03-clang16.patch - "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch - "${FILESDIR}"/nvidia-settings-390.144-desktop.patch - "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch - "${FILESDIR}"/nvidia-settings-390.144-raw-ldflags.patch -) - -pkg_setup() { - use driver || return - - local CONFIG_CHECK=" - PROC_FS - ~DRM_KMS_HELPER - ~SYSVIPC - ~!LOCKDEP - ~!SLUB_DEBUG_ON - ~!X86_KERNEL_IBT - !DEBUG_MUTEXES" - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and 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="X86_KERNEL_IBT: is set, be warned the modules may not load with it. - If run into problems, either unset or pass ibt=off to the kernel." - - use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 - - use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 - 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." - - MODULE_NAMES=" - nvidia(video:kernel) - nvidia-drm(video:kernel) - nvidia-modeset(video:kernel) - nvidia-peermem(video:kernel) - nvidia-uvm(video:kernel)" - use kernel-open && - MODULE_NAMES=${MODULE_NAMES//:kernel/:kernel-module-source:kernel-module-source/kernel-open} - - linux-mod_pkg_setup - - [[ ${MERGE_TYPE} == binary ]] && return - - BUILD_PARAMS='NV_VERBOSE=1 IGNORE_CC_MISMATCH=yes SYSSRC="${KV_DIR}" SYSOUT="${KV_OUT_DIR}"' - BUILD_TARGETS="modules" - - if linux_chkconfig_present CC_IS_CLANG; then - ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)" - ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed." - - tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}" - if linux_chkconfig_present LD_IS_LLD; then - : "${KERNEL_LD:=ld.lld}" - if linux_chkconfig_present LTO_CLANG_THIN; then - # kernel enables cache by default leading to sandbox violations - BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir=' - fi - fi - fi - BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}' - - if kernel_is -gt ${NV_KERNEL_MAX/./ }; then - ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}" - ewarn "or was not tested with it. It is recommended to use one of:" - ewarn " <=sys-kernel/gentoo-kernel-${NV_KERNEL_MAX}.x" - ewarn " <=sys-kernel/gentoo-sources-${NV_KERNEL_MAX}.x" - ewarn "You are free to try or use /etc/portage/patches, but support will" - ewarn "not be given and issues wait until NVIDIA releases a fixed version" - ewarn "(Gentoo will not accept patches for this)." - ewarn - ewarn "Do _not_ file a bug report if run into issues." - ewarn - fi -} - -src_prepare() { - # make patches usable across versions - rm nvidia-modprobe && mv nvidia-modprobe{-${NV_PIN},} || die - rm nvidia-persistenced && mv nvidia-persistenced{-${NV_PIN},} || die - rm nvidia-settings && mv nvidia-settings{-${NV_PIN},} || die - rm nvidia-xconfig && mv nvidia-xconfig{-${NV_PIN},} || die - mv open-gpu-kernel-modules-${PV} kernel-module-source || die - - eapply --directory=kernel-module-source/kernel-open \ - -p2 "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - - 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 - - # adjust service files - sed 's/__USER__/nvpd/' \ - nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \ - > "${T}"/nvidia-persistenced.service || die - use !amd64 || sed -i "s|/usr|${EPREFIX}/opt|" systemd/system/nvidia-powerd.service || die - - # enable nvidia-drm.modeset=1 by default with USE=wayland - 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 - - NV_ARGS=( - PREFIX="${EPREFIX}"/usr - HOST_CC="$(tc-getBUILD_CC)" - HOST_LD="$(tc-getBUILD_LD)" - NV_USE_BUNDLED_LIBJANSSON=0 - NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out - WAYLAND_AVAILABLE=$(usex wayland 1 0) - XNVCTRL_CFLAGS=-fPIC #840389 - ) - - if use driver; then - if linux_chkconfig_present GCC_PLUGINS; then - mkdir "${T}"/plugin-test || die - echo "obj-m += test.o" > "${T}"/plugin-test/Kbuild || die - > "${T}"/plugin-test/test.c || die - if [[ $(LC_ALL=C make -C "${KV_OUT_DIR}" ARCH="$(tc-arch-kernel)" \ - HOSTCC="$(tc-getBUILD_CC)" M="${T}"/plugin-test 2>&1) \ - =~ "error: incompatible gcc/plugin version" ]]; then - ewarn "Warning: detected kernel was built with different gcc/plugin versions," - ewarn "you may need to 'make clean' and rebuild your kernel with the current" - ewarn "gcc version (or re-emerge for distribution kernels, including kernel-bin)." - fi - fi - - linux-mod_src_compile - 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 - # cflags: avoid noisy logs, only use here and set first to let override - # ldflags: abi currently needed if LD=ld.lld - CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \ - RAW_LDFLAGS="$(get_abi_LDFLAGS) $(raw-ldflags)" \ - emake "${NV_ARGS[@]}" -C nvidia-settings - elif use static-libs; then - emake "${NV_ARGS[@]}" -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 - [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=( - # nvidia_icd/layers(vulkan): skip with -X too as it uses libGLX_nvidia - $(usev !X " - libGLX_nvidia libglxserver_nvidia - nvidia_icd.json nvidia_layers.json") - $(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 - ) - local skip_modules=( - $(usev !X "nvfbc vdpau xdriver") - $(usev !driver gsp) - 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 driver " - -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.") - -For general information on using ${PN}, please see: -https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers" - readme.gentoo_create_doc - - if use driver; then - linux-mod_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 - - 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}; assert - 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]} =~ _BINARY$ ]]; then - into=/opt/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 - [[ ${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]} - insinto ${into} - doins ${m[0]} - done < .manifest || die - - # MODULE:installer non-skipped extras - exeinto /lib/systemd/system-sleep - doexe systemd/system-sleep/nvidia - dobin systemd/nvidia-sleep.sh - systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend}.service - - dobin nvidia-bug-report.sh - - # MODULE:powerd extras - if use amd64; then - systemd_dounit systemd/system/nvidia-powerd.service - - insinto /usr/share/dbus-1/system.d - doins nvidia-dbus.conf - fi - - # 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 -} - -pkg_preinst() { - has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND= - - use driver || return - linux-mod_pkg_preinst - - # 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_pkg_postinst - - readme.gentoo_print_elog - - if [[ -r /proc/driver/nvidia/version && - $( ${EROOT}/etc/portage/package.mask/${PN}" - else - ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask" - fi - ewarn "...then downgrade to a legacy branch if possible. For details, see:" - ewarn "https://www.nvidia.com/object/IO_32667.html" - fi - - if use kernel-open; then - ewarn - ewarn "Open source variant of ${PN} was selected, be warned it is experimental" - ewarn "and only usable with Turing / Ampere and later GPUs, aka GTX 1650+." - ewarn "Please also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" - ewarn - ewarn "Many features are not yet implemented in the drivers and limitations are" - ewarn "to be expected. Please do not report non-build/packaging bugs to Gentoo." - ewarn "Switch back to USE=-kernel-open to restore functionality if needed for now." - fi - - if use wayland && use driver && [[ ! -v NV_HAD_WAYLAND ]]; then - elog - 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 -} diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.18.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.18.ebuild new file mode 100644 index 000000000000..e44164a54d05 --- /dev/null +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.18.ebuild @@ -0,0 +1,512 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MODULES_OPTIONAL_USE="driver" +inherit desktop flag-o-matic linux-mod multilib readme.gentoo-r1 \ + systemd toolchain-funcs unpacker user-info + +NV_KERNEL_MAX="5.19" +NV_PIN="515.65.01" + +DESCRIPTION="NVIDIA Accelerated Graphics Driver" +HOMEPAGE="https://developer.nvidia.com/vulkan-driver" +SRC_URI=" + https://developer.nvidia.com/vulkan-beta-${PV//.}-linux -> NVIDIA-Linux-x86_64-${PV}.run + $(printf "https://download.nvidia.com/XFree86/%s/%s-${NV_PIN}.tar.bz2 " \ + nvidia-{installer,modprobe,persistenced,settings,xconfig}{,}) + https://github.com/NVIDIA/open-gpu-kernel-modules/archive/refs/tags/${PV}.tar.gz + -> open-gpu-kernel-modules-${PV}.tar.gz" +# nvidia-installer is unused but here for GPL-2's "distribute sources" +S="${WORKDIR}" + +LICENSE="NVIDIA-r2 BSD BSD-2 GPL-2 MIT ZLIB curl openssl" +SLOT="0/vulkan" +KEYWORDS="-* ~amd64" +IUSE="+X abi_x86_32 abi_x86_64 +driver kernel-open persistenced +static-libs +tools wayland" +REQUIRED_USE="kernel-open? ( driver )" + +COMMON_DEPEND=" + acct-group/video + sys-libs/glibc + X? ( x11-libs/libpciaccess ) + persistenced? ( + acct-user/nvpd + net-libs/libtirpc:= + ) + tools? ( + dev-libs/atk + dev-libs/glib:2 + dev-libs/jansson:= + media-libs/harfbuzz:= + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXxf86vm + x11-libs/pango + )" +RDEPEND=" + ${COMMON_DEPEND} + X? ( + media-libs/libglvnd[X,abi_x86_32(-)?] + x11-libs/libX11[abi_x86_32(-)?] + x11-libs/libXext[abi_x86_32(-)?] + ) + wayland? ( + gui-libs/egl-gbm + >=gui-libs/egl-wayland-1.1.10 + media-libs/libglvnd + )" +DEPEND=" + ${COMMON_DEPEND} + static-libs? ( + x11-libs/libX11 + x11-libs/libXext + ) + tools? ( + media-libs/libglvnd + sys-apps/dbus + x11-base/xorg-proto + x11-libs/libXrandr + x11-libs/libXv + x11-libs/libvdpau + )" +BDEPEND=" + sys-devel/m4 + virtual/pkgconfig" + +QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" + +PATCHES=( + "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch + "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch + "${FILESDIR}"/nvidia-settings-390.144-desktop.patch + "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch + "${FILESDIR}"/nvidia-settings-390.144-raw-ldflags.patch +) + +pkg_setup() { + use driver || return + + local CONFIG_CHECK=" + PROC_FS + ~DRM_KMS_HELPER + ~SYSVIPC + ~!LOCKDEP + ~!SLUB_DEBUG_ON + ~!X86_KERNEL_IBT + !DEBUG_MUTEXES" + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection + of drivers (no custom config), and 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="X86_KERNEL_IBT: is set, be warned the modules may not load with it. + If run into problems, either unset or pass ibt=off to the kernel." + + use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 + + use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + 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." + + MODULE_NAMES=" + nvidia(video:kernel) + nvidia-drm(video:kernel) + nvidia-modeset(video:kernel) + nvidia-peermem(video:kernel) + nvidia-uvm(video:kernel)" + use kernel-open && + MODULE_NAMES=${MODULE_NAMES//:kernel/:kernel-module-source:kernel-module-source/kernel-open} + + linux-mod_pkg_setup + + [[ ${MERGE_TYPE} == binary ]] && return + + BUILD_PARAMS='NV_VERBOSE=1 IGNORE_CC_MISMATCH=yes SYSSRC="${KV_DIR}" SYSOUT="${KV_OUT_DIR}"' + BUILD_TARGETS="modules" + + if linux_chkconfig_present CC_IS_CLANG; then + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)" + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed." + + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}" + if linux_chkconfig_present LD_IS_LLD; then + : "${KERNEL_LD:=ld.lld}" + if linux_chkconfig_present LTO_CLANG_THIN; then + # kernel enables cache by default leading to sandbox violations + BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir=' + fi + fi + fi + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}' + + if kernel_is -gt ${NV_KERNEL_MAX/./ }; then + ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}" + ewarn "or was not tested with it. It is recommended to use one of:" + ewarn " <=sys-kernel/gentoo-kernel-${NV_KERNEL_MAX}.x" + ewarn " <=sys-kernel/gentoo-sources-${NV_KERNEL_MAX}.x" + ewarn "You are free to try or use /etc/portage/patches, but support will" + ewarn "not be given and issues wait until NVIDIA releases a fixed version" + ewarn "(Gentoo will not accept patches for this)." + ewarn + ewarn "Do _not_ file a bug report if run into issues." + ewarn + fi +} + +src_prepare() { + # make patches usable across versions + rm nvidia-modprobe && mv nvidia-modprobe{-${NV_PIN},} || die + rm nvidia-persistenced && mv nvidia-persistenced{-${NV_PIN},} || die + rm nvidia-settings && mv nvidia-settings{-${NV_PIN},} || die + rm nvidia-xconfig && mv nvidia-xconfig{-${NV_PIN},} || die + mv open-gpu-kernel-modules-${PV} kernel-module-source || die + + eapply --directory=kernel-module-source/kernel-open \ + -p2 "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch + + 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 + + # adjust service files + sed 's/__USER__/nvpd/' \ + nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \ + > "${T}"/nvidia-persistenced.service || die + use !amd64 || sed -i "s|/usr|${EPREFIX}/opt|" systemd/system/nvidia-powerd.service || die + + # enable nvidia-drm.modeset=1 by default with USE=wayland + 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 + + NV_ARGS=( + PREFIX="${EPREFIX}"/usr + HOST_CC="$(tc-getBUILD_CC)" + HOST_LD="$(tc-getBUILD_LD)" + NV_USE_BUNDLED_LIBJANSSON=0 + NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out + WAYLAND_AVAILABLE=$(usex wayland 1 0) + XNVCTRL_CFLAGS=-fPIC #840389 + ) + + if use driver; then + if linux_chkconfig_present GCC_PLUGINS; then + mkdir "${T}"/plugin-test || die + echo "obj-m += test.o" > "${T}"/plugin-test/Kbuild || die + > "${T}"/plugin-test/test.c || die + if [[ $(LC_ALL=C make -C "${KV_OUT_DIR}" ARCH="$(tc-arch-kernel)" \ + HOSTCC="$(tc-getBUILD_CC)" M="${T}"/plugin-test 2>&1) \ + =~ "error: incompatible gcc/plugin version" ]]; then + ewarn "Warning: detected kernel was built with different gcc/plugin versions," + ewarn "you may need to 'make clean' and rebuild your kernel with the current" + ewarn "gcc version (or re-emerge for distribution kernels, including kernel-bin)." + fi + fi + + linux-mod_src_compile + 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 + # cflags: avoid noisy logs, only use here and set first to let override + # ldflags: abi currently needed if LD=ld.lld + CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \ + RAW_LDFLAGS="$(get_abi_LDFLAGS) $(raw-ldflags)" \ + emake "${NV_ARGS[@]}" -C nvidia-settings + elif use static-libs; then + emake "${NV_ARGS[@]}" -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 + [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=( + # nvidia_icd/layers(vulkan): skip with -X too as it uses libGLX_nvidia + $(usev !X " + libGLX_nvidia libglxserver_nvidia + nvidia_icd.json nvidia_layers.json") + $(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 + ) + local skip_modules=( + $(usev !X "nvfbc vdpau xdriver") + $(usev !driver gsp) + 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 driver " + +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.") + +For general information on using ${PN}, please see: +https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers" + readme.gentoo_create_doc + + if use driver; then + linux-mod_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 + + 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}; assert + 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]} =~ _BINARY$ ]]; then + into=/opt/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 + [[ ${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]} + insinto ${into} + doins ${m[0]} + done < .manifest || die + + # MODULE:installer non-skipped extras + exeinto /lib/systemd/system-sleep + doexe systemd/system-sleep/nvidia + dobin systemd/nvidia-sleep.sh + systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend}.service + + dobin nvidia-bug-report.sh + + # MODULE:powerd extras + if use amd64; then + systemd_dounit systemd/system/nvidia-powerd.service + + insinto /usr/share/dbus-1/system.d + doins nvidia-dbus.conf + fi + + # 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 +} + +pkg_preinst() { + has_version "${CATEGORY}/${PN}[wayland]" && NV_HAD_WAYLAND= + + use driver || return + linux-mod_pkg_preinst + + # 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_pkg_postinst + + readme.gentoo_print_elog + + if [[ -r /proc/driver/nvidia/version && + $( ${EROOT}/etc/portage/package.mask/${PN}" + else + ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask" + fi + ewarn "...then downgrade to a legacy branch if possible. For details, see:" + ewarn "https://www.nvidia.com/object/IO_32667.html" + fi + + if use kernel-open; then + ewarn + ewarn "Open source variant of ${PN} was selected, be warned it is experimental" + ewarn "and only usable with Turing / Ampere and later GPUs, aka GTX 1650+." + ewarn "Please also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html" + ewarn + ewarn "Many features are not yet implemented in the drivers and limitations are" + ewarn "to be expected. Please do not report non-build/packaging bugs to Gentoo." + ewarn "Switch back to USE=-kernel-open to restore functionality if needed for now." + fi + + if use wayland && use driver && [[ ! -v NV_HAD_WAYLAND ]]; then + elog + 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 +} diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild index 7e9da0275ad5..e99ade1ee066 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild @@ -82,7 +82,6 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - "${FILESDIR}"/nvidia-extras-470.141.03-clang16.patch "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-390.144-desktop.patch "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild index b8881ceb9cd5..fc9b5ce2c880 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild @@ -82,7 +82,6 @@ QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*" PATCHES=( "${FILESDIR}"/nvidia-drivers-470.141.03-clang15.patch - "${FILESDIR}"/nvidia-extras-470.141.03-clang16.patch "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch "${FILESDIR}"/nvidia-settings-390.144-desktop.patch "${FILESDIR}"/nvidia-settings-390.144-no-gtk2.patch -- cgit v1.2.3