Steam – How to install a game to a Steam library using steamcmd

linuxsteam

In principle, steamcmd is able to download any game. If used without force_install_dir, the game goes into the main library correctly.

But if I specify another library using above mentioned parameter, the game never ends up in the library like I want it to.
For example if my library used to look like this:

/media/crossoss/steam/linux/
/media/crossoss/steam/linux/steamapps
/media/crossoss/steam/linux/steamapps/common
/media/crossoss/steam/linux/steamapps/downloading
/media/crossoss/steam/linux/steamapps/libraryfolders.vdf
/media/crossoss/steam/linux/steamapps/temp
/media/crossoss/steam/linux/steamapps/workshop

with no games installed and I specify force_install_dir /media/crossoss/steam/linux then the result looks like this:

/media/crossoss/steam/linux/
/media/crossoss/steam/linux/libSteamworksNative.so
/media/crossoss/steam/linux/libsteam_api.so
/media/crossoss/steam/linux/Snuggle Truck.x86
/media/crossoss/steam/linux/Snuggle Truck_Data
/media/crossoss/steam/linux/Snuggle Truck_Data/level0

[…]

/media/crossoss/steam/linux/Snuggle Truck_Data/sharedassets3.assets.resS
/media/crossoss/steam/linux/startgame.sh
/media/crossoss/steam/linux/steamapps
/media/crossoss/steam/linux/steamapps/appmanifest_111100.acf
/media/crossoss/steam/linux/steamapps/common
/media/crossoss/steam/linux/steamapps/downloading
/media/crossoss/steam/linux/steamapps/libraryfolders.vdf
/media/crossoss/steam/linux/steamapps/temp
/media/crossoss/steam/linux/steamapps/workshop
/media/crossoss/steam/linux/SteamLauncher

If I specify force_install_dir /media/crossoss/steam/linux/steamapps/common then the whole stuff goes directly into common instead of into linux (still not in a subfolder like it should) and no appmanifest_111100.acf file is created anywhere.

Unsurprisingly, the game doesn't launch that way (if the appmanifest is missing, it's not even displayed as installed, with the appmanifest there but the game files in the wrong place there is a "missing executable" error).

Workarounds or ideas how to get it right? Can I temporarily symlink the steamapps folder from the library where I want the game into the place where the steamapps folder from the main library is?

Best Answer

Ugly workaround (not going to accept that answer): mount --bind /your/steam/library/steamapps /home/user/.local/share/Steam/steamapps, then install without force_install_dir parameter and unmount again (don't forget that!). Haven't noticed any problems, seems to work fine even when platforms don't match. But it does need root.

Related Topic