git.iko.soy/typeable/nixpkgs
on master help sign in
protontricks: 1.4.4 -> 1.5.0

- Update steam-run.patch to support Pressure Vessel runtime - Fix adding $PROTON_DIST_PATH/lib to LD_LIBRARY_PATH when using legacy runtime - Use bash instead of /bin/sh now that wrappers are non-POSIX compliant - Remove `test_run_steam_runtime_not_found` in steam-run.patch instead of using disabledTests - Add import check

commit27f60ec4b88759aa5e7524ae9a5eb26a725971ba authorKira Bruneau <kira.bruneau@pm.me> dateSun 25 Apr 2021, 11:32 (6 years ago) parent9fecb15
2 files changed+218−174
pkgs/tools/package-management/protontricks/default.nix+5−11 pkgs/tools/package-management/protontricks/steam-run.patch+213−163
pkgs/tools/package-management/protontricks/default.nix+5−11
@@ -3,6 +3,7 @@
33, fetchFromGitHub
44, setuptools_scm
55, vdf
6+, bash
67, steam-run
78, winetricks
89, zenity
@@ -11,13 +12,13 @@
1112
1213buildPythonApplication rec {
1314 pname = "protontricks";
14− version = "1.4.4";
15+ version = "1.5.0";
1516
1617 src = fetchFromGitHub {
1718 owner = "Matoking";
1819 repo = pname;
1920 rev = version;
20− sha256 = "0i7p0jj7avmq3b2qlcpwcflipndrnwsvwvhc5aal7rm95aa7xhja";
21+ hash = "sha256-IHgoi5VUN3ORbufkruPb6wR7pTekJFQHhhDrnjOWzWM=";
2122 };
2223
2324 patches = [
@@ -34,6 +35,7 @@ buildPythonApplication rec {
3435
3536 makeWrapperArgs = [
3637 "--prefix PATH : ${lib.makeBinPath [
38+ bash
3739 steam-run
3840 (winetricks.override {
3941 # Remove default build of wine to reduce closure size.
@@ -45,15 +47,7 @@ buildPythonApplication rec {
4547 ];
4648
4749 checkInputs = [ pytestCheckHook ];
48− disabledTests = [
49− # Steam runtime is hard-coded with steam-run.patch and can't be configured
50− "test_run_steam_runtime_not_found"
51− "test_unknown_steam_runtime_detected"
52−
53− # Steam runtime 2 currently isn't supported
54− # See https://github.com/NixOS/nixpkgs/issues/100655
55− "test_run_winetricks_steam_runtime_v2"
56− ];
50+ pythonImportsCheck = [ "protontricks" ];
5751
5852 meta = with lib; {
5953 description = "A simple wrapper for running Winetricks commands for Proton-enabled games";
pkgs/tools/package-management/protontricks/steam-run.patch+213−163
@@ -1,16 +1,18 @@
11diff --git a/src/protontricks/cli.py b/src/protontricks/cli.py
2−index fec0563..d158b96 100755
2+index 9641970..6a2b268 100755
33--- a/src/protontricks/cli.py
44+++ b/src/protontricks/cli.py
5−@@ -14,7 +14,7 @@ import os
6− import logging
5+@@ -15,8 +15,8 @@ import sys
76
87 from . import __version__
9−-from .steam import (find_proton_app, find_steam_path, find_steam_runtime_path,
10−+from .steam import (find_proton_app, find_steam_path,
11− get_steam_apps, get_steam_lib_paths)
12− from .winetricks import get_winetricks_path
138 from .gui import select_steam_app_with_gui
9+-from .steam import (find_legacy_steam_runtime_path, find_proton_app,
10+- find_steam_path, get_steam_apps, get_steam_lib_paths)
11++from .steam import (find_proton_app, find_steam_path, get_steam_apps,
12++ get_steam_lib_paths)
13+ from .util import run_command
14+ from .winetricks import get_winetricks_path
15+
1416@@ -75,8 +75,7 @@ def main(args=None):
1517 "WINE: path to a custom 'wine' executable\n"
1618 "WINESERVER: path to a custom 'wineserver' executable\n"
@@ -21,70 +23,73 @@ index fec0563..d158b96 100755
2123 ),
2224 formatter_class=argparse.RawTextHelpFormatter
2325 )
24−@@ -133,14 +132,10 @@ def main(args=None):
26+@@ -138,18 +137,9 @@ def main(args=None):
27+ )
2528 sys.exit(-1)
2629
27− # 2. Find Steam Runtime if enabled
28−- steam_runtime_path = None
29−+ steam_runtime = False
30−
30+- # 2. Find the pre-installed legacy Steam Runtime if enabled
31+- legacy_steam_runtime_path = None
32+- use_steam_runtime = True
33+-
34++ # 2. Use Steam Runtime if enabled
3135 if os.environ.get("STEAM_RUNTIME", "") != "0" and not args.no_runtime:
32−- steam_runtime_path = find_steam_runtime_path(steam_root=steam_root)
36+- legacy_steam_runtime_path = find_legacy_steam_runtime_path(
37+- steam_root=steam_root
38+- )
3339-
34−- if not steam_runtime_path:
40+- if not legacy_steam_runtime_path:
3541- print("Steam Runtime was enabled but couldn't be found!")
3642- sys.exit(-1)
37−+ steam_runtime = True
43++ use_steam_runtime = True
3844 else:
45+ use_steam_runtime = False
3946 logger.info("Steam Runtime disabled.")
40−
41−@@ -201,7 +196,7 @@ def main(args=None):
42− winetricks_path=winetricks_path,
47+@@ -212,7 +202,6 @@ def main(args=None):
4348 proton_app=proton_app,
4449 steam_app=steam_app,
45−- steam_runtime_path=steam_runtime_path,
46−+ steam_runtime=steam_runtime,
47− command=[winetricks_path, "--gui"]
50+ use_steam_runtime=use_steam_runtime,
51+- legacy_steam_runtime_path=legacy_steam_runtime_path,
52+ command=[winetricks_path, "--gui"],
53+ use_bwrap=use_bwrap
4854 )
49−
50−@@ -269,7 +264,7 @@ def main(args=None):
51− winetricks_path=winetricks_path,
55+@@ -282,7 +271,6 @@ def main(args=None):
5256 proton_app=proton_app,
5357 steam_app=steam_app,
54−- steam_runtime_path=steam_runtime_path,
55−+ steam_runtime=steam_runtime,
58+ use_steam_runtime=use_steam_runtime,
59+- legacy_steam_runtime_path=legacy_steam_runtime_path,
60+ use_bwrap=use_bwrap,
5661 command=[winetricks_path] + args.winetricks_command)
5762 elif args.command:
58− run_command(
59−@@ -277,7 +272,7 @@ def main(args=None):
60− proton_app=proton_app,
63+@@ -292,7 +280,6 @@ def main(args=None):
6164 steam_app=steam_app,
6265 command=args.command,
63−- steam_runtime_path=steam_runtime_path,
64−+ steam_runtime=steam_runtime,
66+ use_steam_runtime=use_steam_runtime,
67+- legacy_steam_runtime_path=legacy_steam_runtime_path,
68+ use_bwrap=use_bwrap,
6569 # Pass the command directly into the shell *without*
6670 # escaping it
67− cwd=steam_app.install_path,
6871diff --git a/src/protontricks/steam.py b/src/protontricks/steam.py
69−index fa5772d..4f30cd3 100644
72+index 8554e24..509afb6 100644
7073--- a/src/protontricks/steam.py
7174+++ b/src/protontricks/steam.py
72−@@ -11,7 +11,7 @@ from .util import lower_dict
73−
75+@@ -13,8 +13,8 @@ from .util import lower_dict
7476 __all__ = (
7577 "COMMON_STEAM_DIRS", "SteamApp", "find_steam_path",
76−- "find_steam_proton_app", "find_proton_app", "find_steam_runtime_path",
77−+ "find_steam_proton_app", "find_proton_app",
78− "find_appid_proton_prefix", "get_steam_lib_paths", "get_steam_apps",
79− "get_custom_proton_installations"
78+ "find_steam_proton_app", "find_proton_app",
79+- "find_legacy_steam_runtime_path", "find_appid_proton_prefix",
80+- "get_steam_lib_paths", "get_steam_apps", "get_custom_proton_installations"
81++ "find_appid_proton_prefix", "get_steam_lib_paths",
82++ "get_steam_apps", "get_custom_proton_installations"
8083 )
81−@@ -254,37 +254,6 @@ def find_steam_path():
84+
85+ COMMON_STEAM_DIRS = [
86+@@ -283,37 +283,6 @@ def find_steam_path():
8287 return None, None
8388
8489
85−-def find_steam_runtime_path(steam_root):
90+-def find_legacy_steam_runtime_path(steam_root):
8691- """
87−- Find the Steam Runtime either using the STEAM_RUNTIME env or
92+- Find the legacy Steam Runtime either using the STEAM_RUNTIME env or
8893- steam_root
8994- """
9095- env_steam_runtime = os.environ.get("STEAM_RUNTIME", "")
@@ -117,162 +122,149 @@ index fa5772d..4f30cd3 100644
117122 APPINFO_STRUCT_SECTION = "<LLLLQ20sL"
118123
119124diff --git a/src/protontricks/util.py b/src/protontricks/util.py
120−index d513b46..c48e41f 100644
125+index 40fa752..9da5509 100644
121126--- a/src/protontricks/util.py
122127+++ b/src/protontricks/util.py
123−@@ -6,7 +6,7 @@ import stat
124− from pathlib import Path
125− from subprocess import check_output, run, PIPE
126−
127−-__all__ = ("get_runtime_library_paths", "create_wine_bin_dir", "run_command")
128−+__all__ = ("create_wine_bin_dir", "run_command")
129−
130− logger = logging.getLogger("protontricks")
131−
132−@@ -25,93 +25,10 @@ def lower_dict(d):
128+@@ -25,24 +25,6 @@ def lower_dict(d):
133129 return {k.lower(): v for k, v in d.items()}
134130
135131
136−-def get_host_library_paths():
132+-def get_legacy_runtime_library_paths(legacy_steam_runtime_path, proton_app):
137133- """
138−- Get host library paths to use when creating the LD_LIBRARY_PATH environment
139−- variable for use with newer Steam Runtime installations
134+- Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime
140135- """
141−- # The traditional Steam Runtime does the following when running the
142−- # `run.sh --print-steam-runtime-library-paths` command.
143−- # Since that command is unavailable with newer Steam Runtime releases,
144−- # do it ourselves here.
145−- result = run(
146−- ["/sbin/ldconfig", "-XNv"],
147−- check=True, stdout=PIPE, stderr=PIPE
148−- )
149−- lines = result.stdout.decode("utf-8").split("\n")
150−- paths = [
151−- line.split(":")[0] for line in lines
152−- if line.startswith("/") and ":" in line
153−- ]
154−-
155−- return ":".join(paths)
156−-
157−-
158−-RUNTIME_ROOT_GLOB_PATTERNS = (
159−- "var/*/files/",
160−- "*/files/"
161−-)
162−-
163−-
164−-def get_runtime_library_paths(steam_runtime_path, proton_app):
165−- """
166−- Get LD_LIBRARY_PATH value to run a command using Steam Runtime
167−- """
168−- def find_runtime_app_root(runtime_app):
169−- """
170−- Find the runtime root (the directory containing the root fileystem
171−- used for the container) for separately installed Steam Runtime app
172−- """
173−- for pattern in RUNTIME_ROOT_GLOB_PATTERNS:
174−- try:
175−- return next(
176−- runtime_app.install_path.glob(pattern)
177−- )
178−- except StopIteration:
179−- pass
180−-
181−- raise RuntimeError(
182−- "Could not find Steam Runtime runtime root for {}".format(
183−- runtime_app.name
184−- )
185−- )
186−-
187−- if proton_app.required_tool_appid:
188−- # bwrap based Steam Runtime is used for Proton installations that
189−- # use separate Steam runtimes
190−- # TODO: Try to run the Wine binaries inside an user namespace somehow.
191−- # Newer Steam Runtime environments may rely on a newer glibc than what
192−- # is available on the host system, which may cause potential problems
193−- # otherwise.
194−- runtime_root = find_runtime_app_root(proton_app.required_tool_app)
195−- return "".join([
196−- str(proton_app.install_path / "dist" / "lib"), os.pathsep,
197−- str(proton_app.install_path / "dist" / "lib64"), os.pathsep,
198−- get_host_library_paths(), os.pathsep,
199−- str(runtime_root / "lib" / "i386-linux-gnu"), os.pathsep,
200−- str(runtime_root / "lib" / "x86_64-linux-gnu")
201−- ])
202−-
203−- # Traditional LD_LIBRARY_PATH based Steam Runtime is used otherwise
204136- steam_runtime_paths = check_output([
205−- str(steam_runtime_path / "run.sh"),
137+- str(legacy_steam_runtime_path / "run.sh"),
206138- "--print-steam-runtime-library-paths"
207139- ])
208140- steam_runtime_paths = str(steam_runtime_paths, "utf-8")
209141- # Add Proton installation directory first into LD_LIBRARY_PATH
210142- # so that libwine.so.1 is picked up correctly (see issue #3)
211143- return "".join([
212−- str(proton_app.install_path / "dist" / "lib"), os.pathsep,
213−- str(proton_app.install_path / "dist" / "lib64"), os.pathsep,
144+- str(proton_app.proton_dist_path / "lib"), os.pathsep,
145+- str(proton_app.proton_dist_path / "lib64"), os.pathsep,
214146- steam_runtime_paths
215147- ])
216148-
217149-
218− WINE_SCRIPT_TEMPLATE = (
219−- "#!/bin/bash\n"
220−+ "#!/bin/sh\n"
221− "# Helper script created by Protontricks to run Wine binaries using Steam Runtime\n"
222−- "export LD_LIBRARY_PATH=\"$PROTON_LD_LIBRARY_PATH\"\n"
223−- "exec \"$PROTON_PATH\"/dist/bin/{name} \"$@\""
224−+ "exec steam-run \"$PROTON_PATH\"/dist/bin/{name} \"$@\""
150+ def get_host_library_paths():
151+ """
152+ Get host library paths to use when creating the LD_LIBRARY_PATH environment
153+@@ -54,7 +36,7 @@ def get_host_library_paths():
154+ # Since that command is unavailable with newer Steam Runtime releases,
155+ # do it ourselves here.
156+ result = run(
157+- ["/sbin/ldconfig", "-XNv"],
158++ ["steam-run", "ldconfig", "-XNv"],
159+ check=True, stdout=PIPE, stderr=PIPE
160+ )
161+ lines = result.stdout.decode("utf-8").split("\n")
162+@@ -72,7 +54,7 @@ RUNTIME_ROOT_GLOB_PATTERNS = (
225163 )
226164
227165
228−@@ -172,7 +89,7 @@ def create_wine_bin_dir(proton_app):
166+-def get_runtime_library_paths(proton_app, use_bwrap=True):
167++def get_runtime_library_paths(proton_app, proton_app_only=True):
168+ """
169+ Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime
170+ """
171+@@ -95,7 +77,7 @@ def get_runtime_library_paths(proton_app, use_bwrap=True):
172+ )
173+ )
174+
175+- if use_bwrap:
176++ if proton_app_only:
177+ return "".join([
178+ str(proton_app.proton_dist_path / "lib"), os.pathsep,
179+ str(proton_app.proton_dist_path / "lib64"), os.pathsep
180+@@ -111,14 +93,19 @@ def get_runtime_library_paths(proton_app, use_bwrap=True):
181+ ])
229182
183+
184+-WINE_SCRIPT_RUNTIME_V1_TEMPLATE = (
185+- "#!/bin/bash\n"
186+- "# Helper script created by Protontricks to run Wine binaries using Steam Runtime\n"
187+- "export LD_LIBRARY_PATH=\"$PROTON_LD_LIBRARY_PATH\"\n"
188+- "exec \"$PROTON_DIST_PATH\"/bin/{name} \"$@\""
189+-)
190++# Add Proton installation directory first into LD_LIBRARY_PATH
191++# so that libwine.so.1 is picked up correctly (see issue #3)
192++WINE_SCRIPT_RUNTIME_V1_TEMPLATE = """#!/usr/bin/env -S steam-run bash
193++# Helper script created by Protontricks to run Wine binaries using Steam Runtime
194++export LD_LIBRARY_PATH="$PROTON_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH"
195++exec "$PROTON_DIST_PATH"/bin/{name} "$@"
196++"""
197+
198+-WINE_SCRIPT_RUNTIME_V2_TEMPLATE = """#!/bin/bash
199++# The run script calls pressure-vessel-unruntime which will unset
200++# LD_LIBRARY_PATH defined by steam-run. This will cause Pressure
201++# Vessel to segfault, so just call pressure-vessel-wrap directly
202++# instead.
203++WINE_SCRIPT_RUNTIME_V2_TEMPLATE = """#!/usr/bin/env bash
204+ # Helper script created by Protontricks to run Wine binaries using Steam Runtime
205+ PROTONTRICKS_PROXY_SCRIPT_PATH="{script_path}"
206+ if [[ -n "$PROTONTRICKS_INSIDE_STEAM_RUNTIME" ]]; then
207+@@ -127,9 +114,13 @@ if [[ -n "$PROTONTRICKS_INSIDE_STEAM_RUNTIME" ]]; then
208+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PROTON_LD_LIBRARY_PATH"
209+ "$PROTON_DIST_PATH"/bin/{name} "$@"
210+ else
211+- exec "$STEAM_RUNTIME_PATH"/run --share-pid --batch --filesystem=/mnt \
212+- --filesystem=/tmp --filesystem=/run/media --filesystem=/etc \
213+- --filesystem=/opt --filesystem=/home --filesystem=/usr -- \
214++ exec steam-run "$STEAM_RUNTIME_PATH"/pressure-vessel/bin/pressure-vessel-wrap \
215++ --runtime-archive=$(echo "$STEAM_RUNTIME_PATH"/*runtime.tar.gz) \
216++ --variable-dir="${{PRESSURE_VESSEL_VARIABLE_DIR:-$STEAM_RUNTIME_PATH/var}}" \
217++ --share-pid --batch \
218++ --filesystem=/mnt --filesystem=/tmp --filesystem=/run/media \
219++ --filesystem=/etc --filesystem=/opt --filesystem=/home \
220++ --filesystem=/usr -- \
221+ env PROTONTRICKS_INSIDE_STEAM_RUNTIME=1 \
222+ "$PROTONTRICKS_PROXY_SCRIPT_PATH" "$@"
223+ fi
224+@@ -194,7 +185,6 @@ def create_wine_bin_dir(proton_app, use_bwrap=True):
230225 def run_command(
231226 winetricks_path, proton_app, steam_app, command,
232−- steam_runtime_path=None,
233−+ steam_runtime=False,
227+ use_steam_runtime=False,
228+- legacy_steam_runtime_path=None,
229+ use_bwrap=True,
234230 **kwargs):
235231 """Run an arbitrary command with the correct environment variables
236− for the given Proton app
237−@@ -180,13 +97,13 @@ def run_command(
238− The environment variables are set for the duration of the call
239− and restored afterwards
240−
241−- If 'steam_runtime_path' is provided, run the command using Steam Runtime
242−+ If 'steam_runtime' is provided, run the command using Steam Runtime
243− """
244− # Check for incomplete Steam Runtime installation
245− runtime_install_incomplete = \
246− proton_app.required_tool_appid and not proton_app.required_tool_app
247−
248−- if steam_runtime_path and runtime_install_incomplete:
249−+ if steam_runtime and runtime_install_incomplete:
250− raise RuntimeError(
251− "{} is missing the required Steam Runtime. You may need to launch "
252− "a Steam app using this Proton version to finish the "
253−@@ -234,7 +151,7 @@ def run_command(
254− os.environ.pop("WINEARCH", "")
232+@@ -271,7 +261,7 @@ def run_command(
233+ os.environ["STEAM_RUNTIME_PATH"] = \
234+ str(proton_app.required_tool_app.install_path)
235+ os.environ["PROTON_LD_LIBRARY_PATH"] = \
236+- get_runtime_library_paths(proton_app, use_bwrap=use_bwrap)
237++ get_runtime_library_paths(proton_app, proton_app_only=use_bwrap)
255238
256− wine_bin_dir = None
257−- if steam_runtime_path:
258−+ if steam_runtime:
259− if proton_app.required_tool_app:
260239 runtime_name = proton_app.required_tool_app.name
261240 logger.info(
262−@@ -251,8 +168,6 @@ def run_command(
241+@@ -294,11 +284,8 @@ def run_command(
242+ "Current Steam Runtime not recognized by Protontricks."
243+ )
244+ else:
245+- # Legacy Steam Runtime requires a different LD_LIBRARY_PATH
246+ os.environ["PROTON_LD_LIBRARY_PATH"] = \
247+- get_legacy_runtime_library_paths(
248+- legacy_steam_runtime_path, proton_app
249+- )
250++ get_runtime_library_paths(proton_app, proton_app_only=True)
251+
252+ # When Steam Runtime is enabled, create a set of helper scripts
263253 # that load the underlying Proton Wine executables with Steam Runtime
264− # and Proton libraries instead of system libraries
265− wine_bin_dir = create_wine_bin_dir(proton_app=proton_app)
266−- os.environ["PROTON_LD_LIBRARY_PATH"] = \
267−- get_runtime_library_paths(steam_runtime_path, proton_app)
254+@@ -306,8 +293,6 @@ def run_command(
255+ wine_bin_dir = create_wine_bin_dir(
256+ proton_app=proton_app, use_bwrap=use_bwrap
257+ )
258+- os.environ["LEGACY_STEAM_RUNTIME_PATH"] = \
259+- str(legacy_steam_runtime_path)
260+
268261 os.environ["PATH"] = "".join([
269262 str(wine_bin_dir), os.pathsep, os.environ["PATH"]
270− ])
271263diff --git a/tests/test_cli.py b/tests/test_cli.py
272−index b612dfa..c4d1de0 100644
264+index 1955d81..1de44b3 100644
273265--- a/tests/test_cli.py
274266+++ b/tests/test_cli.py
275−@@ -115,9 +115,6 @@ class TestCLIRun:
267+@@ -117,15 +117,10 @@ class TestCLIRun:
276268 assert str(command.args[0]).endswith(".local/bin/winetricks")
277269 assert command.args[1] == "winecfg"
278270 assert command.env["PATH"].startswith(str(wine_bin_dir))
@@ -282,3 +274,61 @@ index b612dfa..c4d1de0 100644
282274 assert command.env["WINE"] == str(wine_bin_dir / "wine")
283275 assert command.env["WINELOADER"] == str(wine_bin_dir / "wine")
284276 assert command.env["WINESERVER"] == str(wine_bin_dir / "wineserver")
277+
278+- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
279+- str(steam_runtime_dir / "steam-runtime")
280+ assert "STEAM_RUNTIME_PATH" not in command.env
281+
282+ for name in ("wine", "wineserver"):
283+@@ -166,16 +161,14 @@ class TestCLIRun:
284+ assert command.env["PATH"].startswith(str(wine_bin_dir))
285+
286+ # Compared to the traditional Steam Runtime, PROTON_LD_LIBRARY_PATH
287+- # will be different
288++ # will be the same (it would be different without steam-run.patch)
289+ proton_install_path = Path(proton_app.install_path)
290+ assert command.env["PROTON_LD_LIBRARY_PATH"] == "".join([
291+ str(proton_install_path / "dist" / "lib"), os.pathsep,
292+ str(proton_install_path / "dist" / "lib64"), os.pathsep
293+ ])
294+
295+- # Environment variables for both legacy and new Steam Runtime exist
296+- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
297+- str(steam_runtime_dir / "steam-runtime")
298++ # Environment variable for new Steam Runtime exists
299+ assert command.env["STEAM_RUNTIME_PATH"] == \
300+ str(steam_runtime_soldier.install_path)
301+
302+@@ -238,10 +231,7 @@ class TestCLIRun:
303+ str(runtime_root / "lib" / "i386-linux-gnu"), os.pathsep,
304+ str(runtime_root / "lib" / "x86_64-linux-gnu")
305+ ]))
306+-
307+- # Environment variables for both legacy and new Steam Runtime exist
308+- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
309+- str(steam_runtime_dir / "steam-runtime")
310++ # Environment variable for new Steam Runtime exists
311+ assert command.env["STEAM_RUNTIME_PATH"] == \
312+ str(steam_runtime_soldier.install_path)
313+
314+@@ -324,20 +314,6 @@ class TestCLIRun:
315+
316+ assert "Zenity is not installed" in result
317+
318+- def test_run_steam_runtime_not_found(
319+- self, cli, steam_dir, steam_app_factory):
320+- """
321+- Try performing a command with Steam Runtime enabled but no
322+- available Steam Runtime installation
323+- """
324+- steam_app_factory(name="Fake game 1", appid=10)
325+- result = cli(
326+- ["10", "winecfg"], env={"STEAM_RUNTIME": "invalid/path"},
327+- expect_exit=True
328+- )
329+-
330+- assert "Steam Runtime was enabled but couldn't be found" in result
331+-
332+ def test_run_proton_not_found(self, cli, steam_dir, steam_app_factory):
333+ steam_app_factory(name="Fake game 1", appid=10)
334+ result = cli(["10", "winecfg"], expect_exit=True)