Files
lnx-arch/nvidia.md

59 lines
2.1 KiB
Markdown
Raw Normal View History

2024-08-25 18:04:42 -05:00
# nvidia driver installation guide
2024-08-26 07:27:58 -05:00
this guide is based upon:
https://wiki.archlinux.org/title/NVIDIA
https://wiki.archlinux.org/title/NVIDIA/Tips_and_tricks
https://github.com/korvahannu/arch-nvidia-drivers-installation-guide
2024-08-25 18:04:42 -05:00
2024-08-26 07:27:58 -05:00
## tuxwarrior nvidia setup
### information gathering
```
$ lspci -k | grep -A 2 -E "(VGA|3D)"
01:00.0 VGA compatible controller: NVIDIA Corporation TU104BM [GeForce RTX 2080 SUPER Mobile / Max-Q] (rev a1)
```
Lookup card at <https://nouveau.freedesktop.org/CodeNames.html> to find codename:
`NV164 (TU104)`
Card is not found on the legacy driver list at <https://www.nvidia.com/en-us/drivers/unix/legacy-gpu/>.
The wiki says:
> For the Turing (NV160/TUXXX) series or newer, NVIDIA recommends the open source kernel driver.
> install the nvidia-open package (for use with the linux kernel) or the nvidia-open-dkms package (for all other kernels). (If these packages do not work, usually due to new hardware releases, nvidia-open-beta (AUR) may have a newer driver version that offers support.)
> The `nvidia-utils` package contains a file which blacklists the nouveau module once you reboot
### add nvidia software to packages.txt for given host
added to `dots/archinstall/tuxwarrior/packages.txt`:
```
nvidia-open
nvidia-utils
nvidia-settings
```
### set kernel parameter (systemd-boot)
edit the appropriate `.conf` file for the boot entry:
- `sudo nano /boot/loader/entries/<filename>.conf`
- append `nvidia-drm.modeset=1 nvidia_drm.fbdev=1` to the `options` line
2024-08-25 18:04:42 -05:00
- save (`ctrl+s`) and close (`ctrl+x`)
2024-08-26 07:27:58 -05:00
### set early loading
2024-08-25 18:04:42 -05:00
- `sudo nano /etc/mkinitcpio.conf`
- find the line that says `MODULES=(…)`
- add nvidia modules: `MODULES=(… nvidia nvidia_modeset nvidia_uvm nvidia_drm)`
- find the line that says `HOOKS=()`
- on the `HOOKS=()` line, find the word `kms` inside the parenthesis and remove it
- save (`ctrl+s`) and close (`ctrl+x`)
- regenerate the initramfs with `sudo mkinitcpio -P`
### add pacman hook
2025-11-06 09:30:23 -05:00
- `sudo mkdir -p /etc/pacman.d/hooks/ && sudo mv /home/poq/syncDir/gitRepos/gt.op.fo/lnx-arch/dots/nvidia/nvidia.hook /etc/pacman.d/hooks/`