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

16 points

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!

permalink
report
reply
8 points
*

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.

permalink
report
parent
reply
5 points

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.

permalink
report
parent
reply
1 point
*

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

permalink
report
parent
reply
13 points

I run debian as my main and really don’t encounter any issues in gaming.

permalink
report
reply
3 points

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.

permalink
report
parent
reply
2 points

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?

permalink
report
parent
reply
2 points

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

permalink
report
parent
reply
1 point

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…

permalink
report
parent
reply
2 points

I do a variety, as I have a few games on GOG.

permalink
report
parent
reply
2 points

Care to share your tricks?

permalink
report
parent
reply
1 point
Deleted by creator
permalink
report
parent
reply
10 points
*

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.

permalink
report
reply
3 points

Updated my post.

permalink
report
parent
reply
7 points

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.

permalink
report
reply
1 point

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.

permalink
report
parent
reply
6 points
*

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
permalink
report
reply
1 point

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” $@

permalink
report
parent
reply
1 point
*

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/

permalink
report
parent
reply
1 point

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.

permalink
report
parent
reply
1 point

sw_vers: command not found

I think this is a macOS-specific command. Did you download the macOS version by mistake?

permalink
report
parent
reply
1 point

Removed the previously installed, downloaded fresh from GOG, reinstalled.

Same output.

permalink
report
parent
reply

Linux Gaming

!linux_gaming@lemmy.world

Create post

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:

Community stats

  • 2K

    Monthly active users

  • 932

    Posts

  • 12K

    Comments

Community moderators