A few years ago, almost out of despair, I moved away from Debian in order to be able to play a few games natively.
On those days, the main concern with running games on Debian came mostly from unavailable dependencies or older, incompatible versions.
Fast forward today, returning to Debian, all installers from GOG run smoothly, with no error, but many games report errors on launching.
So, as per the title, what crazy voodoo magic is cast upon Debian to create Ubuntu, Mint and others, making those derivatives gaming-capable but their base distro not?
Can someone enlighten me on this, please?
Out of many games I tried, I managed to run three: Kingdom Rush and the Frontiers sequel and Martial Law.
Other titles failed miserably, including Desperados, Eschalon and even Stardew Valley.
Because it’s useful/required info:
system
- AMD Athlon II x2 250
- 8GB RAM
- GeForce G210
It’s a very reliable work horse, with maxed out memory. The GPU proprietary drivers are no longer available; running nouveau.
When launching from the console, I get this report (example from Stardew Valley):
start.sh: 7: Bad substitution
start.sh: 9: source: not found
start.sh: 12: get_gameinfo: not found
start.sh: 13: get_gameinfo: not found
start.sh: 14: get_gameinfo: not found
start.sh: 29: define_option: not found
start.sh: 32: standard_options: not found
From your report, what command are you using to launch Stardew Valley? It appears to be a bad shell interpretation. Are you using sh or bash? What’s the first line of the “start.sh” script? What’s your “echo $SHELL”?
I’ve been using debian testing for years for my gaming PC, for laptops and debian stable for servers. I’m very happy with it!
IIRC debian defaults to using dash for
/bin/sh
, the problem could be as simple as pointing these scripts at/bin/bash
(or another bash location) instead.Yup, looks like a bash vs dash issue, which is why I always set my shebang to be explicit about the shell I’m using.
I was using sh but when using bash start.sh it gave a completely diferent prompt, regardless not running. Copied the entire prompt on another reply.
“echo $shell” returns bash : echo : command not found
I run debian as my main and really don’t encounter any issues in gaming.
Same here. Radeon open source drivers. VR is working, too (HTC). Most oft the time what I need to find out is the correct Proton Version (Took me a bit oft time to geht Cyberpunk running). Other than that no problems at all.
Under the Steam client? I’ve read Steam solved a good deal of issues with gaming on Linux but Steam is not really my thing.
Or do you run your games natively, like I described?
A lot of my games on Steam fail to run if I switch from proprietary Nvidia drivers to open, so I wouldn’t count on that
Steam also carries a good deal of top shelf games; I run old and/or lesser known games.
All the games I mention ran under Mint but, because I enjoy making my life complicated, I moved from it to Debian. So…
Just a warning that Steam doesn’t always play nice with open drivers. It’s the only thing that keeps me on proprietary
I’ll keep that in mind but Steam doesn’t cut it for me.
I do a variety, as I have a few games on GOG.
Care to share your tricks?
Wine, ProtonGE, Lutris, and a bit of luck.
If none of those work,
Seems like a 180 from your initial comment.
Nice. I’ll take that in consideration as well.
The answer is: More conservative defaults.
My gaming system runs Debian Stable. (AMD GPU, Sony game controller, steam-devices and pipewire installed.)
Steam games work fine.
Flatpaks (e.g. emulators) work fine.
GOG games mostly work fine. The few problems I have encountered were fixed by either installing missing libraries or renaming out-of-date ones that shipped with the game.You haven’t described your system or stated what errors you’re struggling with, and nobody can help you without that information, but chances are they can be fixed if you take the time to understand them.
Edit: BTW, You might want to check out Lutris, if it covers games that you play. There’s nothing magic about it, but some people find it useful as a time/effort saver.
Updated my post.
There are three issues IMO.
Another poster mentioned more conservative defaults, which certainly doesn’t help compatibility.
There’re also issues with any non-free software that might be a dependency of the game you want to run.
And finally Debian has a focus on stability, so it takes much more time for software updates to filter their way through the debian ecosystem before they’re released.
Roll all of that together and you’ve got a system that’s anywhere up to a year or two behind the released versions of things your games need to run, and isn’t necessarily motivated to improve the situation.
Flatpak Steam and similar systems should be mostly fine, until you need a fix that’s just recently been rolled into the Linux kernel or your DE or your GPU software stack. If you want the most compatible gaming system you really want to chase current releases of everything in the kernel/library/DE/GPU driver stack and that’s just not feasible on Debian unless you’re building a ton of your own packages on top of Sid. I did that for a while and eventually just switched to Arch instead.
I’ll be moving to the testing branch soon, so I’ll get more frequent updates but the errors I’m getting don’t seem to be related with outdated or missing dependencies.
As others said, it looks like the issue is the startup script expects bash shell, but Debian defaults to dash as its default shell. If you’re running these scripts directly, run them like this instead:
bash path/to/script
Using that command, the error returned was different.
Running Stardew Valley
/StardewValley: line 7: sw_vers: command not found
NoFpsCap: This feature is not available
SetGameMode( ‘titleScreenGameMode (0)’ )
load preferences (); begin - languageCode=
No usable version of libssl was found
./StardewValley: line 27: 1142 Aborted ./“StardewValley” $@
I think your old problem (several years ago) was that Debian ran the launch script with dash. I think your new problem is the libssl version shipped with Debian.
Seems like Stardew Valley is built against an old version that isn’t shipped with most distros anymore. In fact, based on the forum posts, I’d be surprised if you could get it to work on Ubuntu either.
There’s a comment by ssh-mitm in this thread that might help you with getting the right libssl version without breaking your system. https://forums.stardewvalley.net/threads/no-supported-version-of-libssl-was-found-ubuntu-22-04.12155/
I’m going to pin that for later but the “Don’t break Debian” mantra instantly came to mind, even more when I have a laptop with Mint running the game with no issues.
At some point, the game designer will have to update the game, or it will be lost for newer systems.
sw_vers: command not found
I think this is a macOS-specific command. Did you download the macOS version by mistake?
Removed the previously installed, downloaded fresh from GOG, reinstalled.
Same output.
Huh, have you seen this thread? It looks like precisely your issue.
Thank you!
You don’t say what version of Debian you’re using but avoid stable on a gaming system. Debian tends to be more minimal OOTB too, and you may need to enable some non-free repos. Hardware matters too, with certain distributions having better Nvidia support in particular.
Vanilla 12, with all repositories enabled, soon to move to the testing branch for a somewhat rolling distro.
More information is available on my post.
Nouveau is certainly not perfect so that could be the issue. There is work going on it still but I wouldn’t expect miracles. Unless you’re saying it’s all fine on other distributions. I’d probably just avoid Debian if that’s the case.
I can install the proprietary drivers myself. It will be a blast from the past, as when I started in Linux. Fun times. That concern is easy to address.
What GPU do you have? Honestly any of them could have a better driver setup out of the box on Ubuntu.
An ancient one. See my post for more details, please.
And just to say - it’s not that you couldn’t fix it, but installing the proprietary drivers for an Nvidia card or updating mesa for AMD or Intel would help.
I’m using Debian and LoL is running smoothly, dont know about other games you mentioned
I have Debian on a secondary laptop and it’s rock solid. I’m really tempted to go debian on my main rig but keep the gaming stuff as flatpaks for more frequent updates
Debian was my daily driver for years. For fun I mostly ran games from the repos and out of boredom learned how to run Neverwinter Nights.
It was when gaming onnlinux gained more traction I moved to a derivative but Debian is Debian and I really want to go back.
Try Fedora 38 and enjoy that different type of pain.
Use an Ubuntu derivative geared towards gaming maybe. Debian stock is made generic to perform as best for core features on as many hardware configurations as possible, mostly for server stacks. There’s also a TON of tools and scripts out there that can tune a default install for you to make it perform better for gaming.
I ran Mint for about six years but Debian is my first love. It’s a harsh and cruel mistress but it has a mystique I never found on other distros.
Or use Nobara and probably quite a bit less pain; meanwhile, stability for me has been …not as good as mint … But I havent tried to track it down either so maybe it’s just something simple.
You need the Nvidia proprietary drivers