diff --git a/docs/configuration/install-nvidia-driver.md b/docs/configuration/install-nvidia-driver.md index 77e5c73..7e14462 100644 --- a/docs/configuration/install-nvidia-driver.md +++ b/docs/configuration/install-nvidia-driver.md @@ -64,20 +64,18 @@ Reboot. ## Manual installation -This process is quite complicated: First - download the source from nvidia.com site. Here "NVIDIA-Linux-x86\_64-260.19.44.run" is used. Copy it to dom0. Every next step is done in dom0. +This process is quite complicated: First - download the source from nvidia.com site. Here "NVIDIA-Linux-x86\_64-525.116.04" is used. Copy it to dom0. Every next step is done in dom0. See [this page](https://www.qubes-os.org/doc/copy-to-dom0/) for instructions on how to transfer files to Dom0 (where there is normally no networking). **WARNING**: Nvidia doesn't sign their files. To make it worse, you are forced to download them over a plaintext connection. This means there are virtually dozens of possibilities for somebody to modify this file and provide you with a malicious/backdoored file. You should realize that installing untrusted files into your Dom0 is a bad idea. Perhaps it might be a better idea to just get a new laptop with integrated Intel GPU? You have been warned. - - ### Userspace components Install libraries, Xorg driver, configuration utilities. This can by done by nvidia-installer: ~~~ -./NVIDIA-Linux-x86_64-260.19.44.run --ui=none --no-x-check --keep --no-nouveau-check --no-kernel-module +./NVIDIA-Linux-x86_64-525.116.04.run --ui=none --no-x-check --keep --extract ~~~ ### Kernel module @@ -88,43 +86,25 @@ You will need: - kernel-devel package installed - gcc, make, etc -This installation must be done manually, because nvidia-installer refused to install it on Xen kernel. Firstly ensure that kernel-devel package installed all needed files. This should consist of: +This installation must be done manually, because nvidia-installer refuses to install it on Xen kernel. -- */usr/src/kernels/2.6.34.1-12.xenlinux.qubes.x86\_64* -- */lib/modules/2.6.34.1-12.xenlinux.qubes.x86\_64/build* symlinked to the above directory -- */usr/src/kernels/2.6.34.1-12.xenlinux.qubes.x86\_64/arch/x64/include/mach-xen* should be present (if not - take it from kernel sources) - -If all the files are not there correct the errors manually. To build the kernel module, enter *NVIDIA-Linux-x86\_64-260.19.44/kernel* directory and execute: +To build the kernel module, enter *NVIDIA-Linux-x86\_64-525.116.04/kernel* directory and execute: ~~~ -make -IGNORE_XEN_PRESENCE=1 CC="gcc -DNV_VMAP_4_PRESENT -DNV_SIGNAL_STRUCT_RLIM" make -f Makefile.kbuild -mv /lib/modules/2.6.34.1-12.xenlinux.qubes.x86_64/kernel/drivers/video/nvidia.ko /lib/modules/2.6.34.1-12.xenlinux.qubes.x86_64/extra/ +make IGNORE_XEN_PRESENCE=1 CC="gcc -DNV_VMAP_4_PRESENT -DNV_SIGNAL_STRUCT_RLIM" +mv nvidia.ko /lib/modules/$(uname -r)/kernel/drivers/video/ +depmod -a ~~~ -Ignore any errors while inserting nvidia.ko (at the end of make phase). +### Disable nouveau -### Disable nouveau: +Add `rd.driver.blacklist=nouveau` option in `/etc/default/grub` (at the end of line `GRUB_CMDLINE_LINUX`). -~~~ -cat /etc/modprobe.d/nouveau-disable.conf -# blacklist isn't enough... -install nouveau /bin/true -~~~ +Install the new grub config with `grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg`. -Add *rdblacklist=nouveau* option to /boot/grub/menu.lst (at the end of line containing *vmlinuz*). +### Reboot -### Configure Xorg - -Finally, you should configure Xorg to use nvidia driver. You can use *nvidia-xconfig* or do it manually: - -~~~ -X -configure -mv /root/xorg.conf.new /etc/X11/xorg.conf -# replace Driver in Device section by "nvidia" -~~~ - -Reboot to verify all this works. +Reboot to verify all this works. You can ensure the module is loaded by running `lsmod | grep nvidia` which should display a single output line, and `lsmod | grep nouveau` should have no output. ## Troubleshooting lack of video output during installation