diff --git a/man/wrap.1.md b/man/wrap.1.md index 29ffe762402f8f1f3ab0575a3627fe30f4fbde1d..bb93c14e6bdbe122d1292eafde8db8c0911751f5 100644 --- a/man/wrap.1.md +++ b/man/wrap.1.md @@ -253,7 +253,6 @@ The following environment variables (among others) are read by `STEAM_COMPAT_APP_ID` (integer) : Equivalent to `--steam-app-id="$STEAM_COMPAT_APP_ID"`. - (Not used yet, but should be.) `STEAM_COMPAT_APP_LIBRARY_PATH` (path) : (Not used yet, but should be.) diff --git a/src/wrap.c b/src/wrap.c index 9e13320e62234fc08f57b8cf212f88c59b0c29b8..3cb5534c59976b735ea9df8a61f8f8c6e8b639e0 100644 --- a/src/wrap.c +++ b/src/wrap.c @@ -814,7 +814,8 @@ static GOptionEntry options[] = { "steam-app-id", '\0', G_OPTION_FLAG_NONE, G_OPTION_ARG_STRING, &opt_steam_app_id, "Make --unshare-home use ~/.var/app/com.steampowered.AppN " - "as home directory. [Default: $SteamAppId]", "N" }, + "as home directory. [Default: $STEAM_COMPAT_APP_ID or $SteamAppId]", + "N" }, { "gc-runtimes", '\0', G_OPTION_FLAG_NONE, G_OPTION_ARG_NONE, &opt_gc_runtimes, "If using --copy-runtime-into, garbage-collect old temporary " @@ -881,7 +882,7 @@ static GOptionEntry options[] = { "unshare-home", '\0', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK, opt_share_home_cb, "Use an app-specific home directory chosen according to --home, " - "--freedesktop-app-id, --steam-app-id or $SteamAppId. " + "--freedesktop-app-id, --steam-app-id or $STEAM_COMPAT_APP_ID. " "[Default if $PRESSURE_VESSEL_HOME is set or " "$PRESSURE_VESSEL_SHARE_HOME is 0]", NULL }, @@ -1240,6 +1241,13 @@ main (int argc, opt_fake_home = g_build_filename (home, ".var", "app", opt_freedesktop_app_id, NULL); } + else if (g_getenv ("STEAM_COMPAT_APP_ID") != NULL) + { + opt_freedesktop_app_id = g_strdup_printf ("com.steampowered.App%s", + g_getenv ("STEAM_COMPAT_APP_ID")); + opt_fake_home = g_build_filename (home, ".var", "app", + opt_freedesktop_app_id, NULL); + } else if (g_getenv ("SteamAppId") != NULL) { opt_freedesktop_app_id = g_strdup_printf ("com.steampowered.App%s",