x11-drivers/nvidia-drivers: Old.

Package-Manager: Portage-2.3.24, Repoman-2.3.6
This commit is contained in:
Jeroen Roovers
2018-03-23 16:16:36 +01:00
parent ff2f230569
commit b98daed9fd
2 changed files with 0 additions and 592 deletions

View File

@@ -5,7 +5,6 @@ DIST NVIDIA-FreeBSD-x86-378.13.tar.gz 59610253 BLAKE2B 723b392b869dd5cc9244cfe9d
DIST NVIDIA-FreeBSD-x86-381.22.tar.gz 60112159 BLAKE2B 4a61e9a09218eb7d259f82d0a43fee313754004c8716e921b9a83a3e87fff9a291450bef5d7304b2a7ddf5750a830fb7c5cc9dab890dac4a714354265ca25034 SHA512 ffe5882051fad081854e7b7fefe86a4da55b263b2ca217664991a7e0d84ff2f22d62a37c89afd578f3c99c12be897e5db7a3d1c71c747df655af8e220eb983fa
DIST NVIDIA-FreeBSD-x86-384.111.tar.gz 63692297 BLAKE2B ae4bb643fd46afd14bf99f2ab5ceab1caf9ceed4e26b097814055495c5611a03ba731dd221d32a94b91bc5a4336ad64009b418e7fc814f621c473f6efb68942a SHA512 901f1e0414334e27d010cbb7f7bf1deb14d72ad6eaa154ec9b03fa82c370aa982f5dc691f72ec4dca7c555c34828479064192951981134ce1b40a32b70e6d58f
DIST NVIDIA-FreeBSD-x86-387.34.tar.gz 64228643 BLAKE2B 80011df5d037cd0a2a6faccf6c990e6019cb85c906c1410d4dde033a8a945ecd46e80a1315e46dc05fa47003eb328c6b8e8e41e18dce60942e645c0e6b813717 SHA512 875648459a149d506b20eb7105e73086e1fb51dddfbd8b484b8cc4793682c088ba16b3d374b0e807738f7aa7489dd9eab2449f70bc9feefeec0bf3a88025b9ef
DIST NVIDIA-FreeBSD-x86-390.25.tar.gz 63975116 BLAKE2B 9a8a512ee9942b08a698aadb350aaa690df9345f39326ea3bc6a735e7a8fb5cbc2a67a27a9496088c1f005b64bf1de667e08e530d038959300645ff4c0a41eed SHA512 7e9b2ab143653159710a4a0669a43d20c42186693fa674c6e4f2c14aa555c448f8665e61d223554fcb15815d9da69ab6351c4fb209ae52d0b60b5c1b4f537d1f
DIST NVIDIA-FreeBSD-x86-390.42.tar.gz 64258071 BLAKE2B 765b55676127ff64d90ee65bb3d4a400b1f15f741338a09b09a926fb465b47b6d7036c6c761d64b9dee76ad4cfacb97888a3053bbe62c769cfb3155e7c13d879 SHA512 1271e3bdf55b2c03e63083b3b867fa03d4d2e71ab2a8a0100bd137acedb1fef2416045079bbccd0fc48255496128c37ab619fa5a3e7b992b9d96cf288bc6e4b0
DIST NVIDIA-FreeBSD-x86_64-304.137.tar.gz 36474676 BLAKE2B bd75e2916d34f76566d838406419991a860118830366f0297fa63baade3a99f637dae601d6bc6a051596222f2715297dffbf9b81ff5478b030741e6c8a09bc13 SHA512 f0ae7ccea417aceedf34bfb9c96fd79b31cbf74a8fa59d5199b0ad7b81b8a4aeb66cd4801a45cc37f836979cb4267aa69e08517beaa9b8cb9c66a477d02ef8de
DIST NVIDIA-FreeBSD-x86_64-340.106.tar.gz 61169129 BLAKE2B 0a8e0deb883025d20df5165f39042bcee5d75ea78b19733cff014448c8d62022dbb98af2adebd13485e281a52c9a1c4986ae020b4eb6a821a411836e7333d4f1 SHA512 c2d0a0b1856522b28243697db22ad99d8521b00d9dfa2da724f2ee243b545b7dbf24319d9a0939855bab29251f001063391a760bd3db750bf9950ce1f9376847
@@ -14,14 +13,12 @@ DIST NVIDIA-FreeBSD-x86_64-378.13.tar.gz 58779963 BLAKE2B d0a165dab740b25e1d9705
DIST NVIDIA-FreeBSD-x86_64-381.22.tar.gz 59284579 BLAKE2B 45703b5658c586fe2fbfaf84a54a591a7d25e836195c47c43375b74a730c1a7aa4dd7bd17d13e7194b37d51da0f11540da1bee564e1c27351ecc6915e65012d5 SHA512 51c5a87fabe87ec7f2589ed97d97447b127ecb5fe501c60bc7c9fce74141c127f4f9bb820d2a9b34fb56db436476d0cb18a73845ab4e7ec2315d4975c8ce4e32
DIST NVIDIA-FreeBSD-x86_64-384.111.tar.gz 62886396 BLAKE2B d92cd0b96165450599100b1985fe1844d2e5eb4ee2f560a94445c1686e9701fbb0e30dd8b7f6f6f6cf329cea335f6f8f6bd3a75c7b583599420cf415de898eb5 SHA512 320315e7817474ccb026f9edf15572b445d71076a456fec59801959535ed1f92071f372c3284327b11e82a73d0efa46bacb907ea875f631c39bfd4217c1504bf
DIST NVIDIA-FreeBSD-x86_64-387.34.tar.gz 63387097 BLAKE2B 53689ba098b4a4de08dca056618ea533c92d17137ec954dea0ae71e1b2c825c021979871e4ff82c820be0a78d3c365f282b760940ebe2caa1ca5bfd2453e178e SHA512 0a905ee72ee6f4e9c941e5dd1f7cddf96bfb20c6da32fd05599258e1bb154f68463d775ba8ff4f67f0d4b8e637e9ed9624fc9a4873a1f2621dc86732f0d6d70d
DIST NVIDIA-FreeBSD-x86_64-390.25.tar.gz 63303401 BLAKE2B 968fc854bcd37e91d7fa99aebaa0e49d3d1a293e8a20943f58727b73d048d6c4ceb3cf2fa46f0a858d75074bebfe91a8bdcf1b09d237723ee7f108fb633dc592 SHA512 859f1baa320e55a8c5bd7d06bc601733978a0aedfd841e19c88373ca18dc87cfd9ee8a1e2ae9af29dc37233eb0656a5d9e45d9a36cda4dad78e3e363c9f55a41
DIST NVIDIA-FreeBSD-x86_64-390.42.tar.gz 63578748 BLAKE2B ebae1724c8a8125c15dff5466677b4217586a2851bd8f8e831b55e236b00bd68ba421b21da87bf8389b17f59069482276c0ef923f85d47dfb701cd6e5fda8a6b SHA512 0fde34e642fb92d099166530cdf3eb6301f11068a4780decab33c68e046aea58904f1e8fd2189900a2b140e536933de418b27a2d40e1d7e486d3df1143370007
DIST NVIDIA-Linux-armv7l-gnueabihf-375.82.run 26650801 BLAKE2B 31446667065c56b48f6a3e737afe29a4517459d3462138136bffe383bc6fe514d6e80b49c391c27edc96b8abc3da3dd4d6ee3f3dca17f3c9a0f1cdf0e72cf099 SHA512 28554f1c24fe63c9257c0de3e84e4e739a45bf1c20ec7a53bc2c1b69b4e2355675061491ef5b03f3ae489cf623e553cfa68442f5536f137837327036d1c53d63
DIST NVIDIA-Linux-armv7l-gnueabihf-378.13.run 26514235 BLAKE2B 2b3c540704496a290be7ae3f1ff378487c75af2298c12488da8b3a1814446e5df02a1ed99afd8ee7fc459d950aab472155359eae0bf56ac83389711d70638152 SHA512 253786a821df85fa926ae842114321b3c70502f887ea7c2b6790dfe3836039ee5d390e6722ca8785904ec6487e465916923d3042dc6191b3b4522c3161b80cb0
DIST NVIDIA-Linux-armv7l-gnueabihf-381.22.run 26815484 BLAKE2B e5f0241b07d1e54edea2025dd30061d1018c68cc2c7136c507eb894bbad5be3d0724494e2b9f33d1f8f60da4904999bbb964e6f2e78d045d7cd86bcd46b7f6d0 SHA512 934cda37c7aed26243b5b661122e1c060de5b4df890aaf2295b6650dddea37cb4f0e3f0bebddb00b5d687b66ab5e028a203195c4d4ad3379593babda42febe77
DIST NVIDIA-Linux-armv7l-gnueabihf-384.111.run 28892959 BLAKE2B 7cd07fe8fda8b98b7ee7841a0ecad51f0a90ace332fb5ebd4dbf7fc04e47b627fe005712fe19b05e0e7eb5208d2cf413a87ed69330e8bd9a6f87ac41f6919dc4 SHA512 af1d29c3aa6aad8c64d698ca2a725d267e7ff299d683e5307c82e7306834ce1716084c492d2604db0e5d33ba4228fbf85e5f6275bedfb17980e33b6318cb06c9
DIST NVIDIA-Linux-armv7l-gnueabihf-387.34.run 29406773 BLAKE2B af27fb1bfa8e432c83220f88c57219d572dfab2d3624c8702759a747f25ff962dba7c39028af5746e04c913c9a53dfbec8a46801bfa7e38df65a8823c4858cca SHA512 cb631dc3b851d84881dfcabee776c68a935853d03f21595acfea84a3efbc85276070f9d0958c0bcced1e66f42f25ecf3fd7d615c715274130ca24426da678c2e
DIST NVIDIA-Linux-armv7l-gnueabihf-390.25.run 28594426 BLAKE2B b3890001073d9fb79e085f376cf2a0e23d813d7a02f8678cbda7aa88610a2b4c1a1b4b5d7ec7a0d6c1b556fd93dfe97522368c83fa3e2ec74883ec186dc52c2f SHA512 5958bd7429d7889760bcc22657f3da7e4e3ff9c1eb0460686c1a9441dc22c81efbd0858970535143506ceb989951a89d06fee82c7a5e90c699df0733552851f4
DIST NVIDIA-Linux-armv7l-gnueabihf-390.42.run 28680665 BLAKE2B 41ddd2870a6ac128b4988e724481fc43d1df902a6f87438170b39f299ab190e0facf61a53c9322f1f1ea3b9386b0df88c59beb600e44056c1c1217668f9bc9e1 SHA512 7c5ca46cce345d53f0991b6076ee62a2e777e5cb2b5b2612eaec88fb0d4f53e66d88b4978dfb15f23a80af57f1834dd9016daeb1d3b329cee1f4e0777afb5979
DIST NVIDIA-Linux-x86-304.137.run 41504115 BLAKE2B 5938d4df818947e5576172c0ee9bfa42a2fc49a7a7a2b14128cf3b967dfea6d4523901b33283284d450cfadc2c6d72a82a1533b27ebb4b542b6b1454fe8ae960 SHA512 021c5a88d50489aa0a1c7eac14259e23542b93578ae339995a2e38b786d06d239968c07933cab3fb78a922cffc7e213d6fa3fe07e34065a9c7f03e24f8729370
DIST NVIDIA-Linux-x86-340.106.run 38816967 BLAKE2B b3ab5613359b43eaace36de9a8ab753df954bdf60e5acfe168e270474e0dc400acd46b5dcec809fad3d59babdf52988b3b5a8c20e8a0253b6388b7eb60ff4ba1 SHA512 923da7d61ef89a7bd83e0223c72fcdc556ef31cb97015a129a3adbdc3aad29dbf49f6fd23dc5188a53722e22cf4ba35c6a98e6ca9fdc6c24bb72ab87153d8bc4
@@ -30,7 +27,6 @@ DIST NVIDIA-Linux-x86-378.13.run 44397547 BLAKE2B 5b45bdceba75e214028b9f59a36554
DIST NVIDIA-Linux-x86-381.22.run 42931990 BLAKE2B cf1ae154854860557bf3e4a50216f1373ff66a45535e7beec67392b1cd1d40a02d758fa3e1cfa0462145b912430b0d1a3b6de3e6d6ede8aa1f484ea0ab46f816 SHA512 15723bfa25b0f39224ad5098c784a292abe4bf1daafaeb2f1df910bbab466e666b848b12e50b0bdd45f83e2d81957425a63501550b3dc5eb8fe3e576a8a10d22
DIST NVIDIA-Linux-x86-384.111.run 46999570 BLAKE2B bb2439fb12400e13a65f9dd3712f1a9030bf46fedc070aed0cda77365c62a06376604821adc53e6ea69ebf357f5243e7307d46a8ae14c0d8ef289f87e655f88f SHA512 59acc24ec534f69972604828231895df10cbd46951762ded6f0a1b11c8d0ce3c6fb82a60197dd04389bf6e27fcc45f80fd91a72acefb8ccf9d622a910ccfb736
DIST NVIDIA-Linux-x86-387.34.run 47797853 BLAKE2B 4ae211ee00e09fe385f24e05cfac3af28447ec18e7a7f53e7f310c210ec22f60094be087aae45d0ea99c90214a07d3c46ce6867984ac0ff6e56559693fcdf148 SHA512 ba9362123a75f85a0a5a9dcc95c06bcb350a8dff2db864db30a73172db44006fa39eee8e23cf959ab2012b61b922d1f0d7ab225329815737819f27d1be300b95
DIST NVIDIA-Linux-x86-390.25.run 46767313 BLAKE2B eef1d1f684ca5f1a521d6e50cca8b7987b16ac50111ef8b2aa74cc31d0cace40819d91c41480dde3d9f173b2d11f07a7c83442ad23db2be2369cb5aa8ec31886 SHA512 59f5d832a0372ec5a19e356f3cf9b82f1f704381683eca845092659df03791b21511c32f3c2bb5a263978c86b2008c1fdfde3b3a125100235948291cad99f8b3
DIST NVIDIA-Linux-x86-390.42.run 47248228 BLAKE2B 1a9ca86c8e449627d68e474f0c4226d55839b27d06c630a059f1a36007b37328b7be2ecf12a94b82722e088b387ef943c4e117fd1a35743b053959160950e7a7 SHA512 079cfae9ce318e30d8699c7a1e9b8fc528382be68605ceea16b5cb671d11588098af001b6cb4c66c904a248193742efc450e18101f9dda73c1ca101ab8aca2ce
DIST NVIDIA-Linux-x86_64-304.137.run 70087133 BLAKE2B 8db0ade7cf64231ae11e6fc55a16a68a2f7b11a8bb7debb49799fee96eba06a3062b97fe539b093727623a1ed1067282813de047c2aeb89d93bf35a97c71aac5 SHA512 d7fae1e486005ffa2f2bf7f14f901bf5156fc784407a9acfea584f49bdab92ff5f4d0fb66c4c5b2800a461fc06aebb7d760bcb59f69ce4f2cb4e03e11816b3e9
DIST NVIDIA-Linux-x86_64-340.106.run 69987642 BLAKE2B 9b5644a58169557bda2ca6b367909bbbbe9c94ab869a91a4df8f8446a1e66f051f8b9c67e10d809d7e7a319fb318be3c5d0f35862cb315fdaf5623ce8794efb5 SHA512 64474a2dc664142868125df3562ccb676cef02659c5e45d570a2f00f2ab172ba3e61ea6ca42faade1747516c9a0c8b2c4e7cd3037ee90fb072b0c5cae45431bc
@@ -39,7 +35,6 @@ DIST NVIDIA-Linux-x86_64-378.13.run 76239469 BLAKE2B 0f2be330645f8d9d2828fa6d159
DIST NVIDIA-Linux-x86_64-381.22.run 76581130 BLAKE2B fdb5912a775b56edf7dd784b640997fe683d0a32d57db6079dc5466a1a8dc1354cd31ff86aa1e993e0a33163e4c18f6a7aa990e334448ad069db3a5ffc4f1ffa SHA512 669a3dd0896d68ba8eef4689b01971b92ec1c54e6cf2a9ff8d3f281ae9f2fe402f079e76109b65e698d76798bcc7a9bb43da9d128fec59ac1fafafd1c4a1e42c
DIST NVIDIA-Linux-x86_64-384.111.run 81005322 BLAKE2B f3359ee60d11e823981583669ed598f4dfb549c0cc208e34671af81ad4f88eb23581d86309442a5c6aa1f83a0fb9dc7376c171b7d09ef42ee3d26e67c6350f44 SHA512 ddfe787a37f2a0e5409b302b13da16bd32a4a018958aa6f3b046eae7bf06d140f8d8f496e04726c57057139ebfce40811240b13d6a4ac6412655af6b257a0c5e
DIST NVIDIA-Linux-x86_64-387.34.run 82784271 BLAKE2B b7140d5d6a693892df50b3ad2e20387673dec6b5ac609cc0300bdc4b4a93ca94849255699126e4d55e67f10e488bfe6008e987197ea239b1a1b643b4ae5c7808 SHA512 6742768f1258a028c9ba56ad1d72f27d7eea4b6bfd324ba29c7f057ab5819816bd728aeaf2a8058031dadcd4c51bc6d08f0e0e0e26c68ed57955e90d68ac5a4b
DIST NVIDIA-Linux-x86_64-390.25.run 81242220 BLAKE2B 8ace6a0dea4cc3387912cf3359fb4b88d7d00027b7e21d6bcc15c09dab8302d367f1aceb090077ae8c2f2edc6ff21defa6eddbb1581c470c02b99c0c4638b74d SHA512 23271f698b62035c47aa356f5b04e416556a4965cd2664068554d505960f737c95c3e10287d6bab825a4583d7e2153bfa5a5828e8f39f4c68af8bdf73f7bd443
DIST NVIDIA-Linux-x86_64-390.42.run 81836210 BLAKE2B a72c581b3aadb234d8e5230fb8d1a4cdbb03aa43434320e6cb3ef7b409dcc299d64b21b7c822736760fc12193da2d603009b8353312573b2b2a16311a88fc96b SHA512 6cbf02630ac79a5cbb37f442f4def2a196b4a9d2a3600b0f5cdc3c148dd59d07994a2cee2efe0ac4139b6543698331c07f015c37b391d4f00acab7b2f033ad18
DIST nvidia-settings-304.137.tar.bz2 1481361 BLAKE2B cf52a55a34eeb03a685a683487af6a198ba467dd8ba9983cc75624a37a226373cd931d98e8448b7b8ed430c54be2118c7b240ed2a9100b19bec5e832e2f6cdad SHA512 676d1f70c9a78ee234f5f1a283412430a386fa604de211afba02806a45906c5e246a002989b724d74752178d28c92a268de1c98d4c87876797d991253f16b0cc
DIST nvidia-settings-340.106.tar.bz2 1549841 BLAKE2B 3419467424bc05a4a36f588e326eac4214250686f54c6c440c9a46bab80b15dee77e65d5880ed4338c0fc421306844d20a4dda0d5151a8d49441ef5048ab9bf6 SHA512 670f8469d5127f0966794ed822492f16f7a84656530d0b96f1ccdc915e6c588e9f1417b7ce1cc741df256383292820affaa10784ab748575f4adf2f98f961a27
@@ -48,5 +43,4 @@ DIST nvidia-settings-378.13.tar.gz 2112676 BLAKE2B 7e3e7c20986c184ddb08808706902
DIST nvidia-settings-381.22.tar.gz 2127491 BLAKE2B 7721ed9df7c01671a56a720e75768c80debe8520aed5a838e1e1d365651db2ae42b0cd21801c60aa18944f8d4751fadac206a388f1cf107a03a25ccb8aeb5c5f SHA512 79cd41b9c0e63b69574caddb62437132810ecb4cd07b90899976ae8535948f28d72021fc9a6969559909cf0f7a5d411b0202782970d64a82c636e7738c9d5681
DIST nvidia-settings-384.111.tar.bz2 1631841 BLAKE2B 32c102c77234d3c9ad84ac6d343e01230747e824ee7f627f3638543aa6e37a3e652fb6d654b4bd39715d23c2b1b4da0a9f611920cddd893e34d8093ea4b3c3cf SHA512 4e0672858a13e22a4806b135db8c450a01bf2dd401f102837dd1a43496e38a2b4cbd518ce551fa549810a1b8959668b4f7aaa0f71302302501f226902e262c6d
DIST nvidia-settings-387.34.tar.gz 1267616 BLAKE2B 62d2fd329417f54bf384918889603921065e0ef6d4fb691e914534a75ab0062a17d8f886c593cf772d29bb6b56ce30aaf7b1548191b2f9ad5fbee71770ed5308 SHA512 559c859c0740575ab93edce013587250b98d7d2cd55198b5103fe97423d31ed9f113d83c240c402404de88074c285a07e46342538610d3d5dade7bed59d60090
DIST nvidia-settings-390.25.tar.bz2 1109030 BLAKE2B 33814af0d55c2edcaee3e1f334e29ae6e72438f4533ed00d63db17149fe6a368e16ce68ca9625814b8dacdccdf847fe2233aed73fdd028c8cb7cdad1d8036e7b SHA512 883216e9d9cffe8816430656a616a522f3dd2e24d8cec1c0392adb9cf70c8b88c10976260039b4c91a69bcaef15f89afba8a0430d08f3ba3e26491884c1b06d5
DIST nvidia-settings-390.42.tar.bz2 1109291 BLAKE2B 34eb3712286c5dccf268cc478a90f37d0fe41a32d39226973c913bb50f1f9d4943f7c49c5b3d3a5f4726209f1b6ec0a6b0a8df25a33155c4fce1b71f563b06be SHA512 5907aa76cbcd136593c0b517c0a6c08764d9b14a90fa0951278fdbaa6c44c8d3149a902bace1f8203ba621af376030bcf7c51f3579edb1cb3152a97eb443134a

View File

@@ -1,586 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
portability toolchain-funcs unpacker user udev
NV_URI="http://http.download.nvidia.com/XFree86/"
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
DESCRIPTION="NVIDIA Accelerated Graphics Driver"
HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
SRC_URI="
amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
arm? ( ${NV_URI}Linux-32bit-ARM/${PV}/${ARM_NV_PACKAGE}.run )
x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
tools? (
https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
)
"
LICENSE="GPL-2 NVIDIA-r2"
SLOT="0/${PV%.*}"
KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
RESTRICT="bindist mirror"
EMULTILIB_PKG="true"
IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
REQUIRED_USE="
tools? ( X )
static-libs? ( tools )
"
COMMON="
app-eselect/eselect-opencl
kernel_linux? ( >=sys-libs/glibc-2.6.1 )
tools? (
dev-libs/atk
dev-libs/glib:2
dev-libs/jansson
gtk3? (
x11-libs/gtk+:3
)
x11-libs/cairo
x11-libs/gdk-pixbuf[X]
x11-libs/gtk+:2
x11-libs/libX11
x11-libs/libXext
x11-libs/libXrandr
x11-libs/libXv
x11-libs/libXxf86vm
x11-libs/pango[X]
)
X? (
>=app-eselect/eselect-opengl-1.0.9
app-misc/pax-utils
)
"
DEPEND="
${COMMON}
kernel_linux? ( virtual/linux-sources )
tools? ( sys-apps/dbus )
"
RDEPEND="
${COMMON}
acpi? ( sys-power/acpid )
tools? ( !media-video/nvidia-settings )
wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
X? (
<x11-base/xorg-server-1.19.99:=
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
>=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
)
"
QA_PREBUILT="opt/* usr/lib*"
S=${WORKDIR}/
nvidia_drivers_versions_check() {
if use amd64 && has_multilib_profile && \
[ "${DEFAULT_ABI}" != "amd64" ]; then
eerror "This ebuild doesn't currently support changing your default ABI"
die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
fi
if use kernel_linux && kernel_is ge 4 16; then
ewarn "Gentoo supports kernels which are supported by NVIDIA"
ewarn "which are limited to the following kernels:"
ewarn "<sys-kernel/gentoo-sources-4.16"
ewarn "<sys-kernel/vanilla-sources-4.16"
ewarn ""
ewarn "You are free to utilize epatch_user to provide whatever"
ewarn "support you feel is appropriate, but will not receive"
ewarn "support as a result of those changes."
ewarn ""
ewarn "Do not file a bug report about this."
ewarn ""
fi
# Since Nvidia ships many different series of drivers, we need to give the user
# some kind of guidance as to what version they should install. This tries
# to point the user in the right direction but can't be perfect. check
# nvidia-driver.eclass
nvidia-driver-check-warning
# Kernel features/options to check for
CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
use x86 && CONFIG_CHECK+=" ~HIGHMEM"
# Now do the above checks
use kernel_linux && check_extra_config
}
pkg_pretend() {
nvidia_drivers_versions_check
}
pkg_setup() {
nvidia_drivers_versions_check
# try to turn off distcc and ccache for people that have a problem with it
export DISTCC_DISABLE=1
export CCACHE_DISABLE=1
if use driver && use kernel_linux; then
MODULE_NAMES="nvidia(video:${S}/kernel)"
use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
# This needs to run after MODULE_NAMES (so that the eclass checks
# whether the kernel supports loadable modules) but before BUILD_PARAMS
# is set (so that KV_DIR is populated).
linux-mod_pkg_setup
BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
# linux-mod_src_compile calls set_arch_to_kernel, which
# sets the ARCH to x86 but NVIDIA's wrapping Makefile
# expects x86_64 or i386 and then converts it to x86
# later on in the build process
BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
fi
if use kernel_linux && kernel_is lt 2 6 9; then
eerror "You must build this against 2.6.9 or higher kernels."
fi
# set variables to where files are in the package structure
if use kernel_FreeBSD; then
use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
NV_DOC="${S}/doc"
NV_OBJ="${S}/obj"
NV_SRC="${S}/src"
NV_MAN="${S}/x11/man"
NV_X11="${S}/obj"
NV_SOVER=1
elif use kernel_linux; then
NV_DOC="${S}"
NV_OBJ="${S}"
NV_SRC="${S}/kernel"
NV_MAN="${S}"
NV_X11="${S}"
NV_SOVER=${PV}
else
die "Could not determine proper NVIDIA package"
fi
}
src_prepare() {
if use pax_kernel; then
ewarn "Using PAX patches is not supported. You will be asked to"
ewarn "use a standard kernel should you have issues. Should you"
ewarn "need support with these patches, contact the PaX team."
eapply "${FILESDIR}"/${PN}-375.20-pax.patch
fi
local man_file
for man_file in "${NV_MAN}"/*1.gz; do
gunzip $man_file || die
done
if use tools; then
cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
sed -i \
-e "s:@PV@:${PV}:g" \
"${WORKDIR}"/nvidia-settings-linker.patch || die
eapply "${WORKDIR}"/nvidia-settings-linker.patch
fi
default
if ! [ -f nvidia_icd.json ]; then
cp nvidia_icd.json.template nvidia_icd.json || die
sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
fi
}
src_compile() {
# This is already the default on Linux, as there's no toplevel Makefile, but
# on FreeBSD there's one and triggers the kernel module build, as we install
# it by itself, pass this.
cd "${NV_SRC}"
if use kernel_FreeBSD; then
MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
elif use driver && use kernel_linux; then
MAKEOPTS=-j1 linux-mod_src_compile
fi
if use tools; then
emake -C "${S}"/nvidia-settings-${PV}/src \
AR="$(tc-getAR)" \
CC="$(tc-getCC)" \
DO_STRIP= \
LD="$(tc-getCC)" \
LIBDIR="$(get_libdir)" \
NVLD="$(tc-getLD)" \
NV_VERBOSE=1 \
RANLIB="$(tc-getRANLIB)" \
build-xnvctrl
emake -C "${S}"/nvidia-settings-${PV}/src \
CC="$(tc-getCC)" \
DO_STRIP= \
GTK3_AVAILABLE=$(usex gtk3 1 0) \
LD="$(tc-getCC)" \
LIBDIR="$(get_libdir)" \
NVLD="$(tc-getLD)" \
NVML_ENABLED=0 \
NV_USE_BUNDLED_LIBJANSSON=0 \
NV_VERBOSE=1
fi
}
# Install nvidia library:
# the first parameter is the library to install
# the second parameter is the provided soversion
# the third parameter is the target directory if it is not /usr/lib
donvidia() {
# Full path to library
nv_LIB="${1}"
# SOVER to use
nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
# Where to install
nv_DEST="${2}"
# Get just the library name
nv_LIBNAME=$(basename "${nv_LIB}")
if [[ "${nv_DEST}" ]]; then
exeinto ${nv_DEST}
action="doexe"
else
nv_DEST="/usr/$(get_libdir)"
action="dolib.so"
fi
# Install the library
${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
# If the library has a SONAME and SONAME does not match the library name,
# then we need to create a symlink
if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
|| die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
fi
dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
|| die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
}
src_install() {
if use driver && use kernel_linux; then
linux-mod_src_install
# Add the aliases
# This file is tweaked with the appropriate video group in
# pkg_preinst, see bug #491414
insinto /etc/modprobe.d
newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
doins "${FILESDIR}"/nvidia-rmmod.conf
# Ensures that our device nodes are created when not using X
exeinto "$(get_udevdir)"
newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
elif use kernel_FreeBSD; then
if use x86-fbsd; then
insinto /boot/modules
doins "${S}/src/nvidia.kld"
fi
exeinto /boot/modules
doexe "${S}/src/nvidia.ko"
fi
# NVIDIA kernel <-> userspace driver config lib
donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
# NVIDIA framebuffer capture library
donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
# NVIDIA video encode/decode <-> CUDA
if use kernel_linux; then
donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
fi
if use X; then
# Xorg DDX driver
insinto /usr/$(get_libdir)/xorg/modules/drivers
doins ${NV_X11}/nvidia_drv.so
# Xorg GLX driver
donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
/usr/$(get_libdir)/opengl/nvidia/extensions
# Xorg nvidia.conf
if has_version '>=x11-base/xorg-server-1.16'; then
insinto /usr/share/X11/xorg.conf.d
newins {,50-}nvidia-drm-outputclass.conf
fi
insinto /usr/share/glvnd/egl_vendor.d
doins ${NV_X11}/10_nvidia.json
fi
if use wayland; then
insinto /usr/share/egl/egl_external_platform.d
doins ${NV_X11}/10_nvidia_wayland.json
fi
# OpenCL ICD for NVIDIA
if use kernel_linux; then
insinto /etc/OpenCL/vendors
doins ${NV_OBJ}/nvidia.icd
fi
# Documentation
if use kernel_FreeBSD; then
dodoc "${NV_DOC}/README"
use X && doman "${NV_MAN}"/nvidia-xconfig.1
use tools && doman "${NV_MAN}"/nvidia-settings.1
else
# Docs
newdoc "${NV_DOC}/README.txt" README
dodoc "${NV_DOC}/NVIDIA_Changelog"
doman "${NV_MAN}"/nvidia-smi.1
use X && doman "${NV_MAN}"/nvidia-xconfig.1
use tools && doman "${NV_MAN}"/nvidia-settings.1
doman "${NV_MAN}"/nvidia-cuda-mps-control.1
fi
docinto html
dodoc -r ${NV_DOC}/html/*
# Helper Apps
exeinto /opt/bin/
if use X; then
doexe ${NV_OBJ}/nvidia-xconfig
insinto /etc/vulkan/icd.d
doins nvidia_icd.json
fi
if use kernel_linux; then
doexe ${NV_OBJ}/nvidia-cuda-mps-control
doexe ${NV_OBJ}/nvidia-cuda-mps-server
doexe ${NV_OBJ}/nvidia-debugdump
doexe ${NV_OBJ}/nvidia-persistenced
doexe ${NV_OBJ}/nvidia-smi
# install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
doexe ${NV_OBJ}/nvidia-modprobe
fowners root:video /opt/bin/nvidia-modprobe
fperms 4710 /opt/bin/nvidia-modprobe
dosym /{opt,usr}/bin/nvidia-modprobe
doman nvidia-cuda-mps-control.1
doman nvidia-modprobe.1
doman nvidia-persistenced.1
newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
fi
if use tools; then
emake -C "${S}"/nvidia-settings-${PV}/src/ \
DESTDIR="${D}" \
GTK3_AVAILABLE=$(usex gtk3 1 0) \
LIBDIR="${D}/usr/$(get_libdir)" \
NV_USE_BUNDLED_LIBJANSSON=0 \
NV_VERBOSE=1 \
PREFIX=/usr \
DO_STRIP= \
install
if use static-libs; then
dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
insinto /usr/include/NVCtrl
doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
fi
insinto /usr/share/nvidia/
doins nvidia-application-profiles-${PV}-key-documentation
insinto /etc/nvidia
newins \
nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
# There is no icon in the FreeBSD tarball.
use kernel_FreeBSD || \
doicon ${NV_OBJ}/nvidia-settings.png
domenu "${FILESDIR}"/nvidia-settings.desktop
exeinto /etc/X11/xinit/xinitrc.d
newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
fi
dobin ${NV_OBJ}/nvidia-bug-report.sh
if has_multilib_profile && use multilib; then
local OABI=${ABI}
for ABI in $(get_install_abis); do
src_install-libs
done
ABI=${OABI}
unset OABI
else
src_install-libs
fi
is_final_abi || die "failed to iterate through all ABIs"
readme.gentoo_create_doc
}
src_install-libs() {
local inslibdir=$(get_libdir)
local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
local nv_libdir="${NV_OBJ}"
if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
nv_libdir="${NV_OBJ}"/32
fi
if use X; then
NV_GLX_LIBRARIES=(
"libEGL.so.$(usex compat ${NV_SOVER} 1) ${GL_ROOT}"
"libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
"libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}"
"libGLESv1_CM.so.1 ${GL_ROOT}"
"libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
"libGLESv2.so.2 ${GL_ROOT}"
"libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
"libGLX.so.0 ${GL_ROOT}"
"libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
"libGLdispatch.so.0 ${GL_ROOT}"
"libOpenCL.so.1.0.0 ${CL_ROOT}"
"libOpenGL.so.0 ${GL_ROOT}"
"libcuda.so.${NV_SOVER}"
"libnvcuvid.so.${NV_SOVER}"
"libnvidia-compiler.so.${NV_SOVER}"
"libnvidia-eglcore.so.${NV_SOVER}"
"libnvidia-encode.so.${NV_SOVER}"
"libnvidia-fatbinaryloader.so.${NV_SOVER}"
"libnvidia-fbc.so.${NV_SOVER}"
"libnvidia-glcore.so.${NV_SOVER}"
"libnvidia-glsi.so.${NV_SOVER}"
"libnvidia-ifr.so.${NV_SOVER}"
"libnvidia-opencl.so.${NV_SOVER}"
"libnvidia-ptxjitcompiler.so.${NV_SOVER}"
"libvdpau_nvidia.so.${NV_SOVER}"
)
if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
then
NV_GLX_LIBRARIES+=(
"libnvidia-egl-wayland.so.1.0.2"
)
fi
if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
then
NV_GLX_LIBRARIES+=(
"libnvidia-wfb.so.${NV_SOVER}"
)
fi
if use kernel_FreeBSD; then
NV_GLX_LIBRARIES+=(
"libnvidia-tls.so.${NV_SOVER}"
)
fi
if use kernel_linux; then
NV_GLX_LIBRARIES+=(
"libnvidia-ml.so.${NV_SOVER}"
"tls/libnvidia-tls.so.${NV_SOVER}"
)
fi
for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
donvidia "${nv_libdir}"/${NV_LIB}
done
fi
}
pkg_preinst() {
if use driver && use kernel_linux; then
linux-mod_pkg_preinst
local videogroup="$(egetent group video | cut -d ':' -f 3)"
if [ -z "${videogroup}" ]; then
eerror "Failed to determine the video group gid"
die "Failed to determine the video group gid"
else
sed -i \
-e "s:PACKAGE:${PF}:g" \
-e "s:VIDEOGID:${videogroup}:" \
"${D}"/etc/modprobe.d/nvidia.conf || die
fi
fi
# Clean the dynamic libGL stuff's home to ensure
# we dont have stale libs floating around
if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
fi
# Make sure we nuke the old nvidia-glx's env.d file
if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
rm -f "${ROOT}"/etc/env.d/09nvidia
fi
}
pkg_postinst() {
use driver && use kernel_linux && linux-mod_pkg_postinst
# Switch to the nvidia implementation
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
"${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
readme.gentoo_print_elog
if ! use X; then
elog "You have elected to not install the X.org driver. Along with"
elog "this the OpenGL libraries and VDPAU libraries were not"
elog "installed. Additionally, once the driver is loaded your card"
elog "and fan will run at max speed which may not be desirable."
elog "Use the 'nvidia-smi' init script to have your card and fan"
elog "speed scale appropriately."
elog
fi
if ! use tools; then
elog "USE=tools controls whether the nvidia-settings application"
elog "is installed. If you would like to use it, enable that"
elog "flag and re-emerge this ebuild. Optionally you can install"
elog "media-video/nvidia-settings"
elog
fi
}
pkg_prerm() {
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
}
pkg_postrm() {
use driver && use kernel_linux && linux-mod_pkg_postrm
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
}