Steam for Linux

Steam for Linux

alex 15 Dec, 2012 @ 2:59pm
Default location(s) for Steam files
Steam for Linux seems to be using some pretty nasty default file locations. Binaries are installed to ~/Steam, which goes against convention and is bad for the following reasons (and probably more):

1) Many Linux users back up their home folder. Keeping the Steam binaries there adds many GB of unnecessary data per game to these backups.
2) People tend to set up their disks/partitions based on what types of files they expect to go where. For example, /home and /etc should have documents and settings, /usr and /opt should have binaries, /tmp and /var should have transient data, etc. Partition sizes, encryption, file system, SSD, etc. are often chosen based on these categories.
3) If N people on a shared system install the same game, now that game is taking up N times as much disk space for no reason.

My recommended solution is to install all Steam binaries in /opt/Steam, and keep per-user configuration files in ~/.steam or ~/.config/steam. /opt is the standard location for software that doesn't come from the linux distro. File ownership/permissions will also need to be reviewed, though, as /opt is owned by root. That means that installing/updating software in that location will require sudo. (This is standard for most software in Linux, but may or may not be desirable for Steam.) A solution would be to create the files in /opt as a 'steam' user/group, and to add users to the 'steam' group if you want them to be able to install/update things without a password.

It's good that Steam provides the option to change (some) file locations, and of course in Linux this is all easy to manually work around via symlinks, but the defaults should be changed to follow existing convention.
Date Posted: 15 Dec, 2012 @ 2:59pm
Posts: 0