“Fix” Snap Steam installed games

Recently I installed a Snap package of the Steam application on my Ubuntu 16.04. I read about it in a blog post and just had to try it out. I’ve been migrating my most used desktop applications into their Snap versions over the past year, so why not Steam too. It’s “cleaner” that way, or so I’d like to think. Plus management is easier, I have lesser PPAs (Persona Package Archives) added and to worry about too.

I already had an existing Steam install from Valve‘s official PPA repository which I planned to uninstall once I got the Snap version going. The idea was to copy the existing game files to a temporary location, before nuking the PPA/deb Steam into oblivion.

Steam application

Where are my games?

On my desktop I know I have 3 games installed at some location I could not quite remember. First, I don’t recall if I customized Steam’s game installation location. And second, I was too lazy to Google for the default location.

Luckily I know the names of these games by heart. I set out looking for one with the help of this handy terminal command below, on the assumption that all game files should be located under the same directory.

:~$ find ~ -name [Tt]rine*

The above command tells find – a program that searches for files – to start looking at the user’s home directory, denoted with a ~ , for any file that has the text Trine or trine for its name.

Lucky me, the game files I was looking for were buried deep right there in my home directory. I found its install path here:

.local/share/Steam/steamapps/common/

It may be different in other people’s computers. YMMV.

Seriously, is there no easier way to look for it?

Don’t be like me. I wasn’t really thinking. Then I realized a few minutes later on that the easiest way to find my games is to use the Steam application! Because, duh, it knows where those are or how much space is left in the disk/partition … etc.

I opened the old Steam, blindly clicked the menus looking for the game locations for a bit, and finally found it here:

Settings > Downloads > Steam Library Folders
Steam Settings

Copied it somewhere temporarily

Everything inside /common/ were copied somewhere else. 3 games, so 3 directories in total.

I just placed it on the Desktop. I usually do this when I want easy access to something and delete it afterwards. Most of the time my Desktop folder is empty. Any files on it that I know I have no need of are deleted or moved somewhere else.

Then I removed my old Steam application via apt command and manually deleted the Steam user files that were left.

Move to the new games Library Folder

This is a no brainer. Ran the Snap Steam and went to the Library Folders to determine the new location.

~/snap/steam/common/.local/share/Steam/steamapps/common/

Then I proceeded to move the games which I temporarily saved in my Desktop folder.

Of course, I could always add the old location to Steam. I didn’t want that. I want everything to be in one place, inside the new location.

Steam doesn’t recognize the games in the new location?

I thought Steam would automatically add the games, but it did not. I don’t know if there is a way for the application to rescan the location. Tried the Repair Folder option but that didn’t work. Again I was lazy and didn’t want to read tutorials (I should research on how to do this some other time, if I remember to).

I figured that I’d just let Steam download the games again, and use that time waiting for it to finish by playing on my Steam Deck.

What I didn’t realize is that after I hit the install button on the first game to begin the installation process, Steam found out that there was an existing game in the location. It skipped the downloading part and went directly to verifying. For one of the games with new updates, it downloaded the additional files, but other than that installing all 3 games which totaled to about 8GB completed in 2-ish minutes.

Note that my Internet download speed is not fast enough to download files of that size in 2 minutes or less. So I am pretty sure that it considered the copied games folders in there to be valid.

Well, one way to test that is to start playing the games after installation. Which I did. Each game turned out all right.

Oops! I spoke too soon. It turns out the games are unplayable using the Snap Steam version for me. The lag in the game makes it so — I wasn’t actually playing the game, yet, but still at the in-game menu. Even forcing compatibility on any of the games using Proton or Steam Linux Runtime did not work in my case. Using compatibility won’t even start the game at all. It will just attempt to launch but nothing happens. So I unforced it. Then I ran Steam via command line using snap run steam command. Saw a couple of messages that were interesting. It could not find the OpenGL/Mesa drivers. This driver file – i915_bpo_dri.so – was the one it was trying to find, but could not, at some default locations within the Snap Steam root. Searching for this file in my home directory, I found the 64-bit and 32-bit versions located in the Steam Linux Runtime installation, and I copied both to the default locations that was shown in the error messages. This did not work too. I am not entirely sure this was the reason the games were unplayable. But it was worth a try. Note that in the Steam permissions image below, I have allowed it access to the OpenGL stack.

So for now I purged Snap Steam from my machine. It is basically almost useless unless I wanted it for the sole purpose of browsing for games in the Store, or look at my collection of games in the Library. Back to the PPA/deb Steam I go. Hope Canonical will fix this issue soon.

Odd things to note about the Snap Steam version

Now I’m going to back track a little bit.

After installing Steam from the Snap Store I booted it up. It went straight ahead into updating and configuring itself for the initial run, but got stuck at the part where a small login window should have prompted the user for their login credentials. I know so because the small login dialog was there but wasn’t showing anything – no Steam logo or welcome text, no buttons nor text inputs. Nothing except for a little exit button at the top right. It was just a black rectangle sitting there at the center of my desktop.

At first I thought it was still doing something in the background, yet nothing was happening for the longest time. I hit the exit button and started Steam again a couple of times with the same results. Eventually I went back to Snap Store, noticed the permissions button and enabled most of what wasn’t besides the ones that were already by default.

Permissions for the Snap package of Steam

I have really no idea why Snap Steam failed to start correctly until after I turned on some other permissions. Steam started normally afterwards, so I was like, whatever.

The other weird thing is that, after I logged in, I had zero games in my Library. No, I do not mean the installed games because at this point there were none yet. I am talking about the Games that I bought from the Steam Store. Installed or not, the list of games should be always shown in the Library. It took another restart of the Steam client for the games in my Library to show up (Perhaps the client was still not done syncing with Steam servers?).

Similar Posts:

Recently I installed a Snap package of the Steam application on my Ubuntu 16.04. I read about it in a blog post and just had to try it out. I’ve been migrating my most used desktop applications into their Snap versions over the past year, so why not Steam too. It’s “cleaner” that way, or…