diff options
Diffstat (limited to 'x11-drivers')
-rw-r--r-- | x11-drivers/nvidia-drivers/Manifest | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r3.ebuild (renamed from x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r2.ebuild) | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03-r1.ebuild (renamed from x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03.ebuild) | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01-r1.ebuild (renamed from x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01.ebuild) | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03-r1.ebuild (renamed from x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03.ebuild) | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-530.41.03.ebuild | 262 |
6 files changed, 267 insertions, 0 deletions
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest index cab18f59..31c5f21d 100644 --- a/x11-drivers/nvidia-drivers/Manifest +++ b/x11-drivers/nvidia-drivers/Manifest @@ -2,3 +2,4 @@ DIST NVIDIA-Linux-x86_64-390.157.run 85835541 BLAKE2B 44b855cd11f3b2f231f9fb9049 DIST NVIDIA-Linux-x86_64-470.182.03.run 271685302 BLAKE2B 47acdc53dea1698558fea8e18f481341dd542b725153a83563f9da420844b59db41f69a8eb7ad7e16a22050a7a6cffc2265a9cb8832cb5a6439c6a5b0910bfce SHA512 73619d65bd3267427acaf2deee07a2c98c490df937aa13e2c95d54cfd19ce2a82a91d3a5aa886dbe88f6230251f9cf54c38f5841cfacd77e53301e8d61fa3d7d DIST NVIDIA-Linux-x86_64-515.105.01.run 363738348 BLAKE2B b78b7e9dbc1450a7d01d9b3b75e0612ce0b71f8647dc5ee084660c9cb12a8ac4b2f278d49b195e0f4600d02f3297af796158cbca9cdaff0d27f78f56153bdefd SHA512 9b9e820754254c70aeab2bcc1cfdae396d3b30fb948198e378f764a6f0d89ad6f6687afffa2d6f48072ab726c6d180dc3c83891eef61f273c0b11f7bc2c9bd67 DIST NVIDIA-Linux-x86_64-525.116.03.run 414602354 BLAKE2B f46c88b579901cd4bf0263f046fc2915a8f147af4c4669d849fadd3df1dd6aad913a8cc27f9dde3c5ba9aa3f40df725220d06b590ccf9e185ecd720eb3977836 SHA512 684c2eddb621a18dddf047cc7d89521a4841fedbfad674e6ccb0bac7dba141a6e8e3ee77b6f2a692dab6d6e3310a88d38ea14f8198e94b21a299927e69234114 +DIST NVIDIA-Linux-x86_64-530.41.03.run 344312858 BLAKE2B bb5507afd23e6e063314532f37e5c7cc2530f96f359664d79ebac998c6a32ee238790b4aa66339a913e31114d22795e8e80aebced2260ff04b5d3589af472fc9 SHA512 90068122824322884ec8f3e4be2fe7f76bf07ee1163baf6da15d09ba3ff886e5c5ef72016509eef9f4af9d85f154ebbe051d5fb3af5e867f1f67f03af8068100 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r2.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r3.ebuild index d7d6682e..bd760297 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r2.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.157-r3.ebuild @@ -37,6 +37,7 @@ RDEPEND=" !!x11-drivers/nvidia-drivers:470 !!x11-drivers/nvidia-drivers:515 !!x11-drivers/nvidia-drivers:525 + !!x11-drivers/nvidia-drivers:530 acpi? ( sys-power/acpid ) dkms? ( ~sys-kernel/${PN}-dkms-${PV}:${SLOT} ) wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03-r1.ebuild index 25c5a870..69292a88 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-470.182.03-r1.ebuild @@ -37,6 +37,7 @@ RDEPEND=" !!x11-drivers/nvidia-drivers:390 !!x11-drivers/nvidia-drivers:515 !!x11-drivers/nvidia-drivers:525 + !!x11-drivers/nvidia-drivers:530 acpi? ( sys-power/acpid ) dkms? ( ~sys-kernel/${PN}-dkms-${PV}:${SLOT} ) wayland? ( diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01-r1.ebuild index 62400c2f..44bee149 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.105.01-r1.ebuild @@ -37,6 +37,7 @@ RDEPEND=" !!x11-drivers/nvidia-drivers:390 !!x11-drivers/nvidia-drivers:470 !!x11-drivers/nvidia-drivers:525 + !!x11-drivers/nvidia-drivers:530 acpi? ( sys-power/acpid ) dkms? ( ~sys-kernel/${PN}-dkms-${PV}:${SLOT} ) wayland? ( diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03-r1.ebuild index 6c7e061a..9d9fb40a 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-525.116.03-r1.ebuild @@ -37,6 +37,7 @@ RDEPEND=" !!x11-drivers/nvidia-drivers:390 !!x11-drivers/nvidia-drivers:470 !!x11-drivers/nvidia-drivers:515 + !!x11-drivers/nvidia-drivers:530 acpi? ( sys-power/acpid ) dkms? ( ~sys-kernel/${PN}-dkms-${PV}:${SLOT} ) wayland? ( diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-530.41.03.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-530.41.03.ebuild new file mode 100644 index 00000000..cacacdbb --- /dev/null +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-530.41.03.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit flag-o-matic multilib-minimal portability toolchain-funcs unpacker + +NV_URI="https://us.download.nvidia.com/XFree86/" +AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" +DESCRIPTION="NVIDIA Accelerated Graphics Driver" + +SRC_URI="amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )" + +EMULTILIB_PKG="true" +KEYWORDS="-* ~amd64" +RESTRICT="bindist mirror strip" +LICENSE="GPL-2 NVIDIA-r2" +SLOT="530" + +IUSE="acpi +dkms multilib +tools wayland +X" +REQUIRED_USE="tools? ( X )" + +COMMON=" + acct-group/video + acct-user/nvpd + net-libs/libtirpc + X? ( + >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}] + media-libs/libglvnd[X,${MULTILIB_USEDEP}] + ) +" + +DEPEND="${COMMON}" + +RDEPEND=" + ${COMMON} + >=virtual/opencl-3 + !!x11-drivers/nvidia-drivers:390 + !!x11-drivers/nvidia-drivers:470 + !!x11-drivers/nvidia-drivers:515 + !!x11-drivers/nvidia-drivers:525 + acpi? ( sys-power/acpid ) + dkms? ( ~sys-kernel/${PN}-dkms-${PV}:${SLOT} ) + wayland? ( + gui-libs/egl-gbm + >=gui-libs/egl-wayland-1.1.10 + ) + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + ) +" +PDEPEND="tools? ( ~x11-misc/nvidia-settings-${PV}:${SLOT} ) +" + +QA_PREBUILT="opt/* usr/lib*" +S=${WORKDIR}/ +PATCHES=( + "${FILESDIR}"/locale.patch +) + +pkg_setup() { + export DISTCC_DISABLE=1 + export CCACHE_DISABLE=1 + + NV_DOC="${S}" + NV_OBJ="${S}" + NV_SRC="${S}/kernel" + NV_MAN="${S}" + NV_X11="${S}" + NV_SOVER=${PV} +} + +src_prepare() { + default + local man_file + for man_file in "${NV_MAN}"/*1.gz; do + gunzip $man_file || die + done + + 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 +} + +donvidia() { + nv_LIB="${1}" + nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})" + nv_DEST="${2}" + nv_LIBNAME=$(basename "${nv_LIB}") + + if [[ "${nv_DEST}" ]]; then + exeinto ${nv_DEST} + action="doexe" + else + nv_DEST="/usr/$(get_libdir)" + action="dolib.so" + fi + + ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}" + + if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then + dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} + fi + + dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} +} + +src_install-libs() { + local inslibdir=$(get_libdir) + local GL_ROOT="/usr/$(get_libdir)" + local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" + local nv_libdir="${NV_OBJ}" + + if has_multilib_profile && [[ ${ABI} == "x86" ]]; then + nv_libdir="${NV_OBJ}"/32 + fi + + if use X; then + NV_GLX_LIBRARIES=( + "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}" + "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}" + "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}" + "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}" + "libOpenCL.so.1.0.0 ${CL_ROOT}" + "libcuda.so.${NV_SOVER}" + "libnvcuvid.so.${NV_SOVER}" + "libnvidia-compiler.so.${NV_SOVER}" + "libnvidia-allocator.so.${NV_SOVER}" + "libnvidia-eglcore.so.${NV_SOVER}" + "libnvidia-encode.so.${NV_SOVER}" + "libnvidia-glcore.so.${NV_SOVER}" + "libnvidia-glsi.so.${NV_SOVER}" + "libnvidia-glvkspirv.so.${NV_SOVER}" + "libnvidia-opencl.so.${NV_SOVER}" + "libnvidia-ptxjitcompiler.so.${NV_SOVER}" + "libnvidia-opticalflow.so.${NV_SOVER}" + "libvdpau_nvidia.so.${NV_SOVER}" + "libnvidia-ml.so.${NV_SOVER}" + "libnvidia-tls.so.${NV_SOVER}" + ) + + if has_multilib_profile && [[ ${ABI} == "amd64" ]]; then + NV_GLX_LIBRARIES+=( + "libnvidia-ngx.so.${NV_SOVER}" + "libnvidia-rtcore.so.${NV_SOVER}" + "libnvoptix.so.${NV_SOVER}" + ) + fi + + for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do + donvidia "${nv_libdir}"/${NV_LIB} + done + fi +} + +src_install() { + donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER} + donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER} + donvidia ${NV_OBJ}/libnvidia-nvvm.so.${NV_SOVER} + donvidia ${NV_OBJ}/libnvidia-vulkan-producer.so.${NV_SOVER} + donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER} + donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER} + + if has_multilib_profile && use multilib; then + local OABI=${ABI} + for ABI in $(multilib_get_enabled_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" + + if use X; then + donvidia ${NV_X11}/libglxserver_nvidia.so.${NV_SOVER} /usr/$(get_libdir)/nvidia/xorg + + insinto /usr/$(get_libdir)/xorg/modules/drivers + doins ${NV_X11}/nvidia_drv.so + + insinto /usr/share/X11/xorg.conf.d + newins ${FILESDIR}/nvidia-drm-outputclass.conf 50-nvidia-drm-outputclass.conf + + insinto /usr/share/glvnd/egl_vendor.d + doins ${NV_X11}/10_nvidia.json + + exeinto /opt/bin + doexe ${NV_OBJ}/nvidia-xconfig + + doman "${NV_MAN}"/nvidia-xconfig.1 + fi + + insinto /etc/modprobe.d + doins "${FILESDIR}"/nouveau.conf + + insinto /etc/vulkan/icd.d + doins nvidia_icd.json + + insinto /etc/vulkan/implicit_layer.d + doins nvidia_layers.json + + insinto /etc/OpenCL/vendors + doins ${NV_OBJ}/nvidia.icd + + exeinto /opt/bin/ + 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 + doexe ${NV_OBJ}/nvidia-modprobe + + fowners root:video /opt/bin/nvidia-modprobe + fperms 4710 /opt/bin/nvidia-modprobe + dosym /{opt,usr}/bin/nvidia-modprobe + + newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi + newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced + newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced + + newdoc "${NV_DOC}/README.txt" README + dodoc "${NV_DOC}/NVIDIA_Changelog" + doman "${NV_MAN}"/nvidia-smi.1 + doman "${NV_MAN}"/nvidia-cuda-mps-control.1 + doman "${NV_MAN}"/nvidia-modprobe.1 + doman "${NV_MAN}"/nvidia-persistenced.1 + + docinto html + dodoc -r ${NV_DOC}/html/* +} + +_dracut_initramfs_regen() { + if [ -x $(which dracut) ]; then + dracut -N -f --no-hostonly-cmdline + fi +} + +pkg_preinst() { + if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then + rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* + fi + + if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then + rm -f "${ROOT}"/etc/env.d/09nvidia + fi +} + +pkg_postinst() { + if [ $(stat -c %d:%i /) == $(stat -c %d:%i /proc/1/root/.) ]; then + _dracut_initramfs_regen + fi +} + +pkg_postrm() { + if [ $(stat -c %d:%i /) == $(stat -c %d:%i /proc/1/root/.) ]; then + _dracut_initramfs_regen + fi +} |