Nvidia proprietary driver installation revisions

Go back to topic: Nvidia proprietary driver installation

  1. v6 anchor; v6 full version
  2. v5 anchor; v5 full version
  3. v4 anchor; v4 full version
  4. v3 anchor; v3 full version
  5. v2 anchor; v2 full version

Revision #6

Edited on
2023-08-15
Edited by user
adw
- Original author(s) (GitHub usernames): rapenne-s, andrewdavidwong - Original author(s) (forum usernames): @solene, @adw - Original author(s) (GitHub usernames): rapenne-s - Original author(s) (forum usernames): @solene

Revision #5

Edited on
2023-08-14
Edited by user
deeplow

Revision #4

Edited on
2023-06-03
Edited by user
deeplow

Revision #3

Edited on
2023-06-03
Edited by user
taradiddles
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.
./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
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: - */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: This installation must be done manually, because nvidia-installer refuses to install it on Xen kernel. 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: ``` cat /etc/modprobe.d/nouveau-disable.conf # blacklist isn't enough... install nouveau /bin/true ``` Add *rdblacklist=nouveau* option to /boot/grub/menu.lst (at the end of line containing *vmlinuz*). ## 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. ## Disable nouveau Add `rd.driver.blacklist=nouveau` option in `/etc/default/grub` (at the end of line `GRUB_CMDLINE_LINUX`). Install the new grub config with `grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg`. ## Reboot 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.
- First commit: 08 Dec 2020. Last commit: 08 Dec 2020. - Applicable Qubes OS releases based on commit dates and [supported releases](https://www.qubes-os.org/doc/supported-releases/): 4.0 - Original author(s) (GitHub usernames): andrewdavidwong - Original author(s) (forum usernames): @adw - First commit: 08 Dec 2020. Last commit: 03 Jun 2023. - Applicable Qubes OS releases based on commit dates and [supported releases](https://www.qubes-os.org/doc/supported-releases/): 4.0, 4.1 - Original author(s) (GitHub usernames): rapenne-s, andrewdavidwong - Original author(s) (forum usernames): @solene, @adw

Revision #2

Edited on
2023-06-02
Edited by user
taradiddles