this post was submitted on 18 Jul 2024
32 points (90.0% liked)

Linux Gaming

15250 readers
43 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 1 year ago
MODERATORS
 

Are there any open source Steam clients? Maybe it can be like Heroic, because desktop Steam is technically browser with specific website opened.

Steam and Valve has great Linux support, but it would be interesting to try alternative open source client.

you are viewing a single comment's thread
view the rest of the comments
[–] tal 9 points 3 months ago* (last edited 3 months ago)

I assume not, but there is a command-line client, steamcmd. I used it the other day when I wasn't near a machine that I had Steam installed on to remotely install FTL on a machine via ssh that I had Steam installed on so that I could copy it to a remote laptop, which I didn't have Steam installed on (FTL is one of the games that doesn't use Steam for DRM)

I'd imagine that one could theoretically slap an open-source frontend on that.

EDIT: Also, graphical frontends aside, it doesn't even have readline/editline support, so running it via:

$ rlwrap steamcmd

...is already throwing a minimal open-source frontend on it that rather improves the experience.

EDIT2: I don't care that much about most of Steam, but I do wish that the downloader portion of Steam were open source so that I could push a patch to let one cap the number of concurrent TCP connections open. Normally, a saturated network connection will tend to allocate bandwidth evenly on a per-TCP-connection basis, and because Steam opens a ton of concurrent connections, it gets the lion's share of the connection...for Steam downloads, which are very much low priority, and which I don't want trying to eat up all the bandwidth.

EDIT3: There's apparently some Linux ncurses-based client that uses library injection to take over the graphical client, but that repo last saw a change 6 years ago, and I'd bet that it hasn't worked in a long time. Looking at steam_injector.c, It looks like it prevents XMapWindow() from running, so it should keep the graphical client from actually doing anything graphical.