Because of this bug, Steam no longer creates launchers for games installed through Steam. Here is a quick summary of how to create them manually.
Launchers are desktop files. Essentially, this simply means that they are plain text files with the .desktop extension that contain the text [Desktop Entry]. There are a number of standardised fields that control things like the displayed names and the icon that is used.
The easiest way to get your new launcher is to amend an existing one. Since it's just a text file, dragging-and-dropping from the menu to an open text editor window works well. Otherwise, they are kept in ~/.local/share/applications.
As an example, here is my launcher for the Steam version of Guns of Icarus Online, ~/.local/share/applications/Guns of Icarus Online.desktop
The things you'll be interested in changing are the filename, the Name= entry, the Exec= path, the Icon= location and probably the Categories= field.Code:[Desktop Entry] Name=Guns of Icarus Online Comment=Play this game on Steam Exec=steam steam://rungameid/209080 Icon=steam_icon_209080 Terminal=false Type=Application Categories=Game;ActionGame;
You can call the filename anything you want, as long as there isn't another file with the same name, and as long as it ends with .desktop. I just call my files after the name of the game, with spaces but without other special characters. If you create it in ~/.local/share/applications it should be picked up by the menu system.
The Name= entry will be what is displayed in the menu, and everywhere else. If you're feeling flash you can put different translations in for different locales. What's listed as Name= will be the default. If you make this very long, your menu may become very wide.
The Exec= path is the command that will be executed. You can see that, in this case, the command is simply steam with the GameID passed as a parameter. You will need to replace the GameID with the right one for the game that you want to launch. There may well be a sensible way to extract that information from Steam, but I tend to just use SteamDB, since I'll be going there anyway.
Icons should sensibly be placed in ~/.local/share/icons/hicolor. If you have icons of different sizes they can go in the appropriately named sub-folders. Steam puts them in ~/.local/share/icons/hicolor/<size>/apps/ which is perfectly fine. You don't need to specify the file extension, and you don't need to specify the full path if you put the icons within hicolor. If you have icons of different sizes, the theming system will automatically pick the icon of the most appropriate size to be displayed, so you'll get a larger icon with more detail on the Desktop, say, than in the menu. Steam names the icons as steam_icon_<GameID>, which is fine. You may find that Steam has already downloaded the icons for you and just not created the launcher. In which case, simply put the correct name in the Icon= location. Otherwise, and for games that have the default Steam icon, you can go to SteamDB and search for the game you're interested in. This will provide you with the GameID and allow you to download the icons for the game for different platforms. If the only icon available is in the .ico format, the Export Layers plugin for GIMP is useful for extracting individual images to use with your launcher.
The Categories= field determines where in the menu the launcher will be displayed. The available sub-menus for the Games menu are
Putting one of those categories after Categories=Game; should put it in the appropriate sub-menu of your Games menu.Code:ActionGame AdventureGame ArcadeGame BoardGame BlocksGame CardGame KidsGame LogicGame RolePlaying Shooter Simulation SportsGame StrategyGame
Once you've created and saved your .desktop file you may need to runto update the menus. If you've added new icons, you may need to runCode:update-menusto refresh the list of available icons.Code:update-icon-caches ~/.local/share/icons/hicolor/
That's it: how to create or change launchers for Steam games. I hope that this is useful until the Steam bug gets fixed.
Bookmarks