this post was submitted on 19 Aug 2023
51 points (94.7% liked)

Linux Gaming

15494 readers
502 users here now

Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.

This page can be subscribed to via RSS.

Original /r/linux_gaming pengwing by uoou.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 2 years ago
MODERATORS
 

Well I’m hopping around… again. I thought I had a good stable setup going but then something happens upstream that goes against what I want/believe in (looking at you RedHat) and I’m back on the hunt again.

I thought about trying out a Debian based distro but then I thought “why don’t I just use Debian itself (Sid, not stable/Bookworm)”.

Most if not all gaming software have a way to be installed on Debian so I don’t think that could be an issue.

Is anyone else using Sid? Am I missing something by not going with a gaming focused distro??

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 20 points 1 year ago* (last edited 1 year ago) (2 children)

I'll do you one better: I'm using Debian Stable for gaming and there's nothing bad to report. Based on my experience I'd recommend that you use Stable first, unless you feel you really need Sid. I previously ran Arch Linux, but after switching to Stable and manually sourcing a few critical cutting-edge applications through e.g. Flatpak, it feels the exact same. I don't feel like running the entire system as bleeding edge is a good idea when you can just run a couple dozen things as cutting-edge instead.

If you plan on using Sid instead of Stable, most of the following will not apply:

  • Lutris has its own Deb repo if you need the latest updates, or it's available as a Flatpak.

  • If you use Flatpak Lutris and want to use MangoHud, you'll need to install the Flatpak version with flatpak install flathub org.freedesktop.Platform.VulkanLayer.MangoHud (I don't think it shows up in the normal store)

  • The one gotcha I've found regarding Debian Stable and gaming is that Mesa will fall out of date as the release cycle goes on and probably won't be backported. The solution is that running games via Flatpak (Lutris, Steam, etc.) uses Flatpak's Mesa instead, which is cutting-edge. You can also try to compile a local Mesa version with this script, and you can manually trigger games to use this version instead of the system version. It does work, but it's more complicated and a little bit more messy.

  • I use the Xanmod "Main" kernel for a more recent kernel that isn't too bleeding-edge - it stays on the previous Linux kernel version until a few point releases have come out.

  • CoreCtrl is available as a bookworm-backport. I manually backported it myself but it looks like it's official now.

  • I'm running Wayland and KDE, with no issues to report (even with gaming)

  • I've manually compiled Libstrangle for FPS limiting, but I've found that I can use MangoHud to transparently limit FPS as well, by using the following environment variable: MANGOHUD_CONFIG=fps_limit=YOURFPSHERE,fps=0,frame_timing=0,cpu_stats=0,gpu_stats=0,background_alpha=0. When I want MangoHud to act as normal, I switch it to MANGOHUD_CONFIG=readcfg which uses my normal config instead. Notably, Libstrangle cannot be used with Flatpak Lutris, so FPS limiting will need to be done with MangoHud if you want to limit Linux games. DXVK games can be limited with DXVK_FRAME_RATE as well, if that's all you need.

  • I make heavy use of Flatpaks for any user applications that I need to keep more modern

  • If it's not available as a Flatpak, I tend to use Homebrew to keep any other critical applications up-to-date (usually some CLI tools)

  • I use cargo through rustup to keep some rust programs updated

  • I use deb-get with a couple programs that aren't on any real repos in order to get updates

  • I've compiled a couple backports by following this guide in a stock Debian Stable VM, then copying the .deb files back out to my main system. So far this has been super easy, but I don't want to do this unless I have to.

  • If a program needs to be manually compiled, I try to install it using checkinstall. checkinstall basically fake-runs an installation and notes where everything goes, then stuffs it all into a .deb for you for a proper installation that can be uninstalled later. It's a little buggy and doesn't always work, but if it does it's preferable. I rarely am forced to compile something that actually needs to be installed to system, but I've used it a few times with good success.

  • (Do not make a FrankenDebian)

I can't think of anything else regarding Debian Stable that I've done at the moment. Anything else has just worked as I'm used to on a bleeding-edge distro like Arch Linux. Debian's large package base has really helped me with obscure programs that I used to need to compile manually with Arch Linux.

[–] [email protected] 5 points 1 year ago

Excellent write up. I just wanted to add I am also using Debian stable (bookworm) and it’s going great. I use steam and I’m playing Baldur’s gate with no issues. I have a nvidia 1070.

(my home server is arch btw)

[–] lal309 3 points 1 year ago (1 children)

This looks like a detailed write up. I need to sit down and digest this information (currently out and about). I’ll come back to you with questions I’m sure.

[–] [email protected] 4 points 1 year ago (2 children)

Most of it is relating to getting the stability benefits of Debian Stable while keeping your system modern like Sid (not necessarily just for gaming). Keep in mind that Sid is inherently volatile/unstable and a lot more prone to breakage, so I wouldn't recommend going that route unless you feel you have a real usecase, as you might find yourself needing to manually fix problems every so often on a Sid install. For a typical gaming workload I don't feel like Sid is required, and with just a couple tweaks (Flatpak Steam/Lutris + newer kernel version mainly) you can get Stable to perform the same role cleanly. You can always upgrade into Sid later if you feel like you really can't handle Stable's older native packages.

Also, idk if it was explicit enough but the point of the original post is that yes, Debian is great for gaming, even with Stable. I would base your distro decision on literally any factor besides gaming, because if Debian Stable can do it then every distro can do it. You mentioned annoyance with Red Hat in your original post, so a strong selling point of Debian is that it's a community distro. Arch Linux is also a great community distro that's bleeding edge like Debian Sid.

Debian is generally easy to use but it's still a tiny bit more DIY than most popular distros - if you find Debian too annoying to set up you can always try Linux Mint/Linux Mint Debian Edition, which is a very reputable Debian-based distro.

[–] lal309 3 points 1 year ago (1 children)

Very valid points. Since the RedHat announcement, I’ve migrated all my home servers to Debian so I thought “why not switch over my gaming rig as well”. As I thought about which district to use I came to the realization that I don’t want another situation where I’m using a distro based on another distro and that other distro decides to do something that affects the distro I’m using and blah blah. So then that leaves me with using the base (Debian, Arch, etc.) to avoid what I just mentioned.

I’ve been using Linux for quite some time so I can usually handle some break/fix. I haven’t tried Linux Mint yet but again, I rather just go straight to the base and go from there.

Still want to read your post tho. I’ve got Sid setup and ready to go and I do want to see how much breakage it introduces as I continue to use it. If it’s a bit too much, I’ll give stable a try.

[–] [email protected] 3 points 1 year ago (2 children)

I don’t want another situation where I’m using a distro based on another distro and that other distro decides to do something that affects the distro I’m using and blah blah. So then that leaves me with using the base (Debian, Arch, etc.) to avoid what I just mentioned.

Yeah this is generally where I'm at as well. There's no point tying yourself indefinitely to a downstream distro/maintainer because they configured some stuff that takes 1-3 hours to do yourself. Downstream distros may also break some stuff or configure things poorly, so it's just better to get it from upstream and follow their guidance.

Linux Mint gets a special mention even though it's derivative, just because it's a solid and reputable distro with a long history of being sane and easy to use. If I'm recommending Linux to a new person they always get Linux Mint as an answer.

[–] lal309 1 points 1 year ago

Also a very valid point!

[–] lal309 1 points 1 year ago (1 children)

Out of curiosity, are you running Steam/Proton/etc on Flatpaks because the normal packages are too outdated in stable or because the dependencies for them are too outdated?

Also are you not running into issues where the flatpaks can’t talk to each other? For example, installing a proton version on the steam path. Since flatpaks are isolated and have limited access to the system, wouldn’t I run into issues there?

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago) (1 children)

I run Flatpaks for gaming mainly because I want cutting edge Mesa (which is inherently used while running games from Flatpaks). It's not necessary right now since Bookworm was just released and Mesa is not that old, but as a long-term plan I think this is more consistent. I don't think Steam will have a problem keeping up to date without Flatpak, but Lutris is probably best kept cutting-edge via external Deb repo or Flatpak. In general Flatpaks are pretty terrific and I recommend using them for a lot of things nowadays anyway (I even used a lot of them on Arch Linux). There's really no performance cost anymore, and most Flatpaks are configured seamlessly from the start so you don't need to worry much about access issues.

Flatpaks can generally access anything they want, but you might have to allow that access manually, depending on how the Flatpak is initially configured (Flatseal makes this super easy). Usually this just means you'll need to allow read-only or read/write access to specific directories where your personal files live. The biggest problem that Flatpaks have is that they absolutely can't access /usr (and /usr/bin by extension), and this can make things like running mangohud %command% or strangle 60 %command% more or less impossible. You can actually still access stuff via /run/host/usr/bin from inside a Flatpak if you give it host permissions but things run this way usually get very confused and don't work correctly. You can also try to use flatpak-spawn to do some interesting things from within the "sandbox", but its usecases are limited in my experience. Notably you can cut off internet access from a game that's being run, but flatpak-spawn also currently has a bug/oversight which wipes out the environment variables for the spawned process, which usually causes some havoc.

There are also "portals" that hook into Flatpak, which I don't know nearly enough about. If you use KDE for example, when you "open" a file using a Flatpak'd program, KDE will swap in a native file dialog and let you pick a file from anywhere even if the Flatpak doesn't have access, and then it grants a temporary one-time access to that file to the program. For example I disallow Discord from accessing practically everything, but I can still upload files from anywhere on my system to a Discord channel with the KDE file portal.

In terms of Proton versions and Wine versions etc, there's no issues here. I usually use ProtonUp-Qt to install different versions, and Steam/Lutris/Bottles will have no issues accessing these even if they're Flatpak'd.

Edit: Also, you can theme Flatpaks like this. You'll need your system themes to be installed to ~/.themes and ~/.icons in order for Flatpak programs to access them, and then you can set default global overrides for the theming environment variables and access to ~/.themes etc. using Flatseal. This will allow all programs to use your themes without individual configuration.

[–] lal309 1 points 1 year ago (1 children)

Okay, on this thread alone a lot of people are suggesting to go stable (including yourself) so now I’m thinking you guys must know something I don’t. Truthfully, I only really need a few things for the games that I run like a recent kernel (XanMod maybe?) Wine staging, steam, nvidia drivers, lutris, bottles and proton (through ProtonUp-Qt). As long as I can run those things on recent versions, I think going stable would be fine too.

[–] [email protected] 1 points 1 year ago (1 children)

The advent of Flatpaks have really made Debian Stable into a serious contender for desktop Linux, and Debian 12 is a remarkably good release even by Debian's standards. Bookworm has received a lot of praise since its release, and I think people (like myself) are starting to reconsider what a desktop Linux can look like.

It does take a little bit of extra setup to get more cutting-edge stuff for the applications you use most often, but after sourcing everything and stuffing all the individual updating mechanisms into an update script, you'll get the best of both worlds - stable base and rolling user applications. If nothing else you should try Stable first before resorting to Sid - you may be inheriting Sid's volatility without a proper usecase. If you don't run Debian Stable or Debian Sid/Arch Linux, you'll probably want to go somewhere in the middle like OpenSUSE Tumbleweed, which is cutting-edge with extensive testing baked-in.

[–] lal309 1 points 1 year ago (1 children)

I’m going to give stable a try and see how far I get with gaming and go from there. I’ve never run straight Debian as a desktop it’s always been on servers so my experience there is limited.

I’m curious as to the update script you are talking about. Care to point me to an example? Wouldn’t flatpak update do the trick for everything running in flatpaks? And apt update/upgrade for the rest?

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

Wouldn’t flatpak update do the trick for everything running in flatpaks? And apt update/upgrade for the rest?

Yeah exactly. An update script just runs all these updates in a single command

this is what mine looks like (apparently lemmy does not like &&'s so take care with the & bits):


debupdate() {
  echo -e "##======================== Nala upgrades ============================##"
  sudo deb-get update 1> /dev/null # fetch deb-get repos ahead of time just for timing purposes
  sudo nala upgrade # nala is better than apt

  echo -e "##======================== Flatpak upgrades =========================##"
  flatpak update

  echo -e "##======================== deb-get upgrades =========================##"
  sudo deb-get upgrade

  echo -e "##======================== Rust upgrades ============================##"
  export CARGO_PROFILE_RELEASE_LTO=true
  export RUSTFLAGS="-C target-cpu=native"
  rustup update && \
  cargo install-update -a # this is a custom cargo package: https://crates.io/crates/cargo-update - take care as this doesn't inherently recompile with the same flags you originally installed with

  echo -e "##======================== Homebrew upgrades ========================##"
  brew update && \
  brew upgrade

  echo -e "##======================== yt-dlp upgrades ==========================##" # I let yt-dlp manage itself
  $HOME/Applications/yt-dlp/yt-dlp -U

  echo -e "##======================== Antidote upgrades ========================##" # antidote is a zsh plugin manager
  antidote update
  sudo -u root zsh -ci 'antidote update'

  echo -e "##======================== Upgrades Finished ========================##"
}

[–] lal309 1 points 1 year ago

Ah okay fair enough! Thanks for sticking to the conversation. I will rebase everything to stable and goes that a try for awhile!

[–] [email protected] 1 points 1 year ago (1 children)

How do you manage kernel updates when running a custom kernel? Do you have to regularly check for security patches that you need to apply? It seems like something you could easily forget about without the benefit of an auto-update checker reminding you.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

I'm not sure what type of auto-update checker you're referring to but with Xanmod it's still installed from a Debian repo and updates with the rest of your system, so if you use e.g. KDE's Discover software center it will still alert you when it finds that the Xanmod kernel can be updated. Personally I just update everything whenever I reboot my system and at least once a week otherwise. There is usually nothing to update with Debian, so this isn't a big deal.

As for security patches I might need extra guidance on that - since Xanmod is inherently built from mainline Linux source I don't think it needs security patches? Kernels like LTS Linux or Debian Stable's still want the newest security patches from new kernel source code, so those have to be manually extracted from the newer kernel source and backported into the old codebase. With something like Xanmod there's nothing to backport because it's always got the newest source and all the current security updates. You can think of Xanmod like linux-zen on Arch Linux - it's just a fork of the original kernel with a couple extra tunings.

Edit: Actually from my understanding, linux-zen from Arch Linux is equivalent to the Liquorix kernel, if you want to use that instead of Xanmod. I don't really have a strong preference between the two.

[–] [email protected] 2 points 1 year ago

I see what you mean, thanks. I had assumed you would be compiling it from source yourself and for some reason it didn't occur to me that there are separate repos for alternate kernels.

[–] [email protected] 9 points 1 year ago (1 children)

I use regular bookworm with steam/Mesa/proton installed as flatpak

Works great, 10/10

[–] lal309 2 points 1 year ago (1 children)

Are you running into system access limitations? For example, mesa or proton needing to access system files, services or whatever.

load more comments (1 replies)
[–] [email protected] 6 points 1 year ago* (last edited 1 year ago) (3 children)

I do my gaming on Bookworm with a handful of extras, and it works very well.

There is a certain group of people who insist that only the distros with the latest packages are good for gaming. Those people are wrong in most cases.

Unless you have a very new GPU (released less than a year ago), your games are not likely to get any benefit from the latest kernel.

Unless your games require the very latest Vulkan features and you run them without Steam, Flatpak, or any other platform that provides its own Mesa, you’re not likely to get any benefit from a distro providing the latest version of it.

Practically everything else that games need is comparable across all the major distros, so choose one that makes you happy, not one that some shill claims is best for gaming. Even Debian Stable, contrary to the undeserved bashing it often gets by a certain kind of gamer, is generally excellent for gaming.

load more comments (3 replies)
[–] superbirra 5 points 1 year ago (1 children)

I use sid as my daily driver with official debiam steam packages etc, everything is really smooth since long time so if you want to try you should :)

load more comments (1 replies)
[–] richardisaguy 4 points 1 year ago

You could use distrobox for gaming, make an arch one and game from there without worrying about dependencies

[–] FinalBoy1975 3 points 1 year ago (1 children)

You should definitely just use what you like. If you're going with Debian, maybe go with stable instead of sid. Your games will work. Distros that are being labeled as "gaming" just have some things added for convenience, saving steps after installation. Hopping around is not necessarily a bad thing, either. I've used different ones over the years from different branches. It's good to know how they work. I can pacman. I can apt. I can dnf. I even used to apt-get and yum.

[–] lal309 1 points 1 year ago

I’m on the same boat. I’ve hopped around a lot (for servers and for desktop). My original post was really to gauge how many people actually use straight Debian for a gaming use case. Apparently, quite a few! So that’s great news.

[–] [email protected] 3 points 1 year ago (1 children)

I use Sid for gaming and it has always worked perfectly. I am very happy with it.

[–] lal309 2 points 1 year ago (3 children)

What does your /etc/is-release say for code name? I installed bookworm and then pointed apt to unstable as instructed in the Debian Wiki but when I did the full-upgrade (also as instructed in the wiki) now it says code name= trixie. Not a big deal, it’s just kinda strange. Maybe it’s supposed to as technically Trixie is the “unstable” at the moment. Idk. Just curious.

load more comments (3 replies)
[–] owenfromcanada 3 points 1 year ago (1 children)

For what it's worth, Mint has a Debian-based version that I've heard great things about. It would probably have lots of the legwork done for you (getting flatpak, etc).

[–] lal309 1 points 1 year ago

Very true! But I’ll stick with base for now. As I mentioned to someone else, I just don’t want to keep running into the endless loop of a distro doing something that affects downstream and then I’m affected by it too and blah blah.

[–] [email protected] 2 points 1 year ago

No idea if it works, but debian stable as base and distrobox for the games?

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Yes? ;)

Lxc arch with glx /devs passthrough, runs steam and steam games beautifully.

This is my workflow though, I have an lxc for work/development, an lxc for everything really, once you fit it in its just second nature.

The debian host is there for wm more than anything.

[–] waffless 2 points 1 year ago (1 children)

ive gamed on just about every distro i've tried but i currently run debian sid its fine, linux is linux for the most part. kernel is recent enough so youre not gonna have to do any workarounds or anything.

[–] [email protected] 1 points 1 year ago (1 children)

Most of the time it isn't about the kernel what is causing gaming problems it is most of the time other packages. I had problems with a few games on KDE neon what uses a ubuntu lts system as its base

load more comments (1 replies)
[–] Narann 2 points 1 year ago (2 children)

I don't use Sid, but testing, it's working almost flawlessly. Each release (once every 2 years, I guess), I take few hours to check everything work; remove shader cache, etc.

My setup, right now (dirty, for authenticity) :

$ cat /etc/apt/sources.list
deb https://deb.debian.org/debian/ testing main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian/ testing main contrib non-free non-free-firmware

deb https://security.debian.org/debian-security/ testing-security main contrib non-free non-free-firmware
deb-src https://security.debian.org/debian-security/ testing-security main contrib non-free non-free-firmware

# bullseye-updates, to get updates before a point release is made;
# see https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports
deb https://deb.debian.org/debian/ testing-updates main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian/ testing-updates main contrib non-free non-free-firmware

# add by me
deb https://deb.debian.org/debian/ testing-backports main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian/ testing-backports main contrib non-free non-free-firmware

$ cat /etc/apt/sources.list.d/*
deb http://download.opensuse.org/repositories/graphics:/darktable/Debian_Testing/ /
deb [signed-by=/etc/apt/keyrings/lutris.gpg] https://download.opensuse.org/repositories/home:/strycore/Debian_Testing/ ./
# Uncomment these lines to try the beta version of the Steam launcher
#deb [arch=amd64,i386 signed-by=/usr/share/keyrings/steam.gpg] https://repo.steampowered.com/steam/ beta steam
#deb-src [arch=amd64,i386 signed-by=/usr/share/keyrings/steam.gpg] https://repo.steampowered.com/steam/ beta steam
deb [arch=amd64,i386] https://repo.steampowered.com/steam/ stable steam 
deb-src [arch=amd64,i386] https://repo.steampowered.com/steam/ stable steam 

# Uncomment these lines to try the beta version of the Steam launcher
# deb [arch=amd64,i386] https://repo.steampowered.com/steam/ beta steam 
# deb-src [arch=amd64,i386] https://repo.steampowered.com/steam/ beta steam 


deb [arch=amd64,i386 signed-by=/usr/share/keyrings/steam.gpg] https://repo.steampowered.com/steam/ stable steam
deb-src [arch=amd64,i386 signed-by=/usr/share/keyrings/steam.gpg] https://repo.steampowered.com/steam/ stable steam
deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs/ vscodium main 

I play a lot, we just played Grounded with friend yesterday.

Hope this helps.

[–] [email protected] 2 points 1 year ago

Instead of relying on testing directly, consider using named releases (in this case, trixie for testing). Then stay on the official release for a couple months as testing stabilizes and then go to the next testing release.

I did that in the past and it worked really well. Testing gets a lot of churn right after a release as packages get rapidly upgraded, so I find it's usually better to wait a bit.

[–] lal309 1 points 1 year ago (1 children)

When you say “check everything works” what do you mean?

[–] Narann 1 points 1 year ago (1 children)

Testing goes stabler and stabler with time. Then testing move to release and the previous untesting (sid) move to testing. It's a that moment that you can have surprise. This is the moment where I often wait one month or two, apply the updates and check my os is working as before, meaning running my day to day applications and game and see if things work. The only problem I had once was shader cache. I removed few things in .cache and I was good.

[–] lal309 1 points 1 year ago

Ah okay got ya

[–] utopianrevolt 1 points 1 year ago (1 children)

Probably not what you're looking for but Nobara is great.

[–] lal309 1 points 1 year ago

That’s what I was running before switching away due to RH changes. Solid setup, would certainly recommend. It’s just a matter of principles for me but otherwise I’ve would’ve run Nobara until it died.

[–] bouh 1 points 1 year ago

I am on a laptop, and it works fine.

I'm using debian because it's the distro I work with, so I'm the most comfortable with it.

[–] [email protected] 1 points 1 year ago (1 children)

I've been using Trixie (Current testing, next stable) for gaming for a couple weeks. Everything (gaming wise) works the same as it did when I was on Arch.

[–] lal309 1 points 1 year ago

The only Trixie relate software I have was Wine staging as I couldn’t find “Sid” specific instructions. The documentation said unstable so I just assumed the Trixie instructions were also applicable to Sid.

load more comments
view more: next ›