mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
x11-drivers/nvidia-drivers: drop 470.62.05
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
@@ -5,7 +5,6 @@ DIST NVIDIA-Linux-aarch64-495.44.run 210477242 BLAKE2B 8fb5419be19ab4feab158fb43
|
||||
DIST NVIDIA-Linux-x86-390.144.run 49210937 BLAKE2B b7e6edb55af88be74e4322ff1d270388a60a9d9809314c3a0502f86ed97edb99dfcdd3c81c5f51e681c8fcc47ecbfecd124b4d733141d23726226a3965b4c1f1 SHA512 d962c7e7b4b9c4635a887767d34a49c401a89e5975a5e57fa83366ca824ab70d5b8a81f3dce2e05e0528afddc72d70b2fcd69a216bd16d75e7b88ec704390546
|
||||
DIST NVIDIA-Linux-x86_64-390.144.run 85000417 BLAKE2B 8ecfa768fb8fe92170ff5b82698a7fb22da8bc557ab2036464bf5650b6fffc7028e25a68e1f5638f6bc171eb45a4aba459465490c7a99aacd36dc769994062e8 SHA512 9503ebf41037a14deba995288a364768cb03fb682de8653a4b0c05955b23603443c41c4216c93eac7d7efc301734416012864ede728324ab47b93ff167d93da4
|
||||
DIST NVIDIA-Linux-x86_64-460.91.03.run 178201292 BLAKE2B 4d407b7bb3a99ab71c62c3cd18dc3549c98a24e7af28276e6e6a21dd33efcab017fed3f782f6dfb060c4437cd718f19c2f9900de367cc47bf19fa2718a18ad55 SHA512 4ac11130fe5a8f1c26f459e9c19660b3ff6f23011e9f77b09ca948fc42609e523ecea70d3bf6def50a75b4a3079ab280018753fb6e53875d9bb8093a033e3b70
|
||||
DIST NVIDIA-Linux-x86_64-470.62.05.run 271634590 BLAKE2B a37d33d188e9e36c5bfb3ba48af257c76fa58e482733d96326220028a073656a45f7eb40939a54bdfc6fc0df0eec610d5efac54dac83251975ccfeb287457aec SHA512 413b2d2c9d29d91c81f9696c17eb04fce0d7bf00a54779f86ceb16b59c32479a34c4d5a29222e095a8bddbfcafd90af0451493f0cb82a0d268a9160795bbe8d1
|
||||
DIST NVIDIA-Linux-x86_64-470.62.07.run 272526158 BLAKE2B 1ead262eaecc4241b5019f043ddf11acc34acbb048abc1d3a01587d1673f4e806114ce68e3fed1053e17f17e4a450946a43aede156e0ea9a0bd5c8350d02c89c SHA512 73bc488ebba3fe6c5ac5b00e407dd64dbee8027fa088dc78c60df32bae1b777e37e493ea512718f5b08d8d41ac41efc60a4e5ad878e853472784365fe528ea45
|
||||
DIST NVIDIA-Linux-x86_64-470.63.01.run 271484294 BLAKE2B 7769f53897dccea716d459a12808d1f5a738072415639063e47dee82b489bb17121516cf585c1bb6b39f71b11f62f636a466284aba5854a5cfb4f553353cf8d3 SHA512 d3dadf93df86e5462ecb4ae6a04f03b05bf1450ad91e8c2aa73e838ddc9aa11b4e926fc32714d32bd7c606498fee5a54c77d5e40ecc08a039d3e9c2d331ad454
|
||||
DIST NVIDIA-Linux-x86_64-470.82.00.run 272296454 BLAKE2B f28f4a66fb27ccf7967ad66f9dcacc306653895a5f9c63f49e7833f5ca37e6260df37fe28abff89cc2ff9e54491b39594117235e4e87d3b1e22e58de8e69fe5b SHA512 f4135efd748d8835e9719e6ef93a86c5646a4d771c63e31f0bdaa0cf6ddf25ce9356eca58c27addb988f4cbe88c9bdcc0536512a46915826261d8f4f4247ebd8
|
||||
|
||||
@@ -1,480 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MODULES_OPTIONAL_USE="driver"
|
||||
inherit desktop linux-info linux-mod multilib-build \
|
||||
readme.gentoo-r1 systemd toolchain-funcs unpacker
|
||||
|
||||
NV_KERNEL_MAX="5.15"
|
||||
NV_URI="https://download.nvidia.com/XFree86/"
|
||||
NV_PIN="470.63.01"
|
||||
|
||||
DESCRIPTION="NVIDIA Accelerated Graphics Driver"
|
||||
HOMEPAGE="https://www.nvidia.com/download/index.aspx"
|
||||
SRC_URI="
|
||||
https://developer.nvidia.com/vulkan-beta-${PV//./}-linux -> NVIDIA-Linux-x86_64-${PV}.run
|
||||
${NV_URI}nvidia-installer/nvidia-installer-${NV_PIN}.tar.bz2
|
||||
${NV_URI}nvidia-modprobe/nvidia-modprobe-${NV_PIN}.tar.bz2
|
||||
${NV_URI}nvidia-persistenced/nvidia-persistenced-${NV_PIN}.tar.bz2
|
||||
${NV_URI}nvidia-settings/nvidia-settings-${NV_PIN}.tar.bz2
|
||||
${NV_URI}nvidia-xconfig/nvidia-xconfig-${NV_PIN}.tar.bz2"
|
||||
# nvidia-installer is unused but here for GPL-2's "distribute sources"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-2 MIT NVIDIA-r2 ZLIB"
|
||||
SLOT="0/vulkan"
|
||||
KEYWORDS="-* ~amd64"
|
||||
IUSE="+X +driver static-libs +tools wayland"
|
||||
|
||||
COMMON_DEPEND="
|
||||
acct-group/video
|
||||
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,${MULTILIB_USEDEP}]
|
||||
x11-libs/libX11[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
)
|
||||
wayland? (
|
||||
>=gui-libs/egl-wayland-1.1.7-r1
|
||||
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="
|
||||
app-misc/pax-utils
|
||||
sys-devel/m4
|
||||
virtual/pkgconfig"
|
||||
|
||||
QA_PREBUILT="lib/firmware/* opt/bin/* usr/lib*"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch
|
||||
)
|
||||
|
||||
DOCS=(
|
||||
README.txt NVIDIA_Changelog supported-gpus/supported-gpus.json
|
||||
nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt
|
||||
)
|
||||
HTML_DOCS=( html/. )
|
||||
|
||||
pkg_setup() {
|
||||
use driver || return
|
||||
|
||||
local CONFIG_CHECK="
|
||||
PROC_FS
|
||||
~DRM_KMS_HELPER
|
||||
~SYSVIPC
|
||||
~!DRM_SIMPLEDRM
|
||||
~!LOCKDEP
|
||||
~!SLUB_DEBUG_ON
|
||||
!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, so enable
|
||||
options such as CONFIG_DRM_FBDEV_EMULATION instead."
|
||||
|
||||
kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764
|
||||
|
||||
MODULE_NAMES="
|
||||
nvidia(video:kernel)
|
||||
nvidia-drm(video:kernel)
|
||||
nvidia-modeset(video:kernel)
|
||||
nvidia-peermem(video:kernel)
|
||||
nvidia-uvm(video:kernel)"
|
||||
|
||||
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" # defaults' clean sometimes deletes modules
|
||||
|
||||
if linux_chkconfig_present CC_IS_CLANG; then
|
||||
ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
|
||||
|
||||
BUILD_PARAMS+=' CC=${CHOST}-clang'
|
||||
if linux_chkconfig_present LD_IS_LLD; then
|
||||
BUILD_PARAMS+=' 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
|
||||
|
||||
if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
|
||||
ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of nvidia-drivers"
|
||||
ewarn "or was not tested with it. It is recommended to use one of:"
|
||||
ewarn " <=sys-kernel/gentoo-kernel-${NV_KERNEL_MAX}"
|
||||
ewarn " <=sys-kernel/gentoo-sources-${NV_KERNEL_MAX}"
|
||||
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
|
||||
ewarn "Do _not_ file a bug report if run into issues."
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# make user 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
|
||||
|
||||
default
|
||||
|
||||
# prevent detection of incomplete kernel DRM support (bug #603818)
|
||||
sed 's/defined(CONFIG_DRM)/defined(CONFIG_DRM_KMS_HELPER)/' \
|
||||
-i kernel/conftest.sh || die
|
||||
|
||||
sed -e '/Exec=\|Icon=/s/_.*/nvidia-settings/' \
|
||||
-e '/Categories=/s/_.*/System;Settings;/' \
|
||||
-i nvidia-settings/doc/nvidia-settings.desktop || die
|
||||
|
||||
# remove gtk2 support (bug #592730)
|
||||
sed '/^GTK2LIB = /d;/INSTALL.*GTK2LIB/,+1d' \
|
||||
-i nvidia-settings/src/Makefile || die
|
||||
|
||||
sed 's/__USER__/nvpd/' \
|
||||
nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \
|
||||
> nvidia-persistenced.service || die
|
||||
|
||||
# enable nvidia-drm.modeset=1 by default with USE=wayland
|
||||
cp "${FILESDIR}"/nvidia-470.conf "${T}"/nvidia.conf || die
|
||||
if use wayland; then
|
||||
sed -i '/^#.*modeset=1$/s/^#//' "${T}"/nvidia.conf || die
|
||||
fi
|
||||
|
||||
gzip -d nvidia-{cuda-mps-control,smi}.1.gz || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
nvidia-drivers_make() {
|
||||
emake -C nvidia-${1} ${2} \
|
||||
PREFIX="${EPREFIX}/usr" \
|
||||
HOST_CC="$(tc-getBUILD_CC)" \
|
||||
HOST_LD="$(tc-getBUILD_LD)" \
|
||||
NV_USE_BUNDLED_LIBJANSSON=0 \
|
||||
NV_VERBOSE=1 DO_STRIP= OUTPUTDIR=out
|
||||
}
|
||||
|
||||
tc-export AR CC LD OBJCOPY
|
||||
|
||||
# may no longer be relevant but kept as a safety
|
||||
export DISTCC_DISABLE=1 CCACHE_DISABLE=1
|
||||
|
||||
use driver && linux-mod_src_compile
|
||||
|
||||
nvidia-drivers_make modprobe
|
||||
nvidia-drivers_make persistenced
|
||||
use X && nvidia-drivers_make xconfig
|
||||
|
||||
if use tools; then
|
||||
nvidia-drivers_make settings
|
||||
elif use static-libs; then
|
||||
nvidia-drivers_make settings/src out/libXNVCtrl.a
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
nvidia-drivers_make_install() {
|
||||
emake -C nvidia-${1} install \
|
||||
DESTDIR="${D}" \
|
||||
PREFIX="${EPREFIX}/usr" \
|
||||
LIBDIR="${ED}/usr/$(get_libdir)" \
|
||||
NV_USE_BUNDLED_LIBJANSSON=0 \
|
||||
NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out
|
||||
}
|
||||
|
||||
nvidia-drivers_libs_install() {
|
||||
local libs=(
|
||||
EGL_nvidia
|
||||
GLESv1_CM_nvidia
|
||||
GLESv2_nvidia
|
||||
cuda
|
||||
nvcuvid
|
||||
nvidia-allocator
|
||||
nvidia-compiler
|
||||
nvidia-eglcore
|
||||
nvidia-encode
|
||||
nvidia-glcore
|
||||
nvidia-glsi
|
||||
nvidia-glvkspirv
|
||||
nvidia-ml
|
||||
nvidia-opencl
|
||||
nvidia-opticalflow
|
||||
nvidia-ptxjitcompiler
|
||||
nvidia-tls
|
||||
)
|
||||
|
||||
if use X; then
|
||||
libs+=(
|
||||
GLX_nvidia
|
||||
nvidia-fbc
|
||||
nvidia-ifr
|
||||
vdpau_nvidia
|
||||
)
|
||||
fi
|
||||
|
||||
local libdir=.
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
libdir+=/32
|
||||
else
|
||||
libs+=(
|
||||
libnvidia-nvvm.so.4.0.0
|
||||
nvidia-cfg
|
||||
nvidia-ngx
|
||||
nvidia-rtcore
|
||||
nvoptix
|
||||
)
|
||||
use wayland && libs+=( nvidia-vulkan-producer )
|
||||
fi
|
||||
|
||||
local lib soname
|
||||
for lib in "${libs[@]}"; do
|
||||
[[ ${lib:0:3} != lib ]] && lib=lib${lib}.so.${PV}
|
||||
|
||||
# auto-detect soname and create appropriate symlinks
|
||||
soname=$(scanelf -qF'%S#F' ${lib}) || die "Scanning ${lib} failed"
|
||||
if [[ ${soname} && ${soname} != ${lib} ]]; then
|
||||
ln -s ${lib} ${libdir}/${soname} || die
|
||||
fi
|
||||
ln -s ${lib} ${libdir}/${lib%.so*}.so || die
|
||||
|
||||
dolib.so ${libdir}/${lib%.so*}*
|
||||
done
|
||||
}
|
||||
|
||||
if use driver; then
|
||||
linux-mod_src_install
|
||||
|
||||
insinto /etc/modprobe.d
|
||||
doins "${T}"/nvidia.conf
|
||||
|
||||
insinto /lib/firmware/nvidia/${PV}
|
||||
doins firmware/gsp.bin
|
||||
|
||||
# used for gpu verification with binpkgs (not kept)
|
||||
insinto /usr/share/nvidia
|
||||
doins supported-gpus/supported-gpus.json
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
exeinto /usr/$(get_libdir)/xorg/modules/drivers
|
||||
doexe nvidia_drv.so
|
||||
|
||||
exeinto /usr/$(get_libdir)/xorg/modules/extensions
|
||||
newexe libglxserver_nvidia.so{.${PV},}
|
||||
|
||||
insinto /usr/share/X11/xorg.conf.d
|
||||
newins {,50-}nvidia-drm-outputclass.conf
|
||||
|
||||
# vulkan icd uses libGLX_nvidia.so and so requires X
|
||||
insinto /usr/share/vulkan/icd.d
|
||||
doins nvidia_icd.json
|
||||
insinto /usr/share/vulkan/implicit_layer.d
|
||||
doins nvidia_layers.json
|
||||
fi
|
||||
|
||||
insinto /usr/share/glvnd/egl_vendor.d
|
||||
doins 10_nvidia.json
|
||||
|
||||
insinto /etc/OpenCL/vendors
|
||||
doins nvidia.icd
|
||||
|
||||
insinto /etc/nvidia
|
||||
newins nvidia-application-profiles{-${PV},}-rc
|
||||
|
||||
# install built helpers
|
||||
nvidia-drivers_make_install modprobe
|
||||
# allow video group to load mods and create devs (bug #505092)
|
||||
fowners :video /usr/bin/nvidia-modprobe
|
||||
fperms 4710 /usr/bin/nvidia-modprobe
|
||||
|
||||
nvidia-drivers_make_install persistenced
|
||||
newconfd "${FILESDIR}/nvidia-persistenced.confd" nvidia-persistenced
|
||||
newinitd "${FILESDIR}/nvidia-persistenced.initd" nvidia-persistenced
|
||||
systemd_dounit nvidia-persistenced.service
|
||||
|
||||
use X && nvidia-drivers_make_install xconfig
|
||||
|
||||
if use tools; then
|
||||
nvidia-drivers_make_install settings
|
||||
doicon nvidia-settings/doc/nvidia-settings.png
|
||||
domenu nvidia-settings/doc/nvidia-settings.desktop
|
||||
|
||||
insinto /usr/share/nvidia
|
||||
newins nvidia-application-profiles{-${PV},}-key-documentation
|
||||
|
||||
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
|
||||
|
||||
# install prebuilt-only helpers
|
||||
exeinto /opt/bin
|
||||
|
||||
doexe nvidia-cuda-mps-control
|
||||
doman nvidia-cuda-mps-control.1
|
||||
doexe nvidia-cuda-mps-server
|
||||
|
||||
doexe nvidia-debugdump
|
||||
dobin nvidia-bug-report.sh
|
||||
|
||||
doexe nvidia-smi
|
||||
doman nvidia-smi.1
|
||||
|
||||
# install prebuilt-only libraries
|
||||
multilib_foreach_abi nvidia-drivers_libs_install
|
||||
|
||||
# install dlls for optional use with proton/wine
|
||||
insinto /usr/$(get_libdir)/nvidia/wine
|
||||
doins {_,}nvngx.dll
|
||||
|
||||
# install systemd sleep services
|
||||
exeinto /lib/systemd/system-sleep
|
||||
doexe systemd/system-sleep/nvidia
|
||||
dobin systemd/nvidia-sleep.sh
|
||||
systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend}.service
|
||||
|
||||
# create README.gentoo
|
||||
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
|
||||
|
||||
See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.
|
||||
|
||||
For general information on using nvidia-drivers, please see:
|
||||
https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers"
|
||||
readme.gentoo_create_doc
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
use driver || return
|
||||
linux-mod_pkg_preinst
|
||||
|
||||
# set video group id based on live system (bug #491414)
|
||||
local g=$(getent group video | cut -d: -f3)
|
||||
[[ ${g} ]] || die "Failed to determine video group id"
|
||||
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
|
||||
|
||||
has_version "x11-drivers/nvidia-drivers[wayland]" && NV_HAD_WAYLAND=1
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use driver && linux-mod_pkg_postinst
|
||||
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if [[ -r /proc/driver/nvidia/version &&
|
||||
$(grep -o ' [0-9.]* ' /proc/driver/nvidia/version) != " ${PV} " ]]; then
|
||||
ewarn "Currently loaded NVIDIA modules do not match the newly installed"
|
||||
ewarn "libraries and will lead to GPU-using application issues."
|
||||
use driver && ewarn "The easiest way to fix this is usually to reboot."
|
||||
fi
|
||||
|
||||
if [[ $(</proc/cmdline) == *slub_debug=[!-]* ]]; then
|
||||
ewarn "Detected that the current kernel command line is using 'slub_debug=',"
|
||||
ewarn "this may lead to system instability/freezes with this version of"
|
||||
ewarn "${PN}. Bug: https://bugs.gentoo.org/796329"
|
||||
fi
|
||||
|
||||
if [[ ${NV_LEGACY_MASK} ]]; then
|
||||
ewarn "***WARNING***"
|
||||
ewarn "You are installing a version of nvidia-drivers known not to work"
|
||||
ewarn "with a GPU of the current system. If unwanted, add the mask:"
|
||||
if [[ -d ${EROOT}/etc/portage/package.mask ]]; then
|
||||
ewarn " echo '${NV_LEGACY_MASK}' > ${EROOT}/etc/portage/package.mask/${PN}"
|
||||
else
|
||||
ewarn " echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask"
|
||||
fi
|
||||
ewarn "...then downgrade to a legacy branch if possible. For details, see:"
|
||||
ewarn "https://www.nvidia.com/object/IO_32667.html"
|
||||
fi
|
||||
|
||||
if use wayland && use driver && [[ ! ${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 EGLStream (used for wayland acceleration"
|
||||
elog "in compositors that support it)."
|
||||
elog
|
||||
elog "If you experience issues, please comment out the option from nvidia.conf."
|
||||
elog "Of note, may possibly cause issues with SLI and Reverse PRIME."
|
||||
if has_version "gnome-base/gdm[wayland]"; then
|
||||
elog
|
||||
elog "This also cause gnome-base/gdm to use a wayland session by default,"
|
||||
elog "select 'GNOME on Xorg' if you wish to continue using it."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Try to show this message only to users that may really need it
|
||||
# given the workaround is discouraged and usage isn't widespread.
|
||||
if use X && [[ ${REPLACING_VERSIONS} ]] &&
|
||||
ver_test ${REPLACING_VERSIONS} -lt 460.73.01 &&
|
||||
grep -qr Coolbits "${EROOT}"/etc/X11/{xorg.conf,xorg.conf.d/*.conf} 2>/dev/null; then
|
||||
elog
|
||||
elog "Coolbits support with ${PN} has been restricted to require Xorg"
|
||||
elog "with root privilege by NVIDIA (being in video group is not sufficient)."
|
||||
elog "e.g. attempting to change fan speed with nvidia-settings would fail."
|
||||
elog
|
||||
elog "Depending on your display manager (e.g. sddm starts X as root, gdm doesn't)"
|
||||
elog "or if using startx, it may be necessary to emerge x11-base/xorg-server with"
|
||||
elog 'USE="suid -elogind -systemd" if wish to keep using this feature.'
|
||||
elog "Bug: https://bugs.gentoo.org/784248"
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user