You can sign up to get a daily email of our articles, see the Mailing List page!

Since this comes up so often when testing games for developers and surprisingly often for newly released Linux games, I thought it might help to give developers a quick hint.

The Issue

You've deployed your shiny new game onto Steam, later you've added a Linux version and it works fine for you. However, users are reporting a "Missing Executable" error that might look something like this:

The Cause

It's usually very simple, it's a case of the Linux version not being correctly setup on Steam and it's something only the developer can fix.

A super easy way to check, is to look at the game on the handy SteamDB website, comparing the Linux and Windows lists from the Depots link you will find on the left hand side.

Here's an example - Take a look at this content depot taken from SteamDB for a Linux game (thanks to the developer of Rings of Saturn for allowing me to show their game as the example - they've fixed it since):

Now, compare that to the Windows version which clearly shows it having Store purchases and another additional package which the Linux version above did not:

The issue there, should be obvious. The Linux version needs setting up in the same way as the Windows version, being linked to all packages of keys and the Steam store purchase, otherwise we get the issue.

Note: I can't show the actual Steam developer area where you do it, since I am not a Steam developer and all that stuff Valve usually keep confidential. Valve have been emailed to confirm if we can show this.

However, in this video on the Steamworks Development YouTube channel, if you look at about 3:04 it shows the Configuring Depots section, that should be what you're after. Make sure the operating system dropdown box is set to the correct systems. Additionally, you can find this Steamworks Documentation page that explains some of it.

I see this multiple times per week, so hopefully this little tip will help a few developers.

Article taken from GamingOnLinux.com.
34 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG and Humble Store. See more here.
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
The comments on this article are closed.
20 comments
Page: «2/2
  Go to:

Marlock 13 Aug, 2019
Hey Liam, this is my first time posting in GoL! :)

I've been an avid reader for a while though, frequently linking GoL articles on Steam for Linux forums, and (as this article shows) I've noticed you have a good know-how on frequent rookie linux game developer mistakes, even if not a dev yourself.

Not long ago this came up in a conversation about a botched linux release:
https://partner.steamgames.com/doc/store/application/platforms/linux

Obviously there should be more documentation (this is what is visible for non-devs), but as a public document that newbies might stumble upon, it looks seriously outdated and incomplete...

Is this something you can contact Valve about, and maybe help them include pointers on those frequent mistakes and such?

Off the top of my head I can remember a couple things you usually mention:
- case sensitive (linux) vs case insensitive (windiws) file paths
- actually uploading linux game files to the linux entry instead of a single upload to the windows entry also containing linux files
- long-standing Unity bugs and their workarounds (eg: duplicated input)

Also, maybe you could do more articles focused on such issues and have a dedicated "game development" tag for them?
Liam Dawe 13 Aug, 2019
From what I remember when I last spoke to Valve about it, there's other documentation developers have that are more in depth. Edit: It's this page that has some extra details, added a link to the article.

As for the tag, we have a Game Dev tag this was missing, it's now on.


Last edited by Liam Dawe on 13 August 2019 at 12:00 pm UTC
Nanobang 13 Aug, 2019
I'm not a developer, but I've had this problem and I'm glad to see someone, somewhere, is addressing it directly. (That it's you, Liam, here on GoL, just underscores what a service GoL provides to the Community.)

I'd like to encourage you (and anyone else reading this who might feel inspired) to contact someone at Steam with this info so they might make it available to developers there. Given the Valve's nurturing of Linux as a gaming platform, I'm surprised that they don't have an internal support system for Developers looking to get their games onto Linux. And if they do have such a system, then this information needs to be an underlined, all caps, in flaming letters, part of it.
koder 13 Aug, 2019
The setting itself is actually a bit of Gotcha, because Linux builds work for all Beta and generated keys *except* actual purchase. That's how it slipped my attention - we have quite a few Linux players testing the game, but they all had keys, so this didn't affect them.


I'm really glad Liam pointed the solution out for me, I lost half of previous night trying to figure it out.
Liam Dawe 13 Aug, 2019
Quoting: koderThe setting itself is actually a bit of Gotcha, because Linux builds work for all Beta and generated keys *except* actual purchase. That's how it slipped my attention - we have quite a few Linux players testing the game, but they all had keys, so this didn't affect them.


I'm really glad Liam pointed the solution out for me, I lost half of previous night trying to figure it out.
Always happy to help :)
dpanter 13 Aug, 2019
Quoting: Shepard62FRAbout the "missing executable" subject, I wish developers could setup a default branch per OS. In the case of Zombie Panic! Source, the Linux client is only available in the "unstable" branch (for now) so we have to tell every Linux user: "if you want to play the game, use that branch, not the default 'public' one that Steam download/install/update by default".

Another detail worth mentioning...
There is an option called Enable Steam Play for all other titles in the Steam client settings.
- When enabled, all games are lumped into both the Games and SteamOS + Linux category in the Library.
- When NOT enabled, the Games category is all games and the SteamOS + Linux category contains only Linux games. I prefer this because reasons.

The downside to not enabling this option is that you cannot properly add F2P Windows-only games to your Library.
They are actually added, but cannot be installed as it will error out with 'Unsupported platform' and also cannot be seen in the Library as they do not have a valid Linux version.
This is true with Zombie Panic! Source even though a Linux version now exists in a 'beta' branch.

The only solution is to enable this option, restart Steam client, game is now visible in your Library, force Proton in the game properties, disable the option and restart Steam client again. Then it works... :|

edit: clarified the category statement


Last edited by dpanter on 13 August 2019 at 8:53 pm UTC
dpanter 13 Aug, 2019
As it happens, it's even worse now than when I tried last time!

I enabled the 'Steam play for all titles' option and restarted Steam beta client. Tried to find both Zombie Panic! Source and Path Of Exile in my Library just now... none of them showed up. However they can be installed from the Store page and clicking 'Play now'
Wessel 19 Dec, 2019
I had this exact same problem with my game, and after reading this thread and the responses 100 times I still thought I had set up everything correctly. Liam just explained to me I was wrong. I was apparently confused about these two things:

1. There is a difference between packages and depots. A package is something you sell, or give away keys for, like the main game or DLC etc. A depot, on the other hand, is a place where you can store a single version of your game; you can have separate depots for separate OSes, but also for separate languages or 32/64 bit. A package can contain multiple depots.
2. Depots are configured in the Steamworks settings, but packages are not. To configure packages, go the main app admin of the game and click 'All Associated Packages, DLC, Demos and Tools'. This shows an overview of the various packages available for the game, in various categories.

The solution was to make sure the Linux depot was in ALL packages.
BigJ 21 Apr, 2020
Sorry for the necrobump but I was trying to play Into the Breach today because they have a new native Linux build and got this error :/
dpanter 21 Apr, 2020
Quoting: BigJSorry for the necrobump but I was trying to play Into the Breach today because they have a new native Linux build and got this error :/
Fix in the article.
https://www.gamingonlinux.com/articles/into-the-breach-from-subset-games-ftl-now-supports-linux.16475
While you're here, please consider supporting GamingOnLinux on:

Patreon, Liberapay or PayPal Donation.

We have no adverts, no paywalls, no timed exclusive articles. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.
Livestreams & Videos
Community Livestreams
Latest Forum Posts