8

Steam installs apps into a user's home folder. This means when a user installs an app, a different user has to install the same app again.

What's the most convenient way to share Steam apps?

My best idea is to have a one user who will have the main folder with read-write permissions for others and just have other users symlink to it. I'm not even sure if this will work. Is there a cleaner solution or one suggested by Valve?

2 Answers 2

4

Steam supports using multiple game library folders by default, you could just create a folder which all users can read/write to then add this folder as a library for both users. Both users will have to maintain a separate copy of the Steam client and update it, the library includes the games themselves only.
(source)

You could create a main folder in a read/write location and have a symlink at ~/.local/share/Steam to this folder, which should work hypothetically, but I haven't tried that. This will all users use the exact same Steam files.

You can also have a look at bindfs, note that it is not nearly the "most convenient way"

6
  • 1
    For the first solution, where do you think the shared read/write directory could be placed neatly? Would you put it in "/"? Your second solution is, I think, exactly like mine. I have some reservations about it myself; it doesn't seem like clean solution. Can you think of ways this solution can go wrong?
    – kelvinilla
    Sep 10, 2013 at 17:38
  • 1
    @kelvin For the first solution, you could use /data. I can't think of anyway the 2nd solution could fail, just doesn't seem right
    – kiri
    Sep 10, 2013 at 21:06
  • so, how does one create a folder which all users can read/write to in Linux? i.e where everything under the folder stays chmod ugo+rwX. I'm a Linux geek and programmer, and I don't know how to do this. Only ways I can think of are to mount a windows filesystem and use that, or to run chmod each time before running steam or from cron. Both of those options suck. And the steam client does not respect umask. Basically this answer does not work properly and there is no good way to do it as far as I can see. Jul 11, 2014 at 5:58
  • @SamWatkins Yeah. The folders don't stay ugo+rwx. I've only had problems though when games are updated. The game is locked to the user who initiated the update so that it can't be touched by others until the update finishes on the initial user. Others can't continue the update it while this is going on; it gives a disk write error. I think when the update is done, everything works fine again, since I've only noticed problems when updating. It sucks, unfortunately.
    – kelvinilla
    Aug 16, 2014 at 1:53
  • 1
    TBH, I think I should just create a separate login account for all of us to play games. It's not ideal. Aug 18, 2014 at 3:27
2

My solution:

sudo mkdir -p /opt/steam
sudo setfacl -m default:other:rwX -R /opt/steam
sudo setfacl -m other:rwX -R /opt/steam

If you move any games from another library, you'll need to repeat those commands.

The first command creates the directory intended to be used as the "shared library" of games. The second command will ensure that the default permissions in that directory allow all users to read and write any files. The third command changes the permissions to add read/write access for any existing files in that directory (in case it already existed).

2
  • I think you should explain a bit what these commands actually do. Sep 11, 2017 at 14:39
  • @SergeStroobandt agreed; I've added a paragraph to describe what each command does. Thanks.
    – mpontillo
    Sep 11, 2017 at 22:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .