this post was submitted on 22 Sep 2024
76 points (97.5% liked)

Linux Gaming

15312 readers
6 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
 

Almost every distro I've used so far ends up having problems installing Steam due to mismatching i386 packages. I've heard that they're being removed upstream. Anyone happen to know a timeline?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 9 points 1 month ago (7 children)

Part of the problem is, sure, that installing an entire arch for a package touches up a lot of stuff... What I did was I set up a debootstrap schroot and added i386 arch to that so that neither they nor Steam touch my main system. Not only did I never have problems with Steam again, but I actually resumed pretty much from what I was when I got a new machine, simply by copying the schroot files over. Didn't even have to install anything (but the schroot serve on my new system itself).

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

This sounds like a good solution. Can you share how you did it?

[–] [email protected] 3 points 1 month ago

I basically took the general idea from this Ubuntu doc and made som changes. After installing debootstrap, I followed these general steps:

  • set up an user for Steam, with adduser steam.
  • created a directory to host the "virtual machine" at /var/lib/chroot/steam64.
  • used the page linked above to create a schroot profile directory with the chroot data I want.
  • used the page linked above to create a schroot profile entry for the chroot, adding steam as one of its allowed users.
  • set up an Ubuntu 18.04 schroot with the following command: debootstrap --variant=buildd bionic /var/lib/chroot/steam64 http://archive.ubuntu.com/ubuntu/
  • on the host, allowed cross-"host" applications to lauch windows with xhost +local:.
  • once completed, entered the schroot as root and added the needed i386 arch and packages for Steam and for bubblewrap / Chrome containerization.
  • still in the schroot as root, installed enough packages for a basic graphical environment (basically: a text editor, xnest and xterm; between their dependencies, they'll take care of most of everything).
  • exited the schroot.
  • entered the schroot as steam and fired up the Steam launcher manually.

It's not perfect, there are a few issues (in particular with audio) but once I had the installed schroot ready, I never had to worry about its 32-bit packages ever again. And that was back in.... like, 2019 or something. Six months ago I copied to old schroot to my new machine and resumed playing, with no more cost than having to set up the schroot packages and the steam user (with the same old UID) on the new machine.

Here's a sample of the schroot profile file I'm using. The "steam64.local" is the profile directory, which is basically a copy of schroot/buildd (or of schroot/minbase) with some configurations in fstab and copyfiles to account for eg.: isolating /var/run and dbus, and giving the schroot access to the home directory for the steam user.

load more comments (5 replies)