r/archlinux • • 1d ago

SHARE [Request/Guide] Installing proprietary Nvidia drivers 580 for 1000 series or older

Hello,

I noticed a fairly broad use but lacking documentation, especially for average users, on how to deal with legacy nvidia drivers 580 or older from AUR, specifically the wiki article provides nothing but a generic link to Arch user repository package, with as far as I can tell not instructions on how to get them installed and sorted. This is not at the level "batteries not included, read the wiki" this is at the level "discontinued support, figure it out on your own" and chances are even people that have used mainstream Linux distros for years will be left wondering what to do exactly.

https://wiki.archlinux.org/title/NVIDIA

https://aur.archlinux.org/packages/nvidia-580xx-dkms

If that is your situation, this simple guide might prove useful however it is not complete/correct for all use cases.

__________

Part A - Guide

For nvidia graphics card users of 1000 series or older supported by nvidia proprietary driver 580 (though it can be adapted for older driver version hosted on the AUR for legacy nvidia cards), use the following steps and note it assumes LTS or latest Linux kernel (zen kernel require specifically linux-zen-headers for part 2) and the nouveau is used at the moment and ideally running an X11 based DE, the driver may have unresolved bugs or unsupported features for Wayland compositors (blame nvidia).

1 Modify the following config

sudo nano /etc/pacman.conf

[options]

...

IgnorePkg = nvidia nvidia-utils nvidia-dkms nvidia-open nvidia-open-dkms

..

[multilib]

Include = /etc/pacman.d/mirrorlist

Make sure the above are uncommented or exist, the first tells to ignore the nvidia-open drivers which do not work on 1000 series and older, if this is not mentioned here it will interfere with the drivers you install, if not immediately then during updates, do not confuse multilib with testing.

2 Install required packages with pacman

sudo pacman -S git base-devel dkms linux-headers

3 Install yay to handle AUR packages (alternatives exist)

git clone https://aur.archlinux.org/yay.git

Note this assumes the working directory is /home/user, the above command downloads to wherever you are cd into

cd yay
makepkg -si

After it finishes

cd /home/user

Note user is your account name, alternative cd a single space then tilde "cd \~" without the " ".

4 Use yay to install AUR packages

yay -S nvidia-580xx-dkms nvidia-580xx-utils nvidia-580xx-settings

Optional

yay -S opencl-nvidia-580xx lib32-nvidia-580xx-utils lib32-opencl-nvidia-580xx libxnvctrl-580xx

5 Edit /etc/mkinitcpio.conf

sudo nano /etc/mkinitcpio.conf

Add the following in the Modules section, follow text formatting and spacing, do not delete or add anything else.

MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)

Ctrl and X, y, Enter

sudo mkinitcpio -P

Although the yay installation process should have already regenerated, it can sometimes fail and it's a good idea to check with manual command above.

If using GRUB after regenerating initramfs, otherwise modify for other bootloader or EFI stub or UKI to either update or regenerate

sudo grub-mkconfig -o /boot/grub/grub.cfg

Note it assumes grub.cfg is inside /boot and not /boot/efi/grub/grub.cfg, if so modify command.

Other considerations, hybrid graphics, meaning IF the system has an IGP, it might default to it, disable it inside UEFI for desktops. As for laptops, do not disable IGP as it is required for longer battery life and find instead a software solution to switch between them, follow wiki.

These were reconstructed with vague memory of the process and AI, anyone feel free to adjust or correct the steps, hardware configurations and settings could require additional intermediate commands, example using Secure Boot requires proprietary nvidia drivers to be signed, might also need to blacklist nouveau in the kernel default command line parameters.

____________

Part B - Documentation/tool request

Whomever thinks they are able to and so inclined, the community could use script/GUI tool to automate (example as provided by Linux Mint, select driver, click apply changes when it finishes, requests restart) the above process for 2 scenarios, Secure boot on and off and updating the Arch wiki with a page detailing the above process, expanded for more scenarios for PCs and laptops with hybrid graphics AMD IGP and nvidia dedicated, Intel IGP and nvidia dedicated legacy card.

Alternatively if it is a better way of downloading the driver and above dependencies or related packages from an official source, either nvidia or well known and approved maintainer, that could also work, though idk how automation would work when updating the system.

0 Upvotes

28 comments sorted by

View all comments

5

u/Gozenka 1d ago edited 1d ago

It is not a good guide. You just need to install nvidia-580xx-dkms, which is clearly mentioned on the Archwiki Nvidia page's first section. That's it. The rest will be pulled as dependencies / configured automatically. (I have a GTX 1050 TI btw)

If a user is really new and completely clueless, your guidance on how to install AUR packages may be relevant. And the installation of the fitting -headers package for their kernel, but that is also mentioned in the "Note" on the same section of the wiki. And all these would be things an Arch user should be learning as needed anyway. Since Arch has a Do-It-Yourself side to it, some essential reading of the Archwiki comes with it.

The rest in your guide is actually unnecessary, and may even cause issues in the future if some things change. In any case, it is good to keep things simple and untouched if it is not needed.

Edit: The headers packages are even mentioned as optional dependencies for dkms, which the user should be seeing when it gets installed. In case they are still unaware of this requirement.

4

u/Excellent-Love-6943 1d ago

A user's cluelessness precludes this entire situation. Such a user should not be on the AUR, and should probably rethink using arch in the first place.

4

u/Gozenka 1d ago

True. All this involves 5-10 minutes reading of Archwiki, which would be needed for a proper experience on Arch Linux as one's system anyway. Let's say someone uses this guide or an AI's guidance, rather than learning the little essentials of how to configure and use an Arch Linux system. They will likely have a bad time soon afterwards.

This is just what comes with using Arch Linux as your system. And unfortunately that may not be fit for everyone, or what everyone wants.

3

u/Excellent-Love-6943 1d ago

Exactly.

This is me gate keeping non-toxically. Arch isn't disallowed, it's just a bad idea for such a user.

0

u/activedusk 1d ago edited 1d ago

I will try to reinstall and only install yay, linux headers and 580 from AUR, if that does not produce any issues, will report back. If it does, will anyone update the wiki and explain that ackshually, it is not as easy as "just install 580 driver from AUR"? If not, well at least I'll get something to laugh at about Arch amazing documentation.