mirror of
https://github.com/aclist/dztui.git
synced 2026-10-25 12:12:31 +01:00
change: treat steam clients as separate processes
This commit is contained in:
1 parent
2a08b9ba82
commit
00b5476aaf
2 files changed
+11
-13
No files matched your search
@@ -84,7 +84,8 @@ HERO_PATH = "data/images/_hero.png"
|
||||
CSS_PATH = "data/app.css"
|
||||
VDF_PATH = "steamapps/libraryfolders.vdf"
|
||||
DEFAULT_STEAM_PATH = ".local/share/Steam"
|
||||
FLATPAK_STEAM_PATH = ".var/app/com.valvesoftware.Steam/data/Steam"
|
||||
FLATPAK_ROOT_PATH = ".var/app/com.valvesoftware.Steam"
|
||||
FLATPAK_STEAM_PATH = FLATPAK_ROOT_PATH + "/data/Steam"
|
||||
UBUNTU_STEAM_PATH = ".steam/steam"
|
||||
DEBIAN_STEAM_PATH = ".steam/debian-installation"
|
||||
|
||||
|
||||
+9
-12
@@ -10,6 +10,7 @@ from dzgui.const.constants import (
|
||||
FLATPAK_CMD,
|
||||
FLATPAK_RUN_CMD,
|
||||
FLATPAK_SANDBOX,
|
||||
FLATPAK_ROOT_PATH,
|
||||
FLATPAK_STEAM_PATH,
|
||||
)
|
||||
|
||||
@@ -17,15 +18,10 @@ logger = logging.getLogger(APP_NAME)
|
||||
|
||||
|
||||
def is_steam_running(cmd: str) -> bool:
|
||||
is_flatpak_running = is_flatpak_steam_running()
|
||||
if cmd in (FLATPAK_RUN_CMD, FLATPAK_SANDBOX):
|
||||
return is_flatpak_running
|
||||
return is_flatpak_steam_running()
|
||||
elif cmd == STEAM_CMD:
|
||||
if is_flatpak_running:
|
||||
return False
|
||||
if has_cmd(STEAM_CMD) is False:
|
||||
return False
|
||||
return is_running(STEAM_CMD)
|
||||
return is_native_steam_running()
|
||||
else:
|
||||
raise TypeError("Not a valid Steam client selection")
|
||||
|
||||
@@ -42,11 +38,12 @@ def is_flatpak_steam_running() -> bool:
|
||||
return False
|
||||
|
||||
|
||||
def is_running(proc: str) -> bool:
|
||||
for process in psutil.process_iter(["pid", "name"]):
|
||||
if process.info["name"] == proc:
|
||||
return True
|
||||
return False
|
||||
def is_native_steam_running() -> bool:
|
||||
if has_cmd(STEAM_CMD) is False:
|
||||
return False
|
||||
procs = [p.cmdline() for p in psutil.process_iter(["pid", "name"]) if STEAM_CMD in p.info["name"]]
|
||||
steam_procs = [p for p in procs if not any(FLATPAK_ROOT_PATH in sub for sub in p)]
|
||||
return bool(steam_procs)
|
||||
|
||||
|
||||
def has_cmd(cmd: str) -> bool:
|
||||
|
||||
Reference in new issue
Block a user