Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
Steam client - manifest.vdf v2 compat tools
===========================================
manifest.vdf keys:
------------------
"version" "1":
--------------
"commandline"
"commandline_getcompatpath"
"commandline_waitforexitandrun"
Still supported for backwards compatibility.
"version" "2":
--------------
"commandline"
"require_tool_appid"
"use_sessions"
"commandline" supports the expansion of a "%verb%" keyword.
examples:
---------
Proton 5.13 with soldier SLR:
"manifest"
{
"version" "2"
"commandline" "/proton %verb%"
// Require the soldier SLR tool
"require_tool_appid" "1391110"
// Enable session mode
"use_sessions" "1"
}
soldier SLR (1391110):
"manifest"
{
"version" "2"
"commandline" "/run %verb%"
}
Environment:
------------
Unchanged variables:
--------------------
STEAM_COMPAT_DATA_PATH
STEAM_COMPAT_CONFIG
STEAM_COMPAT_CLIENT_INSTALL_PATH
New variables:
--------------
STEAM_COMPAT_APP_ID
STEAM_COMPAT_SESSION_ID
Only set when session mode is requested. Otherwise execute a single command, no session.
STEAM_COMPAT_APP_LIBRARY_PATH
STEAM_COMPAT_TOOL_PATHS
':'-separated list of compat tool paths and other paths to be mounted in the container
Workflow:
---------
Create a session whenever a new STEAM_COMPAT_SESSION_ID comes through. We do not plan to add an "open session" command.
Close the session after a "waitforexitandrun" verb. We plan to replace this with a "close session" command at some point,
as it will not support running multiple apps in the same session. But it will be adequate for now.
Any run with a compat tool can be forced to use session mode by setting STEAM_COMPAT_FORCE_SESSIONS=1