mirror of
https://github.com/aclist/dztui.git
synced 2026-08-30 11:47:17 +02:00
Compare commits
1 Commits
33c4f6e526
...
03bd92c24a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
03bd92c24a |
@ -1,3 +1,4 @@
|
|||||||
|
import json
|
||||||
import struct
|
import struct
|
||||||
|
|
||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
@ -403,6 +404,7 @@ def get_pefile_path(steam_path: Path, appid: int) -> Path:
|
|||||||
return pe_path
|
return pe_path
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def get_pretty_version(steam_path: Path, appid: int) -> str | None:
|
def get_pretty_version(steam_path: Path, appid: int) -> str | None:
|
||||||
try:
|
try:
|
||||||
pe_file_path = get_pefile_path(steam_path, appid)
|
pe_file_path = get_pefile_path(steam_path, appid)
|
||||||
|
|||||||
@ -1,10 +1,12 @@
|
|||||||
|
import json
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import psutil
|
import psutil
|
||||||
import requests
|
import requests
|
||||||
import subprocess
|
import subprocess
|
||||||
import vdf # type: ignore
|
import vdf
|
||||||
|
|
||||||
|
from shlex import shlex
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Any, Union
|
from typing import Any, Union
|
||||||
from warnings import deprecated
|
from warnings import deprecated
|
||||||
@ -23,15 +25,9 @@ from dzgui.const.constants import (
|
|||||||
REQUEST_TIMEOUT,
|
REQUEST_TIMEOUT,
|
||||||
VDF_PATH,
|
VDF_PATH,
|
||||||
)
|
)
|
||||||
from dzgui.const.endpoints import (
|
from dzgui.const.endpoints import SUB_ENDPOINT, STEAM_PUBLISHED_FILES, UNSUB_ENDPOINT
|
||||||
APP_DETAILS,
|
|
||||||
SUB_ENDPOINT,
|
|
||||||
STEAM_PUBLISHED_FILES,
|
|
||||||
UNSUB_ENDPOINT,
|
|
||||||
)
|
|
||||||
from dzgui.strings import wizard
|
from dzgui.strings import wizard
|
||||||
from dzgui.util.bash import concat_bash_args
|
from dzgui.util.bash import concat_bash_args
|
||||||
from dzgui.util.strings import unknown
|
|
||||||
|
|
||||||
logger = logging.getLogger(APP_NAME)
|
logger = logging.getLogger(APP_NAME)
|
||||||
|
|
||||||
@ -264,7 +260,7 @@ def enqueue_mod(client: str, mod: str, appid: int) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@deprecated("Cf. https://github.com/ValveSoftware/steam-for-linux/issues/9672")
|
@deprecated("Cf. https://github.com/ValveSoftware/steam-for-linux/issues/9672")
|
||||||
def get_registry() -> Any | None:
|
def get_registry() -> dict[str, Any] | None:
|
||||||
home = os.getenv("HOME")
|
home = os.getenv("HOME")
|
||||||
try:
|
try:
|
||||||
with open(f"{home}/.steam/registry.vdf") as f:
|
with open(f"{home}/.steam/registry.vdf") as f:
|
||||||
@ -298,9 +294,9 @@ def _get_running_app() -> int | None:
|
|||||||
if registry is None:
|
if registry is None:
|
||||||
return None
|
return None
|
||||||
try:
|
try:
|
||||||
return int(
|
return registry["Registry"]["HKCU"]["Software"]["Valve"]["Steam"][
|
||||||
registry["Registry"]["HKCU"]["Software"]["Valve"]["Steam"]["RunningAppID"]
|
"RunningAppID"
|
||||||
)
|
]
|
||||||
except Exception:
|
except Exception:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@ -323,7 +319,7 @@ def get_running_app() -> int | None:
|
|||||||
args = proc.cmdline()
|
args = proc.cmdline()
|
||||||
appid = (row for row in args if FLAG in row)
|
appid = (row for row in args if FLAG in row)
|
||||||
try:
|
try:
|
||||||
return int(next(appid).split("=")[1])
|
return str(next(appid).split("=")[1])
|
||||||
except StopIteration:
|
except StopIteration:
|
||||||
return None
|
return None
|
||||||
return None
|
return None
|
||||||
@ -397,15 +393,3 @@ def get_app_path(folders_path: Path, appid: int) -> Path:
|
|||||||
)
|
)
|
||||||
|
|
||||||
return Path(app_path)
|
return Path(app_path)
|
||||||
|
|
||||||
|
|
||||||
def get_app_name(appid: int) -> str:
|
|
||||||
payload = {"appids": [appid]}
|
|
||||||
res = requests.get(APP_DETAILS, params=payload)
|
|
||||||
if res.status_code != 200:
|
|
||||||
return unknown
|
|
||||||
try:
|
|
||||||
return str(res.json()[str(appid)]["data"]["name"])
|
|
||||||
except Exception as e:
|
|
||||||
logger.debug(e)
|
|
||||||
return unknown
|
|
||||||
|
|||||||
@ -5,7 +5,6 @@ STEAM_PUBLISHED_FILES = (
|
|||||||
STEAM_SERVERS = "https://api.steampowered.com/IGameServersService/GetServerList/v1"
|
STEAM_SERVERS = "https://api.steampowered.com/IGameServersService/GetServerList/v1"
|
||||||
SUB_ENDPOINT = "https://api.steampowered.com/IPublishedFileService/Subscribe/v1"
|
SUB_ENDPOINT = "https://api.steampowered.com/IPublishedFileService/Subscribe/v1"
|
||||||
UNSUB_ENDPOINT = "https://api.steampowered.com/IPublishedFileService/Unsubscribe/v1"
|
UNSUB_ENDPOINT = "https://api.steampowered.com/IPublishedFileService/Unsubscribe/v1"
|
||||||
APP_DETAILS = "https://store.steampowered.com/api/appdetails?"
|
|
||||||
|
|
||||||
BM_SERVERS = "https://api.battlemetrics.com/servers?"
|
BM_SERVERS = "https://api.battlemetrics.com/servers?"
|
||||||
GITHUB = "https://github.com/aclist"
|
GITHUB = "https://github.com/aclist"
|
||||||
|
|||||||
@ -3,8 +3,11 @@ import subprocess
|
|||||||
import shutil
|
import shutil
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from warnings import deprecated
|
||||||
|
|
||||||
from dzgui.const.constants import (
|
from dzgui.const.constants import (
|
||||||
APP_NAME,
|
APP_NAME,
|
||||||
|
DAYZ_BINARY,
|
||||||
STEAM_CMD,
|
STEAM_CMD,
|
||||||
FLATPAK_APPID,
|
FLATPAK_APPID,
|
||||||
FLATPAK_CMD,
|
FLATPAK_CMD,
|
||||||
@ -12,6 +15,8 @@ from dzgui.const.constants import (
|
|||||||
FLATPAK_SANDBOX,
|
FLATPAK_SANDBOX,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from dzgui.util.format import format_exception
|
||||||
|
|
||||||
logger = logging.getLogger(APP_NAME)
|
logger = logging.getLogger(APP_NAME)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -55,11 +55,8 @@ class ConfigManager:
|
|||||||
self.update_config(Preferences.IP_LIST, ips)
|
self.update_config(Preferences.IP_LIST, ips)
|
||||||
|
|
||||||
def update_history_file(self, fqip: str) -> None:
|
def update_history_file(self, fqip: str) -> None:
|
||||||
try:
|
|
||||||
with open(self.prefs.paths.history, "r") as f:
|
with open(self.prefs.paths.history, "r") as f:
|
||||||
ips = [line.rstrip() for line in f.readlines()]
|
ips = [line.rstrip() for line in f.readlines()]
|
||||||
except FileNotFoundError:
|
|
||||||
ips = []
|
|
||||||
|
|
||||||
seen = set()
|
seen = set()
|
||||||
ips.append(fqip)
|
ips.append(fqip)
|
||||||
|
|||||||
@ -141,7 +141,7 @@ class ModManager:
|
|||||||
app_path_exp = PeFile.get_nested_app_path(steam_path, APPID_DAYZ_EXP)
|
app_path_exp = PeFile.get_nested_app_path(steam_path, APPID_DAYZ_EXP)
|
||||||
symlink = app_path_exp / md5
|
symlink = app_path_exp / md5
|
||||||
symlink.unlink()
|
symlink.unlink()
|
||||||
except Exception:
|
except PeFile.AppNotInstalledError:
|
||||||
pass
|
pass
|
||||||
time.sleep(API_RATE_LIMIT)
|
time.sleep(API_RATE_LIMIT)
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user