Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Difference between revisions of "User:LinixTree/Sandbox"

From PCGamingWiki, the wiki about fixing PC games
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Distributions==
+
===Graphics===
A text color will represent how easy it is to use each Linux distro. Beginners '''should''' stick to the easy ones:
+
{{mm}} [https://wiki.archlinux.org/index.php/ATI ArchLinux Wiki's ATI] article
 +
{{mm}} [https://wiki.archlinux.org/index.php/AMDGPU ArchLinux Wiki's AMDGPU/AMDGPU Pro] article
 +
{{mm}} [https://wiki.archlinux.org/index.php/NVIDIA ArchLinux Wiki's NVIDIA] and [https://wiki.archlinux.org/index.php/Nouveau Nouveau] articles
 +
{{mm}} [https://wiki.archlinux.org/index.php/Intel_graphics ArchLinux Wiki's Intel Graphics] article
  
* Green - Easy
+
The following table describe drivers which support different GPUs under Linux.
* Yellow - Medium
 
* Light Red - Hard
 
  
There are two types of release models which distros are using, both have their pros and cons.
+
{| class="wikitable"
 
+
|-
===Fixed Release===
+
! Brand !! License !! Driver !! Library !! Supported GPUs !! Wayland Support
{{++}}Offers stable packages
+
|-
{{++}}Most distros which use it are beginner friendly
+
| style="background: red; color: white;" rowspan="3" | '''AMD/ATI''' ||rowspan="2" | Open Source || AMDGPU || rowspan="2"| MESA (GLX and DRI) || GCN 1 to GCN 4 and newer architecture<sup>1</sup> || rowspan="3" | Yes
{{++}}Very little maintenance
 
{{--}}Package versions are usually tied to the distro version, so to get the recent packages, you need to update your OS
 
{{--}}Stable packages don't  contain the newest features. This is especially important in case of GPU drivers
 
{{--}}Manual intervention is required in order to add user-made repositories in some distros.
 
{{ii}} Updating the distro to the next version doesn't require a fresh install and is easy to carry out but might take up to few hours (but usually below an hour)
 
//TODO: add official support column
 
{| class="wikitable sortable"
 
 
|-
 
|-
! Distribution !! Based On !! Desktop(s) <ref group="fr note">Bold ones are default</ref> !! Release cycle !! Supported by<ref group="fr note">look at Official Support TODO: add it</ref> !! Description
+
| ATI || GCN 2 and older architecture
 
|-
 
|-
| style="background: #84DE02;" |'''[https://www.ubuntu.com/download/desktop Ubuntu ]''' || Debian || GNOME || 6 months, 2 years for LTS || Steam, GoG, many commercial developers ||style="text-align: left;"| The most popular distribution. Ubuntu LTS (Long Term Support) is officially supported by Steam. If you don't know what to choose, pick this one. Ubuntu non-LTS is updated more often and contains newer packages and functions and is also a great option.
+
|Proprietary || AMDGPU || AMDGPU Pro || GCN 3 to newer architecture
 
|-
 
|-
| style="background: #84DE02;" | '''[https://www.ubuntu.com/download/flavours Ubuntu flavours]''' || Ubuntu || Plasma, LXQt, Budgie, MATE, Xfce || 6 months || same as Ubuntu<ref name=support group="fr note">Support is not official, but the distros are so similar, that everything that works for Ubuntu will work here.</ref> || style="text-align: left;"| Flavours offer different Desktop Environments, but when it comes to compatibility, they are vitually the same as Ubuntu. Choose if you prefer distinct workflow or art style.
+
| style="background: #84DE02;" rowspan="5"| '''NVIDIA''' || Open Source || Xorg Nouveau || Mesa (GLX and DRI) || Any NVIDIA GPU || Yes
 
|-
 
|-
| style="background: #84DE02;" |'''[https://linuxmint.com/ Linux Mint]''' || Debian, Ubuntu || '''Cinnamon''', MATE, XFCE, Plasma || Up to 2 years || same as Ubuntu<ref name=support group="fr note" /> || style="text-align: left;"| The most popular beginner-friendly Linux distribution. LMDE 2 Edition is based on Debian.
+
|rowspan="4"| Proprietary || Nvidia 418 || NVIDIA 418 GLX || From Kepler based GPUs to recent || rowspan="2"| Yes<sup>2</sup>
 
|-
 
|-
| style="background: yellow" |'''[https://getfedora.org/ Fedora]''' || Independent || '''GNOME''', Plasma, LXQt, MATE, XFCE, Cinnamon || 1 year || some commercial developers || style="text-align: left;"| An independent distro created by the community -supported Fedora Project and owned by Red Hat. Compared to the likes of Debian and Ubuntu, it provides latest but stable packages. <br>
+
| Nvidia 390 || Nvidia 390 GLX || Fermi architecture
{{ii}}'''Be warned that if you are a NVIDIA user, Fedora does not have any proprietary driver for it, you must use one of the community repositories.''' See [[#List of 3rd-party repositories|List of 3rd-party repositories]].
 
 
|-
 
|-
| style="background: yellow" |'''[https://www.debian.org/ Debian]''' || Independent || Almost all || Varies || some commercial developers || style="text-align: left;"| A distribution with a very large database of packages. By default it uses the Stable version which offers applications and libraries that are very stable, but outdated. Can be changed into Testing which offers somewhat latest but a little less stable packages or into Unstable, which allows you to use bleeding edge packages, however as the name suggests, it may be unstable. The distro also supports older architectures. <br>
+
| Nvidia 340 || Nvidia 340 GLX || Tesla architecture ||rowspan="2"| No
'''{{ii}}If you decide to use Debian as your Linux gaming system, consider using the Testing or Unstable branch. The Stable one contains very outdated libraries and should be reserved for servers only.'''
 
 
|-
 
|-
| style="background: yellow" | '''[https://www.opensuse.org/ openSUSE]''' || Independent || '''KDE Plasma 5''', GNOME, Cinnamon, LXDE, XFCE || Up to a year || some commercial developers || style="text-align: left;"| Project created by the community and sponsored by SUSE Linux. It provides many advanced exclusive tools. The community is willing to help any newcomers.
+
| Nvidia 304 || Nvidia 304 GLX || From GeForce 6 series to Tesla architecture
 
|-
 
|-
| style="background: #84DE02;" |'''[https://neon.kde.org KDE Neon]''' || Debian, Ubuntu || KDE Plasma || Up to a year || same as Ubuntu<ref name=support group="fr note" /> || style="text-align: left;"| A distro created by the KDE community, compared to the Kubuntu (A KDE flavoured Ubuntu) it provides the latest version of KDE Plasma, while at the same time being able to use packages from Ubuntu.
+
| style="background: #21ABCD; color: white;" rowspan="2" | '''Intel''' ||rowspan="2" | Open Source || Xorg Intel<sup>3</sup> || rowspan="2"| Mesa (GLX and DRI) || rowspan="2" | Any Intel HD Graphics GPU || rowspan="2"| Yes
 
|-
 
|-
| style="background: #84DE02;" |'''[https://store.steampowered.com/steamos/ SteamOS]''' || Debian (Stable) || GNOME || Varies || Steam || style="text-align: left;"| Linux distribution made by Valve Corporation specifically for Steam Machine or for gaming from couch. It currently provides the latest stable Linux kernel along with newer drivers for GPU. '''Not recommended for the desktop use.'''
+
|Xorg Modesetting
 
|-
 
|-
| style="background: #84DE02;" |'''[https://zorinos.com ZorinOS]''' || Debian, Ubuntu || GNOME, LXDE || Up to a year || same as Ubuntu<ref name=support group="fr note" /> || style="text-align: left;"| An extremely beginner friendly distro for users who wish to use Linux system the same they used Windows. It provides exclusive features which allows you to set up the appearance that resembles Windows 7, Windows 10 or Mac OS X.
 
 
|}
 
|}
 +
<sup>1</sup> <small>- GCN 1 and 2 architecture support in AMDGPU is experimental.</small><br />
 +
 +
<sup>2</sup> <small>- The proprietary one started to support Wayland since 364.12 version, however it uses the EGLStreams API.</small><br />
 +
 +
<sup>3</sup> <small>- Do not use it on Intel HD 4000 series and newer GPU.</small><br />
 +
 +
 +
AMD/ATI GPU must use the open source driver as they provide the best performance than the proprietary ones, while NVIDIA users should stick to the proprietary ones. However there are some things to remember:
 +
* '''Never install drivers from the respective GPU brand's website unless you are forced to!'''{{cn|date=Feb 2019|note=why not?}}. Installing them from the distro's repo is enough.
 +
* Both AMD and Intel GPUs have a support for GBM API when it comes to Wayland, NVIDIA uses only EGLStreams which limits your Wayland usage to GNOME desktop only (Nouveau being and exception as it uses GBM)
 +
* If forced to use Catalyst, Nvidia 173 or Nvidia 96 drivers, you must downgrade XOrg to the version it got the last support.
 +
* Enable early KMS once you have installed the driver.
 +
* Currently the open source driver for AMDGPU don't have some of the features from AMDGPU Pro (Such as HDMI audio), however the upcoming 4.15 version of Linux kernel will include DC/DAL features present in the former driver. It will be enabled by default for Vega cards and newer. But for the older ones you need to add <code>amdgpu.dc=1</code> into the kernel parameter after the release.<ref>https://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-DC-Cleaning-Pre-4.15></ref>
 +
* Before using the open source driver '''you must install LLVM and Linux Firmware''' (In case of Nouveau, it's Firmware as well) '''before installing the driver itself!'''
 +
* As always when using the 64 bit system, install the 32 bit version of the drivers if possible.
 +
 +
====List of 3rd-party repositories====
 +
'''Ubuntu/Linux Mint/Zorin OS/Pop! OS/Linux Lite/KDE Neon'''<br />
 +
 +
Use <code>sudo add-apt-repository <PPA repository></code> to add one. Make sure to run <code>sudo apt update</code> in order to update the repository list after adding one.
 +
{{Standard table|Repository|Description|content=
 +
{{Standard table/row|ppa:paulo-miguel-dias/pkppa|[https://launchpad.net/~paulo-miguel-dias/+archive/ubuntu/pkppa/ Padoka Stable Mesa]. For AMD/Intel/Nouveau GPU drivers, also contains Wayland.}}
 +
{{Standard table/row|ppa:paulo-miguel-dias/mesa|[https://launchpad.net/~paulo-miguel-dias/+archive/ubuntu/mesa Padoka Unstable Mesa]. Same as the previous, however it is the developer version. Mind the issues you may encounter. }}
 +
{{Standard table/row|ppa:graphics-drivers/ppa|[https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa "Graphics  Drivers" Teams' PPA]. Contains the recent proprietary NVIDIA drivers and the Vulkan drivers for that GPU. }}
 +
{{Standard table/row|ppa:ubuntu-x-swat/updates|[https://launchpad.net/~ubuntu-x-swat/+archive/ubuntu/updates Ubuntu X Team's Stable Mesa]. For AMD/Intel/Nouveau GPU drivers, also contains Wayland.}}
 +
}}
 +
 +
'''OpenSUSE'''<br />
 +
 +
 +
As of 10 August 2017, OpenSUSE Tumbleweed has an official NVIDIA RPM [https://www.reddit.com/r/openSUSE/comments/6slnlv/tumbleweed_gets_an_official_rpm_from_nvidia/], you can manually add the repository with this command
 +
<pre>
 +
zypper ar https://download.nvidia.com/opensuse/tumbleweed nvidia-tumbleweed
 +
zypper inr (For installing)
 +
</pre>
 +
 +
====Vulkan support====
 +
{{ii}} [https://wiki.archlinux.org/index.php/Vulkan ArchLinux's Wiki Vulkan Article]
 +
If your graphics card supports Vulkan API, you need to install additional driver package in order to enable the support, with the exception of Nvidia ones as they are already included and then install the Vulkan ICD Loader to let your GPU to use it on an application which supports it. These drivers are:
 +
* ANV for Intel HD GPUs Vulkan driver
 +
* RadV for community Open source AMD/ATI (Recommended) or AMDVLK for official open source AMD/ATI Vulkan driver
 +
 +
Depending on the distro you may have to install Mesa Vulkan Driver. As for the NVIDIA's proprietary drivers, you also need to install the Vulkan package or in case of other linux distributions (such as Antergos) it's already included with the main driver.
 +
 +
====Optimus Support====
 +
{{ii}} [https://www.reddit.com/r/linux_gaming/comments/6ftq10/the_ultimate_guide_to_setting_up_nvidia_optimus/ NVIDIA Optimus Linux Guide]
 +
{{--}} To this day the Optimus support in NVIDIA GPUs is still considered to be troublesome. It is recommended to use fixed release distributions for this case.
 +
In case of laptops which contains NVIDIA Optimus support it is recommended to have PRIME enabled, which can be done by installing additional package, follow the distro’s documentation to learn which one. The alternative to it can be NVIDIA XRun package and Bumblebee's optirun/primusrun (Not recommended as it is no longer in development), but then the manual intervention is required (With the exception of the former). The linked guide will explain in detail the differences between them, as well as how to use them.<br>
 +
 +
AMD users have a much easier time with that feature as it only requires running the game with the <code>DRI_PRIME=1</code> command.
 +
====Xorg====
 +
{{ii}} [https://www.x.org/wiki/ Main Page]
 +
Xorg/X11 is the 1st display server released in 1986 which became a standard of creating Graphical user interface (GUI) for Linux. It received a major change during the popularity of Linux in 2000s. Despite the long support and being commonly used it has major issues which are still present today such as focus stealing, client and server separation which may lead to delays depending on the application it was made, tearing issues or even security ones which other user may capture key inputs from the keyboard. Depending on the desktop environment it also has accessibility issue for disabled users. Despite the release of its successor, Wayland, it is still maintained by Xorg Foundation and Free-Desktop.org.
 +
 +
====Wayland====
 +
{{ii}} [https://wayland.freedesktop.org/ Main Page]
 +
Wayland is a successor to the Xorg/X11 server which allows to simplify the whole graphics stack without creating a Client while using a 3rd party compositor. It is only available for GPUs which have a Kernel Mode Setting support. Intel, ATI and AMDGPU, Nouveau have KMS enabled automatically by default albeit late, however when it comes to NVIDIA you must enable it manually.<br />
 +
 +
 +
The main benefit of the Wayland is a much faster response to programs compared to Xorg/X11 due to the simple communication between APIs. Keep in mind that you may need to add a command to inform you are running in that session to avoid using XWayland, which may affect the performance even if it has a support implemented. Such as games based on SDL2 like Team Fortress 2.<br />
 +
 +
 +
Bear in mind that if you want to use XWayland on NVIDIA GPU then you may be out of luck as the NVIDIA themselves stated that they have no plans for supporting XWayland, which pretty much forces you to use Xorg/X11 as a default GUI manager. [https://devtalk.nvidia.com/default/topic/925605/linux/nvidia-364-12-release-vulkan-glvnd-drm-kms-and-eglstreams/post/5188874/#5188874]<br />
  
<references group="fr note" />
 
  
===Rolling Release===
+
Here are the following GUI libraries with Wayland support:
{{++}}Provides the latest version of the package once it’s available
+
* GTK3 - Supported and enabled by default since 3.20, if not, use the <code>GDK_BACKEND=wayland</code> command at the beginning.
{{++}}No distro upgrade is required, as most distros have only one version.
+
* Qt5 - Requires the Qt5 Wayland package. After that you can run the Qt 5 application with the <code>-platform wayland</code> command prompt.
{{++}}Distros following the fixed release have an option to enable this type of release. Mostly under the name of Testing or Unstable
+
* SDL2 - Added in 2.0.2 enabled by default since 2.0.4. If not, use <code>SDL_VIDEODRIVER=wayland</code> command before running the application.
{{--}}An update for the package may cause stability issues, so it is recommended organize an update by yourself in case a revision gets a release, which fixes stability issues.
+
* GLFW - Install the Wayland version package of GLFW instead of X11, support added in 3.2.
{{--}}In some cases, manual intervention is required.
+
* EFL - Enabled by default.
{{ii}}Some distros offer a semi-rolling release, meaning that the package will be tested before the release, it mostly takes less than a month, often a week depending on distro.
+
* Clutter - Included with clutter package
 +
* FreeGLUT - Has initial support.
  
{| class="wikitable sortable"
+
<references group="rr note" />
|-
 
! Distribution !! Based On !! Package Manager !! Desktop(s)<sup>1</sup> !! Description
 
|-
 
| style="background: yellow" |'''[http://www.archlinux.org/ ArchLinux]''' || Independent || [[Wikipedia:Arch Linux#pacman|Pacman]], [[Wikipedia:Arch Linux#Arch User Repository (AUR)|AUR]] || '''Text Mode''', but later on you can install any desktop environment || style="text-align: left;"| Simple and very lightweight distro. The Pacman ('''Pac'''kage '''Man'''ager) is a powerful package manager which is much more simple to use thanks to the simplified command arguments which, while the AUR (Arch User Repository) allows the user to install community-made packages without requiring to manually add additional repositories. It's documentary wiki is extremely useful for getting around the system and explain how things work, it can be used as a base for other Linux distributions. Each package from the official repository are tested and released when it is considered stable.
 
|-
 
| style="background: #84DE02;" |'''[https://manjaro.org/ Manjaro]''' || ArchLinux || [[Wikipedia:Arch Linux#pacman|Pacman]], [[Wikipedia:Arch Linux#Arch User Repository (AUR)|AUR]] || '''KDE Plasma 5''' and '''XFCE'''. The community manages other versions with their own desktop environment  || style="text-align: left;"| Also known as "Ubuntu for Arch", it provides its own official repository compared to the distro it's been based on and has exclusive tools for installing various Linux kernels and managing your hardware drivers. The packages are semi-rolling meaning that it takes longer for the new version of the application to be released (Up to 2 weeks) until it's absolutely stable enough.
 
|-
 
| style="background: #84DE02;" |'''[https://www.antergos.com/ Antergos]''' || ArchLinux || [[Wikipedia:Arch Linux#pacman|Pacman]], [[Wikipedia:Arch Linux#Arch User Repository (AUR)|AUR]] || You can choose GNOME, Cinnamon, MATE, KDE, OpenBox, XFCE or text mode || style="text-align: left;"| Formerly named CinnArch. Compared to Manjaro, Antergos combines both its own repo along with official ArchLinux ones. Be aware that the setup installer is still in beta and may have some issues.
 
|-
 
| style="background: #84DE02;" |'''[https://solus-project.com/ Solus]''' || Independent || EOPKG || '''Budgie''', GNOME, MATE || style="text-align: left;"| Created and managed by one of the staff members from the Intel in 2016, despite following the rolling release model it provides stable packages and features great hardware compatibility with any GPU. Due to the fact it is a new distro, the number of packages that are available are somewhat small, but still growing (and packages can be requested) and includes a special Steam edition called Linux Steam Integration (LSI) which allows you to more easily customize Steam ranging from using the libraries from your system (Native mode) or force 32-bit mode.
 
|-
 
| style="background: yellow" |'''[https://www.opensuse.org OpenSUSE Tumbleweed]''' || Independent || [[Wikipedia:ZYpp|RPM (Zypper)]] || '''KDE Plasma 5''' || style="text-align: left;"| A separate rolling release version of OpenSUSE, despite having the same exclusive features, it provides packages that are bleeding edge, updated enough where the ArchLinux won't keep up with it.
 
|-
 
| style="background: #FFCCCC" |'''[https://www.gentoo.org/ Gentoo]''' || Independent || [[Wikipedia:Portage (software)|Portage]] || '''Text mode''', later on you can install any DE || style="text-align: left;"| A distro aimed only for experts. Unlike other Linux distros, Gentoo's Portage compiles the application from its source code instead, which can offer the most bleeding edge version of the software, but very unstable. Distros based on it do exist and slightly lowers the difficulty in using it. It's wiki can be used to explain in a simple detail every compilation option you can use on other distributions.
 
|-
 
| style="background: yellow" |'''[http://www.pclinuxos.com/ PCLinuxOS]''' || Independent || [[Wikipedia:APT-RPM|RPM (APT)]] || KDE Plasma, MATE || style="text-align: left;"|PCLinuxOS is a semi-rolling release fork of [[Wikipedia:Mandriva Linux|Mandriva]] which provides an out-of-the-box support for many graphics and sound devices, along with other peripherals. It contains a special software dedicated to maintaining and configuring your system.
 
|-
 
| style="background: #84DE02;" |'''[https://www.deepin.org/en/ Deepin]''' || Debian (Unstable) || [[Wikipedia: APT (Debian)|DEB (Apt)]] || Deepin || style="text-align: left;"| Based on Debian (Unstable), Deepin is a rolling release distro which formerly was based on Ubuntu 15 which also uses its own desktop environment with the same name.
 
|}
 
<sup>1</sup> <small>- Bold ones are default</small>
 
  
 
<references />
 
<references />

Latest revision as of 17:37, 5 March 2019

Graphics

ArchLinux Wiki's ATI article
ArchLinux Wiki's AMDGPU/AMDGPU Pro article
ArchLinux Wiki's NVIDIA and Nouveau articles
ArchLinux Wiki's Intel Graphics article

The following table describe drivers which support different GPUs under Linux.

Brand License Driver Library Supported GPUs Wayland Support
AMD/ATI Open Source AMDGPU MESA (GLX and DRI) GCN 1 to GCN 4 and newer architecture1 Yes
ATI GCN 2 and older architecture
Proprietary AMDGPU AMDGPU Pro GCN 3 to newer architecture
NVIDIA Open Source Xorg Nouveau Mesa (GLX and DRI) Any NVIDIA GPU Yes
Proprietary Nvidia 418 NVIDIA 418 GLX From Kepler based GPUs to recent Yes2
Nvidia 390 Nvidia 390 GLX Fermi architecture
Nvidia 340 Nvidia 340 GLX Tesla architecture No
Nvidia 304 Nvidia 304 GLX From GeForce 6 series to Tesla architecture
Intel Open Source Xorg Intel3 Mesa (GLX and DRI) Any Intel HD Graphics GPU Yes
Xorg Modesetting

1 - GCN 1 and 2 architecture support in AMDGPU is experimental.

2 - The proprietary one started to support Wayland since 364.12 version, however it uses the EGLStreams API.

3 - Do not use it on Intel HD 4000 series and newer GPU.


AMD/ATI GPU must use the open source driver as they provide the best performance than the proprietary ones, while NVIDIA users should stick to the proprietary ones. However there are some things to remember:

  • Never install drivers from the respective GPU brand's website unless you are forced to![citation needed]. Installing them from the distro's repo is enough.
  • Both AMD and Intel GPUs have a support for GBM API when it comes to Wayland, NVIDIA uses only EGLStreams which limits your Wayland usage to GNOME desktop only (Nouveau being and exception as it uses GBM)
  • If forced to use Catalyst, Nvidia 173 or Nvidia 96 drivers, you must downgrade XOrg to the version it got the last support.
  • Enable early KMS once you have installed the driver.
  • Currently the open source driver for AMDGPU don't have some of the features from AMDGPU Pro (Such as HDMI audio), however the upcoming 4.15 version of Linux kernel will include DC/DAL features present in the former driver. It will be enabled by default for Vega cards and newer. But for the older ones you need to add amdgpu.dc=1 into the kernel parameter after the release.[1]
  • Before using the open source driver you must install LLVM and Linux Firmware (In case of Nouveau, it's Firmware as well) before installing the driver itself!
  • As always when using the 64 bit system, install the 32 bit version of the drivers if possible.

List of 3rd-party repositories

Ubuntu/Linux Mint/Zorin OS/Pop! OS/Linux Lite/KDE Neon

Use sudo add-apt-repository <PPA repository> to add one. Make sure to run sudo apt update in order to update the repository list after adding one.

Repository Description
ppa:paulo-miguel-dias/pkppa Padoka Stable Mesa. For AMD/Intel/Nouveau GPU drivers, also contains Wayland.
ppa:paulo-miguel-dias/mesa Padoka Unstable Mesa. Same as the previous, however it is the developer version. Mind the issues you may encounter.
ppa:graphics-drivers/ppa "Graphics Drivers" Teams' PPA. Contains the recent proprietary NVIDIA drivers and the Vulkan drivers for that GPU.
ppa:ubuntu-x-swat/updates Ubuntu X Team's Stable Mesa. For AMD/Intel/Nouveau GPU drivers, also contains Wayland.

OpenSUSE


As of 10 August 2017, OpenSUSE Tumbleweed has an official NVIDIA RPM [1], you can manually add the repository with this command

zypper ar https://download.nvidia.com/opensuse/tumbleweed nvidia-tumbleweed
zypper inr (For installing)

Vulkan support

ArchLinux's Wiki Vulkan Article

If your graphics card supports Vulkan API, you need to install additional driver package in order to enable the support, with the exception of Nvidia ones as they are already included and then install the Vulkan ICD Loader to let your GPU to use it on an application which supports it. These drivers are:

  • ANV for Intel HD GPUs Vulkan driver
  • RadV for community Open source AMD/ATI (Recommended) or AMDVLK for official open source AMD/ATI Vulkan driver

Depending on the distro you may have to install Mesa Vulkan Driver. As for the NVIDIA's proprietary drivers, you also need to install the Vulkan package or in case of other linux distributions (such as Antergos) it's already included with the main driver.

Optimus Support

NVIDIA Optimus Linux Guide
To this day the Optimus support in NVIDIA GPUs is still considered to be troublesome. It is recommended to use fixed release distributions for this case.

In case of laptops which contains NVIDIA Optimus support it is recommended to have PRIME enabled, which can be done by installing additional package, follow the distro’s documentation to learn which one. The alternative to it can be NVIDIA XRun package and Bumblebee's optirun/primusrun (Not recommended as it is no longer in development), but then the manual intervention is required (With the exception of the former). The linked guide will explain in detail the differences between them, as well as how to use them.

AMD users have a much easier time with that feature as it only requires running the game with the DRI_PRIME=1 command.

Xorg

Main Page

Xorg/X11 is the 1st display server released in 1986 which became a standard of creating Graphical user interface (GUI) for Linux. It received a major change during the popularity of Linux in 2000s. Despite the long support and being commonly used it has major issues which are still present today such as focus stealing, client and server separation which may lead to delays depending on the application it was made, tearing issues or even security ones which other user may capture key inputs from the keyboard. Depending on the desktop environment it also has accessibility issue for disabled users. Despite the release of its successor, Wayland, it is still maintained by Xorg Foundation and Free-Desktop.org.

Wayland

Main Page

Wayland is a successor to the Xorg/X11 server which allows to simplify the whole graphics stack without creating a Client while using a 3rd party compositor. It is only available for GPUs which have a Kernel Mode Setting support. Intel, ATI and AMDGPU, Nouveau have KMS enabled automatically by default albeit late, however when it comes to NVIDIA you must enable it manually.


The main benefit of the Wayland is a much faster response to programs compared to Xorg/X11 due to the simple communication between APIs. Keep in mind that you may need to add a command to inform you are running in that session to avoid using XWayland, which may affect the performance even if it has a support implemented. Such as games based on SDL2 like Team Fortress 2.


Bear in mind that if you want to use XWayland on NVIDIA GPU then you may be out of luck as the NVIDIA themselves stated that they have no plans for supporting XWayland, which pretty much forces you to use Xorg/X11 as a default GUI manager. [2]


Here are the following GUI libraries with Wayland support:

  • GTK3 - Supported and enabled by default since 3.20, if not, use the GDK_BACKEND=wayland command at the beginning.
  • Qt5 - Requires the Qt5 Wayland package. After that you can run the Qt 5 application with the -platform wayland command prompt.
  • SDL2 - Added in 2.0.2 enabled by default since 2.0.4. If not, use SDL_VIDEODRIVER=wayland command before running the application.
  • GLFW - Install the Wayland version package of GLFW instead of X11, support added in 3.2.
  • EFL - Enabled by default.
  • Clutter - Included with clutter package
  • FreeGLUT - Has initial support.