GithubHelp home page GithubHelp logo

linux-gaming-omg's Introduction

Linux Gaming

Glossary

Click to reveal

Linux - used as a short version of GNU/Linux. Linux is a kernel, and when combined with the GNU operating system, it forms the GNU/Linux operating system.

Kernel - The core of an operating system.

Distro - short for a linux distribution.

What distro should I use for Linux gaming?

The choice of a Linux distribution depends entirely on your preferences. There isn't a one-size-fits-all recommendation, but here are some widely popular, well-optimized, and community-favored options to consider.

Arch based

Arch-based distros are the ones with the best support for gaming, but it may be overwhelming for beginners. If you don't know what you are doing, I wouldn't recommend any of those listed here.

Arch-based distros are intended to be used by advanced or semi-advanced users. Those are often referred to as "rolling-release" which means that packages and kernel is always up-to-date

  • Arch Linux
  • EndeavourOS - Often referred to as the user-friendly version of Arch Linux, EndeavourOS comes with the calamares installer for an easier setup experience.
  • Garuda Linux - "Gaming" distro
  • Manjaro - Relatively easy to use Arch Linux. Comes with installer. Updates for Manjaro may not be always on time, due to their own release system.

Debian and Ubuntu based

Commonly known as the best linux distributions for beginners, Debian-based distributions are one of the most popular choices amongst them. However, they may come with outdated packages, as they offer stable-release system.

  • Debian
  • Ubuntu - One of the most commonly used distributions, based off Debian
  • Linux Mint - Best distro for beginners, highest rating on distrowatch.com, based off Ubuntu.
  • Pop_OS! - Made for beginners, based on Ubuntu

Fedora based

  • Fedora
  • Nobara - "Gaming" distro, same creator as Proton-GE

Other/Advanced Distros

  • Gentoo - For advanced users, you compile everything yourself
  • Funtoo - A more optimized version of Gentoo
  • NixOS - Based on Nix Package Manager

How does Linux gaming compare to Windows gaming?

While a lot of games are programmed only for Windows, most of them run perfectly fine on Linux thanks to Proton, which is a collection of software and libraries combined with a patched version of WINE, a compatibility layer that translates Windows system calls to Linux ones.

Games made for Linux or designed to work on Linux usually run smoothly on the platform, occasionally outperforming their Windows counterparts. On the other hand, when running games not originally intended for use on Linux, the outcome may vary, dependant on factors such as your Linux distribution, installed tools, game, compatibility tools, and more.

Optimizing the system for gaming

Which kernel should I use?

The standard Linux kernel should sufice; however, if maximum performance is important to you, here are some recommended kernels:

Proton

Installation

If you have already installed Steam, then you already have Proton, as it is also installed by default.

Enabling Proton

  1. Go to Steam Settings
  2. Click on the "Compatibility" tab
  3. Turn on "Enable Steam Play for all other titles"

You can also switch your Proton version in this tab.

Pictured Instructions

Step 1

Step 2

Step 3

Proton and Wine related tools

  • ProtonDB - Your go-to for checking compatibility of Steam games with Linux.
  • ProtonUp-Qt - GUI for installing and managing custom Proton and Wine versions.
  • Proton-GE - Custom Proton with additional features.
  • WineTricks - Easy way to work around problems in WINE.
  • Wine-GE - Custom WINE package, similar to Proton-GE, but made to be used with Lutris.

Vulkan and DirectX Tools

  • wine-wayland - Allows playing Vulkan and DirectX 9/11 games with pure Wayland and WINE.
  • DXVK - A Vulkan-based translation layer for Direct3D 9/10/11 that allows running 3D applications using Wine.
  • vkBasalt - Post-processing layer for Vulkan applications.

Optimazation and Performance Tools

  • GameMode - Prioritize game over other tasks, similar to Windows counterpart.
  • MangoHud - An overlay for monitoring FPS, temperatures, CPU/GPU load and more.
    • GOverlay - Easy to use GUI for configuring MangoHud.
  • Luxtorpeda - Steam Play compatibility tool to run games using native Linux libraries.

Running GameMode

Verify whether GameMode is installed and will run correctly

$ gamemoded -t

Running a game

$ gamemoderun <game-binary>

Running a Steam game

Add the following command to the game's launch options:

gamemoderun %command%

Running GameMode With MangoHud

Running a game

$ mangohud gamemoderun <game-binary>

Running a Steam game

Add the following command to the game's launch options:

mangohud gamemoderun %command%

Overclocking

Warning

While overclocking has the potential to enhance system performance, it is strongly advised against unless you have a thorough understanding of the process. Proceeding with overclocking without adequate knowledge may lead to instability, overheating, and permanent damage to your hardware components. Exercise caution and ensure you are well-versed in the intricacies of overclocking before attempting any adjustments. If in doubt, seek guidance from experienced individuals to avoid unintended consequences and potential risks to your system.

Overclocking Tools

  • NVBurner - A MSI Afterburner alternative for NVIDIA users on Linux.
  • CoreCtrl - Profile based overclocking utility

Game Streaming

Game streaming means playing games on a different device that you are using to control or display the game. This can be done by either streaming from e.g your computer at home to a different device, or streaming a game from centralized server.

Note ℹ️

Please note that while game streaming does not require greatest machine, it often requires decent internet connection, if you cannot provide it, you may encounter issues.

Also: Please note that if streaming games from centralized server, you might have to pay a subscription fee or wait in long queues until you will be able to play.

Other Tools

Steam-Related tools

GOG and Epic Games tools

Game Management

  • Lutris - Direct access to games from Humble, Steam, and more, as well as a game manager for all your Linux games.
  • GameHub - Unified library for all your games

Game-Specific Tools

Minecraft Tools

  • Minecraft Launcher - Official vanilla Minecraft Launcher
  • Modrinth App - Interface and launcher for mods and modpacks from Modrinth
  • Prism Launcher - Open Source Minecraft Launcher with the ability to manage multiple instances, accounts and mods. Focused on user freedom and free redistributability.

Roblox

osu!

  • osu!lazer - Official osu! version with support for Linux
  • osu!stable - Automatic installation script using WINE

:3

If you found this guide useful, please consider starring the project on GitHub! It helps a lot!

linux-gaming-omg's People

Contributors

ballszu avatar rimsiw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

ballszu

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.