You can test your lightdm/gdm with sudo systemctl restart gdm/lightdm. If you are able to drop to tty/command screen, you can test your nvidia-script via startx. If at any time you get a looping screen (such as lightdm trying to load a misspelled script), boot from an Arch USB stick, then mount your root partition and arch-chroot into it, proceed to re-apply the steps above. If at any time you get a blank black screen, ctrl+alt+f4 will drop you to tty terminal so that you can edit things you may have missed or done improperly. If you get no errors, they are installed. If you’re not sure the nvidia drivers installed, type modprobe nvidia in terminal. if it does, just remember to remove them from /boot/loader/entries/nf and /etc/nf
MODULES="nvidia nvidia_modeset nvidia_drm nvidia_uvm"Īgain, this sometimes breaks during driver updates.
To enable drm:Īdd nvidia_drm and nvidia_uvm to modules.
If you do an update and get a black screen, you’ll want a usb stick with arch on it so you can edit these files in case drm breaks. This periodically breaks, just be warned. To get rid of tearing, you need to enable nvidia-drm. Create a pacman hook so that you do not have to run mkinitcpio after every kernel update: We use nvidia-dkms so that it is interchangeable with different kernels.ħ. Sudo pacman -S nvidia-dkms nvidia-utils lib32-nvidia-utils opencl-nvidia lib32-opencl-nvidia nvidia-settings We need to make it execute the script for the login screen as well:ĭisplay-setup-script=/etc/X11/xinit/xinitrc.d/nvidia-script.sh LightDM only executes scripts in xinitrc.d for the session after login. Nothing necessary, GDM will execute scripts in xinitrc.d This will make your NVIDIA card output to your integrated display.įirst, find which display manager you’re using:Ĭat /etc/systemd/system/rvice | grep '/usr/bin' Set your Display Manager’s autostart to run xrandr on bootup. Sudo chmod a+x /etc/X11/xinit/xinitrc.d/nvidia-script.shĥ. Xrandr -setprovideroutputsource modesetting NVIDIA-0 Sudo nano /etc/X11/xinit/xinitrc.d/nvidia-script.sh Now create the script to make nvidia output to the modesetting device. Create a bash script that makes xrandr output to your integrated display using nvidia.įirst install xrandr if you don’t have it:
Where it says MODULES= add these like this:Ġ0:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)Ġ2:00.0 3D controller: NVIDIA Corporation GM107M (rev a2)Ĥ.
Seeing that this is nearly impossible to pull off with the debian source files and also make use of the i386 files, I suggest you to uninstall the Debian packages, extract the installer using "-extract-only", patch the conftest.sh as mentioned and run the installer manually.This is a guide as well as more of a reference for myself and friends who need it in the future. So make sure to "make vmlinux" in your kernel tree, then "make modules" (again) to rebuild Modules.symvers 0x00000000 _close_fd vmlinux EXPORT_SYMBOL It needs to include the module symbols as well as symbols from vmlinux (mainly _close_fd). That's where I inserted an "exit 0" (to force the same behaviour as if $IGNORE_MISSING_MODULE_SYMVERS was set).įor people that built the kernel themselves:Īlso make sure your headers have a complete Modules.symvers Inside the nvidia installation package (after having installed the DKMS debian package), you need to circumvent the Modules.symvers check. I did the following to build it regardless: The current version (455.45.01) does not work out-of-box with kernel version 5.10 run package or how I should approach this? I have 2x3090fe cards. When I install the 5.10 kernel I get error: unset ARCH & export CC=/usr/bin/gcc env NV_VERBOSE=1 'make' -j16 NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=5.10.0-051000rc6-generic IGNORE_XEN_PRESENCE=1 IGNORE_CC_MISMATCH=1 SYSSRC=/lib/modules/5.10.0-051000rc6-generic/build LD=/usr/bin/ld.bfd modules.(bad exit status: 2)ĮRROR (dkms apport): kernel package linux-headers-5.10.0-051000rc6-generic is not supportedĮrror! Bad return status for module build on kernel: 5.10.0-051000rc6-generic (x86_64)ĭo I need to remove current drivers and install they manually using. I have installed nvidia drivers from PPA and version is 455.45.01. I have a 5950x and 5.10 added support for AMD Zen 3 CPU temperature monitoring so it works as well. I have downloaded kernel, header and image from here and everything seems to work ok. I'm trying to get Nvidia working with 5.10 rc6.