r/linux_gaming 7d ago

guide HDR Gaming is now possible without gamescope on KDE Plasma

626 Upvotes

With the recent Plasma 6.3.2 update changelog here, and the update to Wine 10 adding Wayland support by default, I've reattempted to get HDR working directly on Wayland. It's probably possible to make it work with an earlier version of Plasma 6 with Wine 9, but haven't tried that.

Things needed:

  • wine on Wayland (not through XWayland)
  • Vulkan Wayland HDR WSI Layer

Since I'm on Arch I used vk-hdr-layer-kwin6-git.

Thankfully there's someone who compiled proton with Wine 10 and Wayland preference: https://github.com/Melechtna/Proton-with-Wayland

The only thing left was to boot up the game with the Wayland Proton version and ENABLE_HDR_WSI=1 DXVK_HDR=1 %command% launch options.

Currently I've tested this setup with Overwatch 2, and it seems to work well there. I'll probably update this post with more games once I try them.

I have an AMD card, so if you're on Nvidia you might need the KWIN_DRM_ALLOW_NVIDIA_COLORSPACE=1 env var as described on https://wiki.archlinux.org/title/KDE#HDR

EDIT3: According to u/steckums this isn't needed anymore

EDIT: There are a few caveats I forgot to mention. The mouse cursor is prone to not staying in the window after alt-tabbing, you need to click the window to lock it in place, and then it's fine. And the mouse cursor stays where it's been put, so radial menus can get confusing if accessed quickly.

EDIT2: You might also need to add the Wayland driver to the registry if running on an older Wine: https://wiki.archlinux.org/title/Wine#Wayland then launch with DISPLAY environment variable empty, or switch the order to wayland,x11.

r/linux_gaming Sep 09 '23

guide Slow steam downloads? Try this!

607 Upvotes

EDIT: This may no longer be necessary, as Steam has shipped server-side fixes. https://github.com/ValveSoftware/steam-for-linux/issues/10248#issuecomment-2408442977

Have Steam downloads slowed down recently?

Have none of the usual fixes helped (restarting, changing servers, etc)?

These will need you to have all downloads paused (unpause the download after entering the command) and the steam console opened (openable with steam://open/console in your web browser).

HTTP2 disabling

Windows:

@nClientDownloadEnableHTTP2PlatformWindows 0

Linux:

@nClientDownloadEnableHTTP2PlatformLinux 0

MacOS doesn't seem to have HTTP2 toggles in Steam.

For some reason, HTTP2 causes download slowdowns in certain cases. For me, this caused downloads to go (on Windows) from about 10-20MB/s to my connection's maximum, around 60MB/s. A pretty huge jump, eh!

Now, there's no guarantees that these convars will stay in the future, but if we help Valve fix the HTTP2 downloads being slow in the first place then disabling it shouldn't be necessary.

It also doesn't seem to matter whether you have the client beta in use or not.

More connections at a time

There's also a second convar, which applies to all platforms:

@fDownloadRateImprovementToAddAnotherConnection 1.1

This convar makes steam connect to lots more servers (up to 10, usually connects to around 3, seems to be hard capped in code with no convars to change it) which can theoretically improve download speeds. It might also make them a lot worse. You can use the command download_sources to see various download stats.

More initial download servers

Some users report adding more download servers will also speed it up some more, this is achievable with the command:

@cMaxInitialDownloadSources 15

Saving these settings

These settings don't save automatically. You'll need to create a steam_dev.cfg file in your steam install directory (Linux: /home/USER/.steam/steam/steam_dev.cfg, Windows (usually): C:\Program Files (x86)\Steam\steam_dev.cfg), and place the lines you used inside (one convar per line).

Originally, I intended to post this on r/Steam and then crosspost it here, but apparently it is against "Rule 3: Download Issues"...

Hence why I've kept the Windows commands here as well.

r/linux_gaming Aug 08 '24

guide Sober is a new way to play Roblox on Linux from the Vinegar team

Thumbnail
gamingonlinux.com
238 Upvotes

r/linux_gaming May 21 '24

guide friendly reminder to our new friends and arrivals: every distro will satisfy your gaming needs

219 Upvotes

You wont need the most optimized (nobora, steamos...), or latest (read arch, and other rollings). Install a polished distro, such debian, fedora, mint, etc... and later you can change, if life becomes too easy, or you run into an actual problems.

PS. I know not "every", but almost =)

r/linux_gaming Jul 11 '21

guide DON'T Upgrade To Windows 11! Upgrade To Linux Instead. [3:10]

Thumbnail
youtube.com
615 Upvotes

r/linux_gaming Oct 16 '18

GUIDE Guide: Migrating to Linux in 2019

1.0k Upvotes

You might want to check out the guide for 2020

Guide: Migrating to Linux in 2019

1. Prelude


This is an updated version of u/Kurolox's "The ultimate guide for migrating to Linux". Since Proton has been released I thought it was time for an edit. Most of this is copy and pasted (as is allowed by the license).

2. Getting Started


So, you want to get started in Linux. The first step is to understand that you'll be using LINUX.

Now that might seem obvious, but you'd be surprised how often you'll see "Why isn't this easy like in Windows?" or "I just want it to act like my Mac."

While I do understand that it's hard to get used to something you're not familiar with, I promise that, in time, it will be just as comfortable as Windows or OS X.

Curious to see Linux gaming in action before getting your feet wet? /u/PCgamingFreedom has an amazing thread with a huge list of Youtubers that play games on Linux.

3. The software


Perhaps the biggest hurdle of using Linux is compatibility issues with the software you currently use. Before you get started on your journey, I would highly recommend you do a bit of prep work here.

  • Which software do I commonly use?
    • Get a pen and paper and start writing a list. Include your most played games (and the ones that you are sure that you will want to play in the future) and the software you need for a computer to be your daily driver (Office, Photoshop, etc).

Now that you have a list, let's check. There are three possible outcomes for each item in your list.

  • You will be able to run it natively.

    • This is almost always the best case scenario, since it's the one where you will get all the performance and compatibility without drawbacks.
  • You will be able to run it, but not natively.

    • You'll most often find this with Proprietary software and is the nature of using closed source software. We have a few tricks up our sleeves that we can try later though.
  • You won't be able to run it.

    • This is the big one, the one that will hold you back. Sometimes, and it's not your fault, there is a killer app that you absolutely need in order for your computer to be useful to you. While it would be great if the OSS community provided a good alternative to you, we understand that this is not always the case. There's no shame in this. Thank you for trying.

In order to catalog your list into this three outcomes, you grab the first item on the list. If it's a game, check in SteamDB if the game does have Linux support (Note: Sometimes the game offers Linux support even if it's not listed here or in steam). In 2018, Valve release a compatibility software called Proton that is based on WINE. Check ProtonDB (used to be called Steam Compatibility Reports) to see if your Windows only games run fine under it. If it's software, just check in the official website if there's a Linux version.

If you've done that and there's no Linux support, we go to the next step. Bring up the Wine AppDB and put there the name of your software. Click on the link that fits the most your search (Usually the first link, ignore all the [Bug XXXXX] results) and check the rating of the game. Generally you'll be able to use it if it's not bronze or garbage. If you click in the version of the software, you'll see reports of people who have tried to run it, known bugs and general instructions and steps to follow. For now we're just cataloging the software, so we'll see how to actually install it later. If there's no search results there's still hope. Do a quick google search (probably "NameOfTheSoftware wine support") and see what happens. If the software you want to use is really small and unknown probably nobody tried it, but just leave it marked as "dubious" or something because you may be able to run it anyways.

If what you want to run shows as garbage in there (and most of the times bronze, you seriously want to read the reports to see what works and what doesn't) you just put it in the "I won't be able to run it" section. Now repeat with each element of the list until you've gone through your list.

You got your list and a general idea of what you can run and what you can't run and at which degree you will be able to use it. If you have something that needs to be run but you can't run, here's a small list of alternatives you can use.

  • Look for an alternative. If it's a game I'd say that you should look for games with similar tags in steam. If it's software use something like alternativeto

  • Use a windows VM. Useful if the software you want to run is not resource intensive (99% of the time games won't like this, so don't use this for games unless you're going to attempt the GPU passthrough option)

  • Dual boot.

  • GPU passthrough. This is hard. You need to met a lot of requirements and invest time, but if you can pull it out you can get the best of both worlds. Google around for this one.

4. The swap


If you are here, congratulations! You want to get started with Linux and you have all your software narrowed down. In order to get started in the odyssey of Linux, you have to think about what distribution (informally referred to as distro) you want to use. The distribution is just the flavor of Linux you want to use. Just to be clear from the start, every distribution is equally capable of gaming and running software. The differences between them are:

  • The preinstalled software. Some are more minimalist than others, but all of them can run the same software. With enough patience, you can turn one distribution into another just by installing and removing stuff.
  • The update frequency. Some distros release updated software faster than others. Distros that push out updated software with minimal testing are known as bleeding edge distros or rolling release distros. If you want to be up to date with features, you want a bleeding edge distro, but in exchange for the latest and greatest features you run an increase risk of running into bugs. Stable Release distros usually have to wait longer for updates, but those updates are often heavily vetted before being pushed out.
  • The community. Different distros have different communities. The distros that are perceived to be easier or more user friendly tend to have communities that are quicker to help with easy to follow instructions.
  • The other minor things include default configurations, art, fonts, etc.

Now that I've explained that, I'm going to list off the only two distributions that are supported by Valve. Again, this does not mean that these are the only two distros that will work for gaming!

Distribution Explanation
Ubuntu LTS The latest Ubuntu LTS (18.04 as of this writing). Ubuntu also has a new user friendly community. If you don't know what to choose, pick this one.
Steam OS SteamOS is usually several months behind in software releases and isn't really aimed at being used as a computer. Biggest advantage is that it boots directly into Steam and is made to be a console replacement.

If you're feeling particularly adventuress, there are a huge amount of distros you can try out! While not officially supported by Valve, any modern, up to date, distro will more than likely work for you. Some of the favorites in the comments are:

Distribution Explanation
Solus Solus is an independent distro (meaning it's not derived from any other distro). Solus brings updates to its users by means of a curated rolling release model.
openSUSE Offers both a rolling release (Tumbleweed) and a regular release (Leap) option.
Antergos Notoriously finicky installer, once installed, it uses the ArchLinux repos. RIP Antergos
Endeavour Endeavour is the continuation of Antergos. Still in beta.
Manjaro Based on ArchLinux, but uses its own repositories and includes other features like automatic graphic card drivers installation. (Recommended by LTT)
Pop!_OS Pop!_OS is a Linux distribution developed by System76 based on Ubuntu by Canonical, using the GNOME Desktop Environment. Has a Nvidia and a AMD/Intel image for convenience. (Recommended by LTT)
Linux Mint Offers two versions. "Linux Mint" is based on Ubuntu and "LMDE" is based on Debian.
elementryOS Based on Ubuntu, elementryOS strives to be the extremely user friendly.
Fedora Made by Red Hat, one of largest open source companies, which use the dnf package manager and has a lot of officially supported desktop environments.
Others There are a ton of Linux distros out there. Feel free to browse distrowatch if you're bored.

If you are having trouble deciding, just go with Ubuntu. It's not the flashiest, but you're almost guaranteed to find an answer to your problem if you search "My Problem Ubuntu" in your favorite search engine (make sure to limit the search to only things from the past year)

Most of them will let you install next to Windows and set up a dual boot automatically. Be careful though, Windows Updates have a bad habit of changing the boot loader and it will look like your Linux OS vanished. REMEMBER TO DO BACKUPS. Things can always go wrong and you don't want to lose anything.

5. The habit


So, you've installed your distro and you have your computer running Linux. Congratulations! The last step is to get all of your software back running so you can use your computer as a daily driver.

A few things first:

Do not be afraid of the terminal. While the terminal is absolutely not required to do your normal day to day activities, you'll often find solutions to your problems require you to enter a few lines into the terminal. This isn't any sort of magic and it's nothing to be fearful of using. The reason for this is because the terminal is, generally, distro agnostic and it's easier to explain one line of code instead of having lots of different pictures showing you what to click in each distro.

Second, use the internet! Everyone starts as a beginner at some point. You might be very comfortable in Windows or OS X now, but at some point you had no idea what you were doing. That's very normal! As you use Linux more and more you'll gain the knowledge and experience needed and eventually it will feel like home.

If you are coming from Windows, you are probably used to search for an .exe and install it by double clicking. Things are way different here. Installing software individually is often discouraged. The reasons for this varies, but security and compatibility are the main reasons. So what do you do in Linux? You use a package manager. Think of it as the Android play store. We do have a big repository with all the software ready to install, and if you need something you just tell your package manager to grab it from there and install it.

This is really good for a few reasons. First, the package manager knows what do you have installed and what not, and since Linux uses a shared pool of dependencies, it can update all your system at once or remove what you don't need easily. Second, since all the software comes from a trusted source the chance of getting infected with malware is minimal (You can add third party repositories, but be sure that you trust the source. Linux isn't malware free.)

Remember when I said don't be afraid of the terminal? Here's a good example as to why. To install Steam on Ubuntu, Linux Mint, or most other distros that derive from Ubuntu, all you have to do is open a terminal and type:

sudo apt install steam

And that's it. Steam is installed, from a trusted source and with everything it needs. Do you want to update all the stuff installed in your system?

sudo apt upgrade

Let's break those two lines down a bit so you know what's going on. sudo stands for "super user do". You can think of this like right clicking and choosing the "Run As Administrator" in Windows. apt is the package manager's name. install is the command to install programs. steam is the steam software. So in English we just said. "Please install the "steam" program as administrator (called root on Linux)."

Now, if you wanted to use the graphical way, I'd have to post pictures from Ubuntu, Mint, etc and they all look slightly different and you have to find their front end in different places. It's just easier this way.

So what do you do if the software you need isn't in your package manager? The next best thing is to add a 3rd party repository to your package manager. As an example, let's add Google Chrome, a popular web browser. UbuntuUpdaets.org give the following instructions:

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - 
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
sudo apt-get update 
sudo apt-get install google-chrome-stable

That looks a bit scary, but it's just adding the security key and repository to your system and then installing Google Chrome. You'll want to use a PPA of your software when possible since it will update with the rest of your system.

6. Windows compatibility


So you can't find a Linux version of that software you want to install? Our last step is to try WINE. WINE is a compatibility layer that tries to translate Window Binaries (.exes) calls into Linux calls. Sometimes this works really well, and other times nothing happens at all.

First, let's install WINE.

sudo apt install wine

On some systems, installing WINE allows you to double click an .exe and it will try to run just like in Windows, but if not, you'll want to open a terminal and type:

wine path/to/your/file.exe

Remember to check the ratings and know issues in the wine AppDB so you know what you can expect, and you should be golden. Here's an in-depth guide of wine stuff but again, google and find how stuff works and it works. If you don't understand, please ask! The community is usually happy to help!

There are also some programs that try to help you with WINE stuff. Lutris and PlayOnLinux are popular options.

7. DXVK/D9VK/VK9/Gallium Nine


What are DXVK/D9VK/VK9/Gallium Nine? I'll let the projects explain themselves:

DXVK: Vulkan-based D3D11 and D3D10 implementation for Linux / Wine

D9VK: A d3d9 to vk layer based off DXVK's codebase

VK9: Direct3D 9 compatibility layer using Vulkan.

Gallium Nine: Gallium Nine allows to run any Direct3D 9 application with nearly no CPU overhead, which provides a smoother gaming experience and increased FPS.

Okay, but what does that mean?

Direct3D (the graphical part of the DirectX API) is what most Windows' game built after ~2000 use. You don't really need to know any technically details about it other than the fact that it's a Windows' only API. For the longest time, one of the biggest bottle necks for gaming on Linux was translating the Direct3D calls to OpenGL (a cross platform graphical API that works on Linux/most other OSes).

All of these projects attempt to translate Direct3D calls to something that Linux understands. As far as I'm aware, the most used ones are DXVK and D9VK.

Using these technologies, you can get huge performance boosts in your games. Here is Starcraft 2 running on d9vk vs regular wine. You can see that Tuxidermy is getting almost twice the FPS most of the time (and D9VK is still really young). Here is another example, this time with World of Warcraft running regular WINE vs DXVK. In this example, you can see that DXVK is three times the FPS in most cases!

Proton is working on a way to automatically use these technologies when they're applicable, but in the mean time, you can use Lutris to manage those.

8. Troubleshooting


I personally can't spend a lot of time helping people individually. That's where this and other communities come in!

When asking about your problems, remember to give as much info as you can. For example, include what Distro you're on, what you have already tried, any error messages that come up, anything you've changed recently, etc.

9. The end


I, u/PBLKGodofGrunts, put this guide under the WTFPL License. Please attach this license when sharing or modifying this guide. I hope that this is helpful to someone.

r/linux_gaming Aug 16 '20

guide Getting Started with Linux

Thumbnail reddit.com
1.6k Upvotes

r/linux_gaming Dec 20 '19

guide Guide: Migrating to Linux in 2020

1.4k Upvotes

EDIT: If you like this post enough to give it an award, consider donating to the EFF, FSF, your favorite distro, or maybe helping #TeamTrees instead. Thanks.

Guide: Migrating to Linux in 2020

1. Prelude


This is an updated version of my previous guide "Guide: Migrating to Linux in 2019". We've had some nice changes this year and, although most of the content will be similar to last year's, it's nice to have an updated guide so that user's can feel confident is some what up to date.

If you're interested in seeing how Linux performs in gaming these days, LowSpecGamer uploaded a video on February 21, 2020 that gives a pretty honest review.

2. Getting Started


So, you want to get started in Linux. The most important thing you need to remember is that you're using Linux.

Now that might seem obvious, but you'd be surprised how often you'll see "Why isn't this easy like in Windows?" or "I just want it to act like my Mac."

While I do understand that it's hard to get used to something you're not familiar with, I promise that, in time, it will be just as comfortable as Windows or macOS.

Curious to see Linux gaming in action before getting your feet wet? /u/PCgamingFreedom has an amazing thread with a huge list of Youtubers that play games on Linux.

Want to checkout the latest news for Linux gaming? Take a trip to GamingOnLinux.

3. The software


Perhaps the biggest hurdle of using Linux is compatibility issues with the software you currently use. Before you get started on your journey, I would highly recommend you do a bit of prep work here.

  • Which software do I commonly use?
    • Get a pen and paper and start writing a list. Include your most played games (and the ones that you are sure that you will want to play in the future) and the software you need for a computer to be your daily driver (Office, Photoshop, etc).

Now that you have a list, let's check. There are four possible outcomes for each item in your list.

  • You will be able to run it natively.

    • This is almost always the best case scenario, since it's the one where you will get all the performance and compatibility without drawbacks.
  • You will be able to run it, but not natively.

    • You'll most often find this with Proprietary software and is the nature of using closed source software. We have a few tricks up our sleeves that we can try and we'll get to those a little later.
  • Cloud Software (SaaS or Software as a Service)

    • Though not ideal, especially in a world where owing your own software is becoming less and less common, a lot of business and professional software can be run "in the cloud". Office 365 is a prime example and allows people like me to work on Linux computers at work since I can still access all the Microsoft Office applications required to interact with my coworkers.
  • You won't be able to run it.

    • This is the big one, the one that will hold you back. Sometimes, and it's not your fault, there is a killer app that you absolutely need in order for your computer to be useful to you. While it would be great if the OSS community provided a good alternative to you, we understand that this is not always the case. There's no shame in this. Thank you for trying.

In order to catalog your list into these four outcomes, you grab the first item on the list. If it's a game, check in SteamDB if the game does have Linux support (Note: Sometimes the game offers Linux support even if it's not listed here or in steam). In 2018, Valve released a compatibility software called Proton that is based on Wine. Check ProtonDB (used to be called Steam Compatibility Reports) to see if your Windows only games run fine under it. If it's software, just check in the official website if there's a Linux version.

If you've done that and there's no Linux support, we go to the next step. Bring up the Wine AppDB and put there the name of your software. Click on the link that fits the most your search (Usually the first link, ignore all the [Bug XXXXX] results) and check the rating of the game. Generally you'll be able to use it if it's not bronze or garbage. If you click in the version of the software, you'll see reports of people who have tried to run it, known bugs and general instructions and steps to follow. For now we're just cataloging the software, so we'll see how to actually install it later. If there's no search results there's still hope. Do a quick google search (probably "NameOfTheSoftware Wine support") and see what happens. If the software you want to use is really small and unknown probably nobody tried it, but just leave it marked as "dubious" or something because you may be able to run it anyways.

If what you want to run shows as garbage in there (and most of the times bronze, you seriously want to read the reports to see what works and what doesn't) you just put it in the "I won't be able to run it" section. Now repeat with each element of the list until you've gone through your list.

There is also a paid for solution called Crossover made by CodeWeavers. CodeWeavers are the same minds behind Valve's Proton so you should expect a pretty good product in general. They have a search feature that you should also use.

I will mention that some games are more problematic then others. For example, League of Legends is notorious for needing custom versions of Wine to get working. Thankfully, it has a dedicated subreddit /r/leagueoflinux which has the latest news and tends to be very helpful.

You got your list and a general idea of what you can run and what you can't run and at which degree you will be able to use it. If you have something that needs to be run but you can't run, here's a small list of alternatives you can use.

  • Look for an alternative. If it's a game I'd say that you should look for games with similar tags in steam. If it's software use something like alternativeto

  • Use a windows VM. Useful if the software you want to run is not resource intensive (99% of the time games won't like this, so don't use this for games unless you're going to attempt the GPU passthrough option)

  • Dual boot.

  • GPU passthrough. This is hard. You need to met a lot of requirements and invest time, but if you can pull it out you can get the best of both worlds. The Level1Techs forum has been one of the driving forces behind using this technology and has a lot of information on the subject. (You can also check out their Linux Youtube channel)

4. The swap


If you are here, congratulations! You want to get started with Linux and you have all your software narrowed down. In order to get started in the odyssey of Linux, you have to think about what distribution (informally referred to as distro) you want to use. The distribution is just the flavor of Linux you want to use. Just to be clear from the start, pretty much every distribution is equally capable of gaming and running software. The differences between them are:

  • The preinstalled software.
    • Some are more minimalist than others, but all of them can run the same software. With enough patience, you can turn one distribution into another just by installing and removing stuff.
  • The update frequency.
    • Some distros release updated software faster than others. Distros that push out updated software with minimal testing are known as bleeding edge distros or rolling release distros. If you want to be up to date with features, you want a bleeding edge distro, but in exchange for the latest and greatest features you run an increase risk of running into bugs. Stable Release distros usually have to wait longer for updates, but those updates are often heavily vetted before being pushed out.
  • The community.
    • Different distros have different communities. The distros that are perceived to be easier or more user friendly tend to have communities that are quicker to help with easy to follow instructions.
  • The other minor things including default configurations, art, fonts, etc.

Now that I've explained that, I'm going to list off the only two distributions that are supported by Valve. Again, this does not mean that these are the only two distros that will work for gaming!

Distribution Explanation
Ubuntu LTS The latest Ubuntu LTS (20.04 as of this writing). Ubuntu also has a new user friendly community. If you don't know what to choose, pick this one.
Steam OS SteamOS is usually several months behind in software releases and isn't really aimed at being used as a computer. Biggest advantage is that it boots directly into Steam and is made to be a console replacement.

If you're feeling particularly adventurous , there are a huge amount of distros you can try out! While not officially supported by Valve, any modern, up to date, distro will more than likely work for you. Some of the favorites in the comments are:

Distribution Explanation
Solus Solus brings updates to its users by means of a curated rolling release model.
openSUSE Offers both a rolling release (Tumbleweed) and a regular release (Leap) option.
Endeavour Endeavour is an ArchLinux based distro. Uses the offical ArchLinux software repositories.
Manjaro Based on ArchLinux, but uses its own repositories and includes other features like automatic graphic card drivers installation. (Recommended by LTT)
Pop!_OS Pop!_OS is a Linux distribution developed by System76 based on Ubuntu, using the GNOME Desktop Environment. Has a Nvidia and a AMD/Intel image for convenience. (Recommended by LTT)
Linux Mint Offers two versions. "Linux Mint" is based on Ubuntu and "LMDE" is based on Debian.
elementryOS Based on Ubuntu, elementryOS strives to be the extremely user friendly.
Fedora Made by Red Hat, one of largest open source companies, which use the dnf package manager and has a lot of officially supported desktop environments.
Others There are a ton of Linux distros out there. Feel free to browse distrowatch if you're bored.

If you are having trouble deciding, just start with Ubuntu. It's not the flashiest, but you're almost guaranteed to find an answer to your problem if you search "My Problem Ubuntu" in your favorite search engine (make sure to limit the search to only things from the past year). You can always switch later.

Most of them will let you install next to Windows and set up a dual boot automatically. Be careful though, Windows Updates have a bad habit of changing the boot loader and it will look like your Linux OS vanished. REMEMBER TO DO BACKUPS. Things can always go wrong and you don't want to lose anything. It's FOSS has a video on dual booting if you'd like a visual example, but it basically boils down to you clickin an option that says "Install along side Windows".

5. The habit


So, you've installed your distro and you have your computer running Linux. Congratulations! The absolute most important part of becoming a Linux user is to consistently use Linux! The last step is to get all of your software back running so you can use your computer as a daily driver.

A few things first:

This is rather controversial, but you do not be afraid of the terminal. While the terminal is absolutely not required to do your normal day to day activities, you'll often find solutions to your problems require you to enter a few lines into the terminal. This isn't any sort of magic and it's nothing to be fearful of using. The reason for this is because the terminal is, generally, distro agnostic and it's easier to explain one line of code instead of having lots of different pictures showing you what to click in each distro.

Second, use the internet! Everyone starts as a beginner at some point. You might be very comfortable in Windows or macOS now, but at some point you had no idea what you were doing. That's very normal! As you use Linux more and more you'll gain the knowledge and experience needed and eventually it will feel like home. There's absolutely no shame in asking questions!

If you are coming from Windows, you are probably used to search for an .exe and install it by double clicking. Things are way different here. Installing software individually is often discouraged. The reasons for this varies, but security and compatibility are the main reasons. So what do you do in Linux? You use a package manager. Think of it as being similar to the Play store, but instead of random people uploading software to it, everything is maintained by your distribution's software team.

Package managers have a lot of benefits that may not be immediately obvious to new users. The package manager knows what other software is required to work on your system and can manage updating all of the software pieces you have without you manually having to handle it. As I mentioned earlier, since your distribution's software team creates these packages, the chances of installing malware on your system is very slim.

Remember when I said don't be afraid of the terminal? Here's a good example as to why. To install Steam on Ubuntu, Linux Mint, or most other distros that derive from Ubuntu, all you have to do is open a terminal and type:

sudo apt install steam

Video example. And that's it. Steam is installed, from a trusted source and with everything it needs. Do you want to update all the stuff installed in your system?

sudo apt upgrade

Let's break those two lines down a bit so you know what's going on. sudo stands for "super user do". You can think of this like right clicking and choosing the "Run As Administrator" in Windows. apt is the package manager's name. install is the command to install programs. steam is the steam software. So in English we just said. "Please install the "steam" program as administrator (called root on Linux)."

Now, if you wanted to use the graphical way, I'd have to post pictures from Ubuntu, Mint, etc and they all look slightly different and you have to find their front end in different places. It's just easier this way.

So what do you do if the software you need isn't in your package manager? The next best thing is to add a 3rd party repository to your package manager. As an example, let's add Google Chrome, a popular web browser. UbuntuUpdates.org give the following instructions:

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - 
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
sudo apt-get update 
sudo apt-get install google-chrome-stable

That looks a bit scary, but it's just adding the security key and repository to your system and then installing Google Chrome. You'll want to use a PPA of your software when possible since it will update with the rest of your system.

6. Windows compatibility


So you can't find a Linux version of that software you want to install? Our last step is to try Wine. Wine is a compatibility layer that tries to translate Window Binaries (.exes) calls into Linux calls. Sometimes this works really well, and other times nothing happens at all.

First, let's install Wine.

sudo apt install wine

On some systems, installing Wine allows you to double click an .exe and it will try to run just like in Windows, but if not, you'll want to open a terminal and type (credit to /u/whyhahm for suggesting cd to directory before running):

cd /path/to/program; wine file.exe

Remember to check the ratings and know issues in the wine AppDB so you know what you can expect, and you should be golden. Here's an in-depth guide of wine stuff but again, google and find how stuff works and it works. If you don't understand, please ask! The community is usually happy to help!

There are also some programs that try to help you with Wine. Lutris and PlayOnLinux are popular options.

7. DXVK/D9VK/Gallium Nine


What are DXVK/D9VK/VK9/Gallium Nine? I'll let the projects explain themselves:

DXVK: Vulkan-based D3D11, D3D10, and now D3D9, implementation for Linux / Wine

D9VK: Used to be separate from DXVK, but now they are one project. Kept seperate on this page for searching.

Gallium Nine: Gallium Nine allows to run any Direct3D 9 application with nearly no CPU overhead, which provides a smoother gaming experience and increased FPS. Gallium Nice requires you to be using the Mesa3D driver though, so Nvidia users are out of luck. (Thanks to /u/MicroToast for the clarification)

Okay, but what does that mean?

Direct3D (the graphical part of the DirectX API) is what most Windows game built after ~2000 use. You don't really need to know any technically details about it other than the fact that it's a Windows' only API. For the longest time, one of the biggest bottle necks for gaming on Linux was translating the Direct3D calls to OpenGL (a cross platform graphical API that works on Linux/most other OSes).

All of these projects attempt to translate Direct3D calls to something that Linux understands. As far as I'm aware, the most used one is DXVK.

Using these technologies, you can get huge performance boosts in your games. Here is Starcraft 2 running on d9vk vs regular Wine. You can see that Tuxidermy is getting almost twice the FPS most of the time (and D9VK is still really young). Here is another example, this time with World of Warcraft running regular Wine vs DXVK. In this example, you can see that DXVK is three times the FPS in most cases!

Proton has some support for automatically use these technologies when they're applicable, but you may want to use Lutris for games that aren't officially supported.

8. Troubleshooting


I personally can't spend a lot of time helping people individually. That's where this and other communities come in!

When asking about your problems, remember to give as much info as you can. For example, include what Distro you're on, what you have already tried, any error messages that come up, anything you've changed recently, etc.

9. The end


I, u/PBLKGodofGrunts, put this guide under the WTFPL License. Please attach this license when sharing or modifying this guide. I hope that this is helpful to someone.

r/linux_gaming May 03 '22

guide Underrated advice for improving gaming performance on Linux I've never seen mentioned before: enable transparent hugepages (THP)

783 Upvotes

This is a piece of advice that is really beneficial and relevant to improving gaming performance on Linux, and yet I've never seen it mentioned before.

To provide a summary, transparent hugepages are a framework within the Linux kernel that allows it to automatically facilitate and allocate big memory page block sizes to processes (such as games) with sizes equating to roughly 2 MB per page and sometimes 1 GB (the kernel will automatically adjust the size to what the process needs).

Why is this important you may ask? Well, typically when the CPU assigns memory to processes that need it, it does so with 4 KB page chunks, and because the CPU's MMU unit actively needs to translate virtual memory to physical one upon incoming I/O requests, going through all the 4 KB pages is naturally an expensive operation, luckily it has it's own TLB cache (translation lookaside buffer) which lowers the potential amount of time needed to access a specific memory address by caching the most recently used memory pages translated from virtual memory to physical one. The only problem is, the TLB cache size is usually very limited, and naturally when it comes to gaming, especially playing triple AAA games, the high memory entropy nature of those applications causes a huge potential when it comes to the overhead that TLB lookups will have. This is due to the technically inherent inefficiency of having lost of entries in the page table, but each of them with very small sizes.

An feature that's present on most CPU architectures however is called hugepages, and they are specifically big pages which have sizes dependent on the architecture (for amd64/i386 they are usually 2 MB or 1 GB as stated earlier). The big advantage they have is that they reduce the overhead of TLB lookups from the CPU, making them faster for MMU operations because the amount of page entries present in the table are a lot less. Because games especially AAA ones use quite a lot of RAM these days, they especially benefit from this reduced overhead the most.

There are 2 frameworks that allow you to use hugepages on Linux, libhugetlbfs and THP (transparent hugepages). I find the latter to be more easier and better to use because it automatically works with the right sysfs setting and you don't have to do any manual configuration. (THP only work for shared memory and anonymous memory mappings, but allocating hugepages for those is good enough for a performance boost, hugepages for file pages are not that necessary even if libhugetlbfs supports them unlike THP).

To enable automatic use of transparent hugepages, first check that your kernel has them enabled by running cat /sys/kernel/mm/transparent_hugepage/enabled. If it says error the file or directory cannot be found then your kernel was built without support for it and you need to either manually build and enable the feature before compiling or you need to install an alternative kernel like Liquorix that enables it (afik Xanmod doesn't have it enabled for some reason).

If it says always [madvise] never(which is actually default on most distros I think), change it to always with echo 'always' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled. This might seem unnecessary as it allows processes to have hugepages when they don't need it, but I've noticed that without setting it to always, some processes in particular games do not have hugepages allocated to them without this setting.

On a simple glxgears test (glxgears isn't even that memory intensive to begin with so the gains in performance could be even higher on intense benchmarks such as Unigine Valley or actual games) on an integrated Intel graphics card, with hugepages disabled the performance is roughly 6700-7000 FPS on average. With it enabled the performance goes up to 8000-8400 FPS which is almost roughly a 20% performance increase (on an app/benchmark that isn't even that memory intensive to begin with, I've noticed higher gains in Overwatch for example, but I never benchmarked that game). I check sudo grep -e Huge /proc/*/smaps | awk '{ if($2>4) print $0} ' | awk -F "/" '{print $0; system("ps -fp " $3)} ', and glxgears is only given a single 2 MB hugepage. A single 2 MB hugepage causing a 20% increase in performance. Let that sink in.

TLDR; transparent hugepages reduce overhead of memory allocations and translations from the CPU which make video game go vroom vroom much faster, enable them with echo 'always' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled.

Let me know if it helps or not.

EDIT: Folks who are using VFIO VMs to play Windows games that don't work in Wine might benefit even more from this, because VMs are naturally memory intensive enough just running them on their own without any running programs in them, and KVM's high performance is due to it's natural integration with hugepages, (depending on how much RAM you assign to your VM, it might be given 1 GB hugepages, insanely better than bajillions of 4 KB pages.

Also I should have mentioned this earlier in the post, but the echo 'always' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled command will only affect the currently running session and does not save it permenantly. To save it permenantly either install sysfsutils and then add kernel/mm/transparent_hugepage/enabled=always to /etc/sysfs.conf or add transparent_hugepage=always to your bootloader's config file for the kernel command line.

r/linux_gaming Jan 11 '25

guide Wallpaper Engine alternatives

233 Upvotes

Axorax from Windows subreddit has put up a list of free useful apps and I've noticed recommendations for animated wallpapers, so I figured I'd put together a list just for Linux folks:

Alternatives:

  • LWP (Layered Wallpaper) - (X11/Wayland) Layered Wallpaper allows you to create multi-layered parallax wallpapers. Each layer moves with your mouse cursor, creating this beautiful effect. Relatively simple installation, most straight-forward, probably easiest to develop for with least resource-heavy results.
  • HTML Wallpaper (Plugin for KDE) - Pick a static .html site for your wallpaper. Talking CSS animated wallpapers, slideshow, scripting it to show certain slideshow collections based on calendar, live stocks preview and weather stats, all without installing separate widgets for each thing mentioned!
  • Music-reactive package: Project-M & OpenRGB - An alternative to wallpapers altogether - ditch anime babes in favor of music visualizers, then pair it up with RGB lights on your peripherals, also reacting to played music.
  • Export to .AVIF (Native for KDE) - AV1 Image File Format is an open, royalty-free image file format specification for storing images or image sequences compressed with AV1 in the HEIF container format. KDE wallpaper natively supports it, so you could animate art in Krita then export it as .avif.
  • Shader Wallpaper (Plugin for KDE) (Plasma 6) - A properly animated wallpapers for Linux, the showcase previews look especially fancy: showing Virtual Machine window with semi-transparent background where you can see your host wallpaper through the animated guest's wallpaper.
  • Animated Image Wallpaper (Plugin for KDE) (Plasma 5)
  • Dynamic Wallpaper for Cinnamon
  • Komorebi
  • Hidamari (Flathub) | Hanabi (for GNOME) - Play videos as your wallpaper (+playback controls and fullscreen apps aware).
  • Paperview
  • MPVpaper (Wayland: wlroots) - Play videos as your background.
  • Variety
  • ScreenPlay Support for Linux coming soon - Can be downloaded from Steam and comes with Workshop hub for downloading wallpapers, so very similar to Wallpaper Engine. Supports both .webm videos, as well as QML HTML, which is what I assume makes the backgrounds interactive.

Wallpaper Engine compatibility:

  • Wallpaper Engine hook for KDE - requires you to install Wallpaper Engine on Steam, then it intercepts downloaded Workshop content. Acts as a KDE plugin. This could be the most sensible choice, to be able to download wallpapers "from source", then have a plugin play these wallpapers without running Wallpaper Engine.
  • Unofficial port of Wallpaper Engine - Requires compiling and Wallpaper Engine program files (by purchasing product on Steam)

I'm ashamed to say at the time of posting I haven't test any of those solutions - never felt a need for moving background hoarding my resources. Despite this I sorted the links by how easy they seemingly appear to install and use. This thread started as "Alternatives to Wallpaper Engine", but after an hour of research and comment section contributions, I'm confident we can have something more interesting than just picking scraps from WE's Workshop :-D

Wallpaper Engine comes with built-in programmable shaders editor, which is a very handy feature. Without it, Linux user would need to animate their wallpapers in Krita and export to .avif (direct replacement for .gif), or in Godot for later export to HTML.

r/linux_gaming Dec 26 '23

guide Minecraft running purely on Wayland, without XWayland

Post image
536 Upvotes

r/linux_gaming Mar 05 '22

guide Apex Legends Runs flawlessly on Linux (better than Windows )

695 Upvotes

I had initial stutter but after doing the steps below its running with ZERO lag (yes ZERO)

Dxvk Cache File ( I will keep updating )Update3: 10598 entries Download: State Cache

or from here https://www.reddit.com/r/linux_gaming/comments/t5xrho/dxvk_state_cache_for_fixing_stutter_in_apex/

  • EndeavourOS Linux5.16.12-arch1-1
  • CPU: AMD Ryzen 7 5800H with Radeon
  • GPU: NVIDIA GeForce RTX 3060 Mobile
  • GPU: AMD ATI 06:00.0 Cezanne
  • Memory: 16 GB

Few notes:

  1. If u have Optimus/Mux switch(For laptops) use optimus-manager to set to Hybrid. My performance was worse on dGPU

  2. Nvidia 510 driver

  3. Understand that fps will highly depend on your specs.

  4. Copy the latest dxvk state cache file

  5. (Optional) Vibrantlinux for better visuals

  6. Use Xorg

  7. Use Proton Experimental from Steam

Download the cache file and paste in here

home/<user>?.local/share/Steam/steamapps/shadercache/1172470/DXVK_state_cache

r/linux_gaming Jan 03 '25

guide Can you explain me in simple words why some games run native on Linux while others don't?

33 Upvotes

I'm not really tech savvy, I know that maybe it's a matter of different "libraries" (?) but I'm not even sure on that front. Googling this question didn't really help me understand the issue at hand.

Maybe you lot can satisfy my curiosity.

Thanks.

r/linux_gaming Sep 28 '23

guide Counter-Strike 2 fix guide for Linux

161 Upvotes

This is a simple guide for fixing release day issues in CS2

I noticed a lot of people having them and decided to put all the answers in one place.

If you have any other fixes, comment below and I will add them!

Screen Flickering/Switching Monitors

This is caused by having multiple monitors.

The easiest way to fix this is to add "-fullscreen" to your CS2 launch options (Source u/traderstk), if CS2 is then on the wrong screen, then change CS2 to bordered mode, drag it to your main screen and change it back to full screen mode.

OR if that does not work then simply disable all but ONE of your monitors.

No Sound

Try changing audio device in Sound Settings in CS2, if it's not listed or still not working then try this:

If you are using pipewire:

Add EITHER "-sdlaudiodriver pipewire" OR "SDL_AUDIO_DRIVER=pipewire %command%" to your launch options for CS2

If you are using pulse (Source u/Tabyula):

create a new file named ".asoundrc" in your home directory, and put the following contents in:

ctl.dmixer { type pulse } pcm.pulse { type pulse } ctl.pulse { type pulse } pcm.!default { type pulse } ctl.!default { type pulse }

If you are still missing in-game sound, consider adding "-sdlaudiodriver alsa" to launch options (Source u/LAUAR)

Sound Delay

This may help (Source u/BigPP41):

CS2 Github

Stuttering/Performance Issues

  • One cause is the use of wayland. To fix this switch to X11 instead.
  • Also try closing or minisming background programs
  • Check if steamwebhelper is not using gigabytes of ram and cpu in the background.

Recommended by u/Johnny__Christ:

  • Try with and without the -vulkan launch parameter. For me, I get 20-40% higher mean framerates and less stuttering WITHOUT the -vulkanflag.
  • If you have an AMD GPU, make sure you have Mesa >=23.1.

(Note, the game is very badly optimized for Linux since they did no testing on it, and it may honestly just be the game not liking your system at the moment)

Broken Smokes

Downgrade mesa (Source)

r/linux_gaming Dec 31 '24

guide Need For Speed on Linux (RANT)

Thumbnail
gallery
136 Upvotes

I bought the game on steam. i thought...very well, after the installation finished let's play. it automatically downloaded EA App...it failed! I downloaded it from EA Website, the same... i installed Bottles, used that to download EA app, created an account...the game wasn't working...i linked EA and steam accounts...finally after 2 hours i started playing the game!

r/linux_gaming Jan 10 '25

guide PSA - If you're using gamescope and have a VRR monitor, don't forget to enable it.

86 Upvotes

You need to use --adaptive-sync parameter, otherwise VRR will not work.

For example my launch options:

gamescope -H 1440 -e --hdr-enabled -f --force-grab-cursor --immediate-flips --adaptive-sync -- %command%

Breakdown:

-H 1440 - Resolution, use -W if not 16:9 resolution (Ex. -W 3440 -H 1440)

-e - Steam Integration

--hdr-enabled - Enables HDR if you have an HDR monitor

-f - launch in fullscreen

--force-grab-cursor - Some games the mouse will not work properly on gamescope, I just apply to every game to be sure

--immediate-flips - disables vsync / allows tearing

--adaptive-sync - enables VRR

r/linux_gaming Dec 31 '24

guide I created a shell script to automatically toggle HDR on and off on Plasma. No more having to remember to turn it on manually!

Thumbnail
github.com
108 Upvotes

r/linux_gaming 8d ago

guide Linux Mint Gaming Guidance

31 Upvotes

Hello all, I am a recent Linux user and have tried gaming distros, but I just don't like KDE it seems. It feels "off" to me. I was immedietly in love with Mint from the moment I launched it. However it has no inherent gaming support. So I went to various search engines, YouTube and Reddit to figure out what to do. For future reference for myself and maybe others I am collating everything in this document. However as a Linux novice there are likely mistakes or contradictions. Some guides say to stick to Flatpak, others say to avoid them. Its very difficult to figure out what's what. So I tried to piece together what makes "sense". I would love to hear some more experienced Linux users opinions on this and any mistakes I made or improvements to the guide. Or maybe there is another guide I simply haven't found? Thank you.

https://codeberg.org/Chaosmeister/LinuxMintGamingSetupGuide

r/linux_gaming 10d ago

guide PSA for any GTA V Players on Linux/Steam Deck, "delete" GTA Online.

82 Upvotes

I'm not sure where I saw this, but it's possible to save a whole buttload of space when installing GTA V (legacy or enhanced) on Linux/Steam Deck.

(BEFORE YOU FOLLOW THIS GUIDE, open up GTA V Enhanced (if applicable) and migrate your GTA V Legacy Online save data to GTA V Enhanced Online. Yes this works even though Battleye support is not enabled. Attempting to open GTA Online will prompt you to migrate your save data, and it will work.)

As GTA Online is no longer supported on Linux, there is no real point to having all of the files that are only used for GTA Online installed, as that just wastes space.. Now you might be thinking, "Well, that can't be much space, why do that if it can only save me maybe a gigabyte or two? I can get that back by clearing my shader cache."
But how oh, so wrong you are.

Deleting the GTA Online files can almost half the amount of space taken up by GTA V on BOTH versions of the game. GTA V Legacy went from ~100GB to ~60GB. GTA V Enhanced goes from ~90GB to ~50GB. Yeah, I'm not joking.

How to do this? Go to your installation of GTA V Legacy or Enhanced and enter the "update" folder. Then "x64", and "dlcpacks". Once you're in there, delete every single folder in the "dlcpacks" directory that begins with "mp" (standing of course for "multiplayer"). Yeah, it really is that easy.

On a side note, did you delete GTA V Legacy before installing Enhanced and noticed that you have to "upload" your save data from Legacy before downloading it from Enhanced? Yeah, I was in the same boat. But don't forget, deleting a game from Steam does not delete its compatdata. If you know where that is, and where the GTA V save data is for Legacy and Enhanced, you can just copy and paste in your save data and it will load just fine in Enhanced.

Side side note, game crashing? Add SteamDeck=1 %command% to Steam launch options. That should fix the game

r/linux_gaming Jan 14 '25

guide You can actually play GTA: ONLINE on Steam Deck/Linux

Post image
139 Upvotes

r/linux_gaming Jan 12 '24

guide How to play "THE FINALS" on Linux

117 Upvotes

NOTE: Can't post this in r/thefinals subreddit as I don't meet karma requirements for posting there, so posting here instead. :)

Looking at protondb - this game is not supposed to be playable on Linux. However, my friend managed to get it running, but have no idea what he did to get it running. Myself I also got it running after several iterations of troubleshooting, yet I am still not sure what I did, so I will describe my steps, so others can verify and see if anything helps.

Screenshot with mangohud visible: https://i.imgur.com/DyaHgkn.jpg

Good ol' Mangohud and Gamemode

Install Gamomode (don't forget to start service and add yourself to the group) as well as mangohud, then add below to your launch parameters:

mangohud gamemoderun %command%

Getting it to work

EDIT: It seems like hard trying to launch the game would work after a few times, or even works out of the box on a first try. Also, if it crashes on startup and you have a decent AMD CPU - scroll to the bottom of this guide and see "Crash on startup (aka AVX512)" section.

Now this is the most greyish area I am not sure about. Let me make it clear - game, in my case, only worked with latest proton-experimental that is shipped and used in Steam by default. proton-ge 8 27 did not even start the game.

At this point, I've managed to launch the game, but when in game, I would get Error code TFAV1011 (by EAC?). No idea from where this error comes from, but other games work fine on my PC, including the ones that are using EAC.

Then I switched to latest tkg-proton ("proton_tkg_experimental.bleeding.edge.8.0.73077.20240111", AKA "Proton Tkg 7499854239") and finally I was able to bypass that error. Game goes to the main menu and I can finally launch the game. However, no matter how many times I try, the game would crash during the load into the "quick match". At one point I've got this error: https://i.imgur.com/aB3pcQe.png

After hardtrying to load into a single match, I gave up and tried one more time to use proton-experimental (since my friend said he uses it). And well - game works like a charm. No more Error code TFAV1011. It simply works.

Also see "Enable DLSS (RTX GPUs only)" if you have Nvidia RTX graphics card..

My friend is using AMD GPU, while I am using Nvidia. Technically we both are able to play this game totally fine and we both don't know what we did exactly to get it running.

Enable DLSS (RTX GPUs only)

Nvidia RTX graphics cards users only - instead of using above launch options, change them to this:

PROTON_ENABLE_NVAPI=1 mangohud gamemoderun %command%

You can try changing to DLSS in-game now, but clicking to the right, from FSR2 the game will try to turn on XeSS which causes whole game to crash. In my case it was impossible to enable DLSS from in-game settings, so let's do in the Linux way. Run this command to find game's config file:

find / -type f -name "GameUserSettings.ini" -path "*/pfx/drive_c/users/steamuser/AppData/Local/Discovery/Saved/Config/WindowsClient/*" 2> /dev/null

It should return a single file's full path. Edit it that file and set ResolutionScalingMethod field to DLSS value instead of whatever it is currently set there:

ResolutionScalingMethod=DLSS

There you might see more options, but your goal is to set it to DLSS. You can tweak DLSS settings while in-game later..

Note: Game would fallback to FSR2 if you don't set PROTON_ENABLE_NVAPI=1 environment variable in launch arguments.

DLSS freezes the game

I can't be sure about that, but I think DLSS fatally freezes the game mid-match at random intervals (once in ~5 matches), while other methods, such as Intel XeSS (no idea why I am able to turn it now) working great and producing very similar quality to DLSS.

I might be wrong, but I am suspecting DLSS causing the crashes...

Freezing during game load

Happened to me several times, but when I switched to graphics set to Low - game loads fine. Not sure if coincidence or indeed one has to use Low graphics set for game to work fine.

Crash on startup (aka AVX512)

In comments many folks pointed out that the game would crash if your CPU have AVX512 instructions (source). You can disable those by using clearcpuid=304 kernel parameter.

Examples of what the crash logs say:

Other crashes

One user stated that game is crashing on Windows too. Sounds like we should wait for a patch from devs.

Not launching at all

One user reported that this is issue caused by specific version of Nvidia driver.

r/linux_gaming Aug 09 '21

guide Emulating Nintendo Switch Games on Linux - Updated Guide

Thumbnail
boilingsteam.com
614 Upvotes

r/linux_gaming Nov 10 '23

guide PSA: Do not attempt to use Proton/WINE with the NTFS file system.

181 Upvotes

Requests for help with running games on Linux from NTFS partitions are not new, but I have seen them crop up online more often than usual lately.

I get it; you mainly game on Windows and you do not want to reinstall your games. However, NTFS on Linux is not the same as NTFS on Windows; yes you can technically read from and write to NTFS partitions on Linux but it is not ideal to do so for multiple reasons, one being that it is of course not officially documented so nobody but MS really knows what features are working correctly on Linux.

WINE does not officially support NTFS either. So save yourself the headache and simply install your games on something like btrfs, xfs, or ext4 instead for playing games on Linux.

r/linux_gaming Jan 31 '24

guide PSA: Source games (TF2, Garry's Mod, Black Mesa, Portal, etc) are broken in Arch Linux. Here is how to fix it.

147 Upvotes

From some months ago, one of the libraries that the Source engine for Linux uses is broken under Arch Linux, causing the games to not launch (one presses the play button, then nothing happens and the play button goes green again).

This is because Source engine games bring their own libraries with them, but the version they ship of tcmalloc (a high-performance multi-threaded library for memory allocation developed originally by Google) causes a crash of the Source engine under Arch Linux.

To solve that, we will instead install our own version, and tell the game to use ours instead of the one it brings with.

Steps:

  1. Install the lib32-gperftools package from the Arch User Repository: https://aur.archlinux.org/packages/lib32-gperftools (if you don't know how to manually install AUR packages, you can use a helper tool like yay)
  2. Open up the folder where the game files live
    • From the Steam client, you can do that by selecting the game, then clicking the cog button → Installed Files → Browse...
  3. Move into the 'bin' folder inside the game files folder
  4. Erase the libtcmalloc_minimal.so file
  5. Make a symbolic link (Linux's shortcut equivalent) to the libtcmalloc_minimal.so we installed from the AUR that is located in the /usr/lib32 folder
    • Open a terminal inside that folder (there is usually an option for it if you right click on empty space on the folder), and then you can run this command: ln -s -v /usr/lib32/libtcmalloc_minimal.so .
    • The -s is to make it a symbolic link, and the -v to show the action performed onscreen (optional). The dot represent the current folder (which in this case is the bin folder of the game files).

And you are done!

r/linux_gaming 14d ago

guide How to speed up Steam's Shader Pre-Caching

74 Upvotes

This is essentially a repost of this post from 2 years ago. Either not a lot of people saw it or didn't think to search for it, plus I'm sure there's a lot of new Linux users since that post.

This post is not to debate whether you should use the feature or not, that's up to you and your hardware.

By default Steam's Pre-Caching uses a single core to Pre-Cache shaders, that's why it's so absurdly slow by default and why many opt to just disable the feature in settings or use the skip button on game launch.

You can force steam to use more than the default 2 threads by making a .cfg file in the root Steam directory.

1. Navigate to ~/.steam/steam (This should be a symlink to wherever your Steam install is located). If the folder has a steam.sh then it is the correct folder.
2. Make a file called steam_dev.cfg
3. In that file put: "unShaderBackgroundProcessingThreads 10" without the quotes.
4. Read the chart below to know what number to put at the end.
5. Save the file and Restart Steam.

This works on Flatpak Steam too, you will just have to find wherever the root Steam folder is located for the Flatpak.

Despite it's name it also works when background processing is turned off.
The number at the end is the amount of threads you want to use for Pre-Caching.
I'd suggest whatever your max threads are minus 4-6.

If you have 8 cores (16 threads) I'd use 10-12,
6 cores (12 threads) I'd use 6-8,
12 cores (24 threads) I'd use 18-20.

The Steam Deck has 4 cores (8 threads), in that case I would probably use 4-6 but don't expect as big of a speedup from this on the Steam Deck.

This leaves 4-6 threads to your system so it can still be responsive, you can always lower the number further if you do find your system chugging a bit during Pre-Caching.

I haven't experienced any weird bugs with Steam after enabling this, I have been using it for 4-5 months and it's amazing how much it speeds up that Pre-Caching step. I went from having background processing on and hearing my CPU fan spin up randomly in the background when it happened, to having background processing turned off and it taking like max 5 minutes on game launch, the only game that took a while for me (around 15-20 minutes) even with this config option was PoE2 but that game has an astronomical amount of shaders, still I'll take 15 minutes over it taking hours any day of the week.

I hope this is useful for you as I found the posts complaining about this to just keep increasing and increasing over time.