User:SilentGamePLS

From ArchWiki

NVIDIA Gaming and Wayland Cheat Sheet:

Sound in my games is not working:

  • sudo pacman -S alsa-firmware alsa-utils pipewire pipewire-alsa pipewire-pulse 

Enable 32-bit support

  •  sudo nano /etc/pacman.conf 

Uncomment these lines:

  • [multilib] Include = /etc/pacman.d/mirrorlist 

Update:

  •  sudo pacman -Syu 

Install NVIDIA Driver with dependencies including Vulkan properly:

Standard NVIDIA Driver installation with dependencies:

  • sudo pacman -S nvidia nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau lib32-libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader vkd3d lib32-vkd3d opencl-headers opencl-clhpp vulkan-validation-layers lib32-vulkan-validation-layers 

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 

Experimental NVIDIA Driver Installation section:

NVIDIA DKMS Driver For Zen and Multiple Kernels

  • sudo pacman -S nvidia-dkms nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau lib32-libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader vkd3d lib32-vkd3d opencl-headers opencl-clhpp vulkan-validation-layers lib32-vulkan-validation-layers 

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 

NVIDIA LTS Driver For LTS Kernels

  • sudo pacman -S nvidia-lts nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau lib32-libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader vkd3d lib32-vkd3d opencl-headers opencl-clhpp vulkan-validation-layers lib32-vulkan-validation-layers 

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 

NVIDIA Open Source Driver

  • sudo pacman -S nvidia-open nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau lib32-libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader vkd3d lib32-vkd3d opencl-headers opencl-clhpp vulkan-validation-layers lib32-vulkan-validation-layers 

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 

NVIDIA Open Source DKMS Driver

  • sudo pacman -S nvidia-open-dkms nvidia-settings nvidia-utils lib32-nvidia-utils lib32-opencl-nvidia opencl-nvidia libvdpau lib32-libvdpau libxnvctrl vulkan-icd-loader lib32-vulkan-icd-loader vkd3d lib32-vkd3d opencl-headers opencl-clhpp vulkan-validation-layers lib32-vulkan-validation-layers 

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 

Wayland support will work fine if you have an NVIDIA RTX 20/30/40 series GPU's. There might be issues on GTX 10 GPU's and below. Starting with NVIDIA 560 Driver older GPU's from 10xx series are supported only by proprietary driver NVIDIA Developer Blog:

Edit /etc/mkinitcpio.conf

  •  sudo nano /etc/mkinitcpio.conf 
  • Change
     MODULES=() 
  • To
     MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)

Run mkinitcpio after installation and reboot:

  •  sudo mkinitcpio -P 


Edit GRUB /etc/default/grub For other bootloaders check the [Wiki]

  •  sudo nano /etc/default/grub
  • Change
     GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
  • To
    GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet nvidia_drm.modeset=1" 

Run grub configuration:

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

Reboot, check if everything works:

  • sudo cat /sys/module/nvidia_drm/parameters/modeset 

On every NVIDIA driver update run:

  • sudo mkinitcpio -P 

Extra Steps with GNOME/GDM

  • Removing the gdm udev that disables wayland

If you want to force-enable Wayland, run this command.

  • sudo ln -s /dev/null /etc/udev/rules.d/61-gdm.rules 
  • Reboot

Games keep crashing with 16/32/64/128 GB RAM

Set vm.max_map_count to Steam OS values:

  •  sudo nano /usr/lib/sysctl.d/10-arch.conf
  • Change
     vm.max_map_count=2147483642 
Reboot and check if the count increased:

  •  cat /proc/sys/vm/max_map_count 

A bunch of codecs/dependencies that can help you run different types of media audio and video formats that applies to game cut scenes and audio.

NB! If you want a non-bloated Arch Linux installation then avoid:

  • sudo pacman -S fluidsynth lib32-fluidsynth openal lib32-openal gvfs gvfs-nfs libkate gst-plugins-base gst-plugins-bad-libs gst-libav lib32-gst-plugins-good gst-plugin-gtk lib32-gstreamer lib32-gst-plugins-base lib32-gst-plugins-base-libs xvidcore lib32-libxvmc libxvmc ffmpeg gst-libav gst-plugins-good gst-plugins-bad smpeg faac sndio libnma openresolv x264 x265 opus sane lame libao wavpack libmad a52dec libvorbis faad2 libmpeg2 libtheora libvpx libde265 libdv schroedinger dav1d rav1e gst-libav gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-plugin-pipewire lib32-pipewire pipewire-zeroconf flac lib32-flac smpeg lib32-smpeg mac opus lib32-opus opus-tools opusfile libmpeg2 

gamemode, gamescope installation for improving gaming under Steam/Lutris/Wine:

  •  sudo pacman -S gamemode lib32-gamemode gamescope 

Proper Wine\Steam\Lutris\dosbox\scummvm Install:

  • sudo pacman -S wine wine-gecko wine-mono steam lutris dosbox scummvm 

(Optional) Proper Wine support on the systemd level after installing Wine packages

sudo systemctl restart systemd-binfmt

yay installation for heroic games launcher and other packages from AUR:

NB! yay needs git:

  • sudo pacman -S git 

No sudo!

  • git clone https://aur.archlinux.org/yay.git 
  • cd yay
  • makepkg -si

Heroic games launcher installation:

  •  yay -S heroic-games-launcher-bin 

Custom GE Proton usage:

  • Download the GloriousEggroll Proton needed releases:
  • Extract, enable hidden files and folders in your file manager.
  • Create a folder compatibilitytools.d in your /home/user/steam/root/
  • Copy/paste the extracted GE folder into:
/home/user/config/.steam/root/compatibilitytools.d 
  • Restart Steam, now you can use any GE Proton version.

NB! Some games work better on Wayland in some cases for native Linux games like Metro Exodus and older Win 32bit games work better on X11, so you need to switch between Wayland and X11.