Gaming on Ubuntu and Derivatives
Tags: linux, ubuntu
Published: 2021-07-15 22:55:04

---
title: Gaming on Ubuntu and Derivatives
published: true
date: 2021-07-15 22:43:40 UTC
tags: Linux,Ubuntu
canonical_url: https://giovanni.codes/gaming-on-ubuntu-and-derivatives/?utm_source=rss&utm_medium=rss&utm_campaign=gaming-on-ubuntu-and-derivatives
---

One of the myths that we have about Linux is that it is not good for gaming, and this has been true for a long time, since we could only enjoy native games and not so high budget, although there were exceptions, we must admit that if you wanted to play , you had to have a partition with Windows.

Lately this has changed, because, although there are not many native AAA games for Linux yet, there are ways that we can play modern games and almost as easily as Windows.

In this post I am going to show you what are the options that we have to play using Ubuntu and its Ubuntu based distros (Linux Mint, Pop! \_OS, Kubuntu, etc), so there will no longer be a pretext because your options to play in Linux have increased.

## Steam

One of the easiest ways to play games in Linux is Steam. The Steam client is native to Linux and you can play a lot of games that are made natively for Linux, but there is also the option to use **Proton**.

Proton is developed by Valve and works through Steam Play so that games developed for Windows are translated into a language that is compatible with Linux, uses tools such as **DirectX Vulkan** so we will have almost the same performance as in Windows.

But not all games are compatible with Steam, to know which games run well and which ones we will have a bit of problems we can use [Proton DB](https://www.protondb.com/). In Proton DB we have a database that will help us know which games are compatible, we have ratings to know this.

- **Native:** (They are native games for Linux)
- **Platinum** : (They run perfectly without making modifications)
- **Gold** : (Runs perfectly after making a few minor modifications)
- **Silver** : (Runs the game, with a few minor issues, but generally plays well)
- **Bronze** : (Runs but with problems)
- **Borked** : (Game won’t even start or is unplayable)

If you go to the page, you will see that many games are Gold or above, and that the little unplayable are generally multiplayer (like Destiny), but before installing anything I recommend that you visit the page to see if your game runs well.

**Set up and install Steam**

Using Steam in Ubuntu is very easy, you just have to download the Steam client from its [website](https://store.steampowered.com/) and install it. If you use Pop! \_OS it is much easier, since it comes in the repositories, in fact Pop!\_OS has very good support for games.

```
sudo apt install steam
```

Once we have Steam installed we need to start the application, now we have to activate Steam Play and Proton

![](https://giovanni.codes/wp-content/uploads/2021/07/steam_play.png)

Once you activate it, you can start playing games like The Witcher 3, Skyrim and other great titles.

## Lutris

[Lutris](https://lutris.net/) is an Open Source library in which users upload scripts for emulators and WINE to run games that were made for Windows, personally I use it if there is a game that is not on Steam like Magic The Gathering Arena and World of Warcraft.

The easiest way to install lutris is thought the repositories

```
sudo apt install lutris
```

If there is not Lutris in your repos, you need to add the apt-repository

```
sudo dpkg --add-architecture i386
sudo add-apt-repository ppa:lutris-team/lutris
sudo apt update
sudo apt install lutris
```

Once done, you can start searching the Lutris app for games and installing them.

Using Lutris is not as simple as Steam, but there shouldn’t be so many complications, I play Magic and WoW without problems, but sometimes there are scripts that don’t work, it is a matter of reading the instructions that come at the beginning and installing.

![](https://giovanni.codes/wp-content/uploads/2021/07/lutris.png)

Here are some screenshots that I am actually playing in WoW

![](https://codigolinux.mx/wp-content/uploads/2021/03/Screenshot-from-2021-02-28-21-28-36.png)

![](https://codigolinux.mx/wp-content/uploads/2021/03/Screenshot-from-2021-02-28-21-22-49.png)

![](https://codigolinux.mx/wp-content/uploads/2021/03/Screenshot-from-2021-02-28-21-17-19.png)

## Graphics Cards and Hardware

Obviously Linux does not make miracles, to play recent games you will have to have a graphic card that is capable to play games in high resolution, for example, to play high in 1080p you can use an NVIDIA GeForce GTX 1660Ti or 1660 super, if you have a better card you can take advantage of it.

Also the AMD cards are good and have good Linux support.

If you want to use your NVIDIA card to its full potential, you have to activate the proprietary drivers.

![](https://giovanni.codes/wp-content/uploads/2021/07/nvidia.png)

If you use Pop! \_OS, you have to download the ISO that has the NVIDIA drivers integrated.

Regarding the CPU, it is good to have an iCore 5 from 8th generation onwards or a Ryzen 5 from 2nd generation, for RAM with 16 GB it is enough for all games.

## MangoHud

One of the things I like to do is monitoring the temperature of the GPU and CPU while I am playing, as well as the percentage of use, I use MangoHud to have those statistics

![](https://giovanni.codes/wp-content/uploads/2021/07/thewitcher.jpeg)

To install MangoHud do the following, we must install git to make it easier

```
sudo apt install git
```

Inside the MangoHud folder we run the following (let it finish executing one command before running the next one)

```
./build.sh build
./build.sh package
./build.sh install
```

Once it is installed, we must create a configuration file to show what we want to , we can copy the one that comes by default

```
cp /usr/share/doc/mangohud/MangoHud.conf.example ~/.config/MangoHud/MangoHud.conf
```

Open the file

```
gedit ~/.config/MangoHud/MangoHud.conf
```

And copy paste this code

```
### MangoHud configuration file
### Uncomment any options you wish to enable. Default options are left uncommented
### Use some_parameter=0 to disable a parameter (only works with on/off parameters)
### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead

################ PERFORMANCE #################

### Limit the application FPS. Comma-separated list of one or more FPS values (e.g. 0,30,60). 0 means unlimited (unless VSynced).
# fps_limit=

### VSync [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on
# vsync=

### OpenGL VSync [0-N] 0 = off; >=1 = wait for N v-blanks, N > 1 acts as a FPS limiter (FPS = display refresh rate / N)
# gl_vsync=

################### VISUAL ###################

### Legacy layout
# legacy_layout = false

### Display the current CPU information
cpu_stats
cpu_temp
# cpu_power
# cpu_text = "CPU"
# cpu_mhz
# cpu_load_change
# cpu_load_value
# cpu_load_color

### Display the current GPU information
gpu_stats
gpu_temp
# gpu_core_clock
# gpu_mem_clock
# gpu_name
# gpu_power
# gpu_text = "GPU"
# vulkan_driver
# gpu_load_change
# gpu_load_value
# gpu_load_color

### Display FPS and frametime
fps
# fps_sampling_period=
frametime

### Display loaded MangoHud architecture
# arch

### Display the frametime line graph
frame_timing
#histogram

### Display the current system time
# time

### Time formatting examples
# time_format = %H:%M
# time_format = [%T %F]
# time_format = %X # locally formatted time, because of limited glyph range, missing characters may show as '?' (e.g. Japanese)

### Change the hud font size (default is 24)
font_size=24
# font_scale=1.0
# font_size_text=24
# font_scale_media_player = 0.55
# no_small_font

### Change default font (set location to .TTF/.OTF file )
## Set font for the whole hud
# font_file=

## Set font only for text like media player metadata
# font_file_text=

## Set font glyph ranges. Defaults to latin-only. Don't forget to set font_file/text_font_file to font that supports these.
## Probably don't enable all at once because of memory usage and hardware limits concerns.
## If you experience crashes or text is just squares, reduce glyph range or reduce font size.
# font_glyph_ranges=korean, chinese, chinese_simplified, japanese, cyrillic, thai, vietnamese, latin_ext_a, latin_ext_b

### Change the hud position (default is top-left)
position=top-left

### Display the current CPU load & frequency for each core
# core_load

### IO read and write for the app (not system)
# io_read
# io_write
# io_stats

### Display system RAM / VRAM usage
ram
vram

### Display MangoHud, engine or Wine version
# version
# engine_version
# wine

### Disable / hide the hud by default
# no_display

### Hud position offset
# offset_x=
# offset_y=

### Hud dimensions
# width=
# height=
# table_columns=
# cellpadding_y=

### Hud transparency / alpha
background_alpha=0.5
# alpha=

### Color customization
# text_color=FFFFFF
# gpu_color=2E9762
# cpu_color=2E97CB
# vram_color=AD64C1
# ram_color=C26693
# engine_color=EB5B5B
# io_color=A491D3
# frametime_color=00FF00
# background_color=020202
# media_player_color=FFFFFF
# wine_color=732010

### Show media player metadata
# media_player
# media_player_name = spotify
# media_player_order = title,artist,album

### Specify gpu with pci bus id for amdgpu and NVML stats.
### Set to 'domain:bus:slot.function'
# pci_dev = 0:0a:0.0

### Blacklist
# blacklist =

################## INTERACTION #################

### Change toggle keybinds for the hud & logging
toggle_hud=F11
# toggle_fps_limit=Shift_L+F1
# toggle_logging=Shift_L+F2
# reload_cfg=Shift_L+F4
# upload_log=Shift_L+F3

################## LOG #################
### Automatically start the log after X seconds
# autostart_log = 1
### Set amount of time in seconds that the logging will run for
# log_duration
### Set location of the output files (required for logging)
# output_folder = /home/<USERNAME>/mangologs
### Permit uploading logs directly to FlightlessMango.com
# permit_upload=1
### Define a '+'-separated list of percentiles shown in the benchmark results.
### Use "AVG" to get a mean average. Default percentiles are 97+AVG+1+0.1
# benchmark_percentiles=
```

There are several options that you can uncomment (remove the # from the command) but with this file that we have we can already see the amount of RAM and CPU that is used as well as the percentage and you can activate and deactivate with F11.

Now, to show it in Steam games, you must type the following in the launch parameters of each game.

```
mangohud %command%
```

 

![](https://giovanni.codes/wp-content/uploads/2021/07/steam_mangohuyd.png)<figcaption id="caption-attachment-211">I will change the picture for the english version</figcaption>

For Lutris we must go to **Options** and have the **advanced option** enabled, and in system options in the **Command Prefix** part, write mangohud

![](https://giovanni.codes/wp-content/uploads/2021/07/lustis-preferences.png)

And now you can have MangoHud activated.

With this guide I hope you can start playing on Linux and enjoy gaming.

The post [Gaming on Ubuntu and Derivatives](https://giovanni.codes/gaming-on-ubuntu-and-derivatives/) appeared first on [Giovanni Codes](https://giovanni.codes).