1
0
Fork 0
mirror of synced 2024-06-28 11:11:15 +12:00

Add system environment to processes

This commit is contained in:
Dummerle 2022-05-21 12:40:21 +02:00
parent c4617de206
commit b3d7f5ba92
No known key found for this signature in database
GPG key ID: AB68CC59CA39F2F1

View file

@ -1,7 +1,6 @@
import os import os
import platform import platform
import shutil import shutil
from argparse import Namespace
from dataclasses import dataclass from dataclasses import dataclass
from logging import getLogger from logging import getLogger
from typing import List, Tuple from typing import List, Tuple
@ -31,6 +30,7 @@ class InitArgs:
wine_prefix=args.wine_pfx wine_prefix=args.wine_pfx
) )
@dataclass @dataclass
class LaunchArgs: class LaunchArgs:
executable: str = "" executable: str = ""
@ -60,7 +60,7 @@ def get_origin_params(core: LegendaryCore, app_name, offline: bool,
command.append(origin_uri) command.append(origin_uri)
env = core.get_app_environment(app_name) env = core.get_app_environment(app_name)
launch_args.env = QProcessEnvironment() launch_args.env = QProcessEnvironment.systemEnvironment()
for name, value in env: for name, value in env:
launch_args.env.insert(name, value) launch_args.env.insert(name, value)
@ -104,7 +104,7 @@ def get_game_params(core: LegendaryCore, igame: InstalledGame, args: InitArgs,
launch_args.executable = full_params[0] launch_args.executable = full_params[0]
launch_args.args = full_params[1:] launch_args.args = full_params[1:]
launch_args.env = QProcessEnvironment() launch_args.env = QProcessEnvironment.systemEnvironment()
for name, value in params.environment.items(): for name, value in params.environment.items():
launch_args.env.insert(name, value) launch_args.env.insert(name, value)
@ -156,11 +156,10 @@ def get_configured_process(env: dict = None):
str(proc.readAllStandardError().data(), "utf-8", "ignore") str(proc.readAllStandardError().data(), "utf-8", "ignore")
) )
) )
environment = QProcessEnvironment.systemEnvironment()
if env: if env:
environment = QProcessEnvironment()
for e in env: for e in env:
environment.insert(e, env[e]) environment.insert(e, env[e])
proc.setProcessEnvironment(environment) proc.setProcessEnvironment(environment)
return proc return proc