Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
893b290a1e | ||
|
|
49769b7083 | ||
|
|
5fadaf8537 | ||
|
|
e804f8192e | ||
|
|
1311c53c3e | ||
|
|
6f69344a16 | ||
|
|
63951d76ac |
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
1
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -26,6 +26,7 @@ If applicable, add screenshots to help explain your problem.
|
||||
**System (please complete the following information):**
|
||||
- OS: [e.g. Fedora Linux]
|
||||
- Installation method [e.g. Flatpak]
|
||||
- Cartridges version [e.g. 1.5.4]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
|
||||
@@ -44,11 +44,10 @@
|
||||
</screenshots>
|
||||
<content_rating type="oars-1.1" />
|
||||
<releases>
|
||||
<release version="1.5.3" date="2023-05-27">
|
||||
<release version="1.5.5" date="2023-06-10">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Fixes a bug with custom install locations</li>
|
||||
<li>Translations since 1.5</li>
|
||||
<li>Fixes an issue with Bottles' custom Bottles directory feature</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
project('cartridges',
|
||||
version: '1.5.3',
|
||||
version: '1.5.5',
|
||||
meson_version: '>= 0.59.0',
|
||||
default_options: [ 'warning_level=2', 'werror=false', ],
|
||||
)
|
||||
|
||||
1
src/__builtins__.pyi
Normal file
1
src/__builtins__.pyi
Normal file
@@ -0,0 +1 @@
|
||||
def _(_msg: str, /) -> str: ...
|
||||
@@ -34,6 +34,7 @@ def bottles_installed(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||
Path.home() / ".var/app/com.usebottles.bottles/data/bottles",
|
||||
shared.data_dir / "bottles",
|
||||
)
|
||||
@@ -82,15 +83,25 @@ def bottles_importer():
|
||||
values["added"] = current_time
|
||||
values["last_played"] = 0
|
||||
|
||||
importer.save_game(
|
||||
values,
|
||||
(
|
||||
bottles_dir
|
||||
/ "bottles"
|
||||
# This will not work if both Cartridges and Bottles are installed via Flatpak
|
||||
# as Cartridges can't access directories picked via Bottles' file picker portal
|
||||
try:
|
||||
bottles_location = Path(
|
||||
yaml.safe_load((bottles_dir / "data.yml").read_text("utf-8"))[
|
||||
"custom_bottles_path"
|
||||
]
|
||||
)
|
||||
except (FileNotFoundError, KeyError):
|
||||
bottles_location = bottles_dir / "bottles"
|
||||
|
||||
grid_path = (
|
||||
bottles_location
|
||||
/ game["bottle"]["path"]
|
||||
/ "grids"
|
||||
/ game["thumbnail"].split(":")[1]
|
||||
)
|
||||
if game["thumbnail"]
|
||||
else None,
|
||||
|
||||
importer.save_game(
|
||||
values,
|
||||
grid_path if game["thumbnail"] and grid_path.is_file() else None,
|
||||
)
|
||||
|
||||
@@ -35,6 +35,7 @@ def heroic_installed(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||
Path.home() / ".var/app/com.heroicgameslauncher.hgl/config/heroic",
|
||||
shared.config_dir / "heroic",
|
||||
)
|
||||
|
||||
@@ -129,6 +129,7 @@ def itch_installed(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||
Path.home() / ".var/app/io.itch.itch/config/itch",
|
||||
shared.config_dir / "itch",
|
||||
)
|
||||
|
||||
@@ -34,6 +34,7 @@ def lutris_installed(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||
Path.home() / ".var/app/net.lutris.Lutris/data/lutris",
|
||||
shared.data_dir / "lutris",
|
||||
)
|
||||
@@ -52,6 +53,7 @@ def lutris_cache_exists(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
Path(shared.schema.get_string(cache_key)).expanduser(),
|
||||
Path.home() / ".var" / "app" / "net.lutris.Lutris" / "cache" / "lutris",
|
||||
shared.cache_dir / "lutris",
|
||||
)
|
||||
|
||||
@@ -38,7 +38,7 @@ def update_values_from_data(content, values):
|
||||
if data.get("developers"):
|
||||
values["developer"] = ", ".join(data["developers"])
|
||||
|
||||
if data.get("type") != "game":
|
||||
if data.get("type") not in {"game", "demo"}:
|
||||
values["blacklisted"] = True
|
||||
|
||||
return values
|
||||
@@ -126,7 +126,6 @@ def get_games_async(appmanifests, steam_dir, importer):
|
||||
|
||||
def steam_installed(path=None):
|
||||
location_key = "steam-location"
|
||||
steam_dir = Path(shared.schema.get_string(location_key)).expanduser()
|
||||
check = "steamapps"
|
||||
|
||||
subdirs = ("steam", "Steam")
|
||||
@@ -134,7 +133,7 @@ def steam_installed(path=None):
|
||||
(path,)
|
||||
if path
|
||||
else (
|
||||
steam_dir,
|
||||
Path(shared.schema.get_string(location_key)).expanduser(),
|
||||
Path.home() / ".steam",
|
||||
shared.data_dir / "Steam",
|
||||
Path.home() / ".var/app/com.valvesoftware.Steam/data/Steam",
|
||||
@@ -165,13 +164,12 @@ def steam_importer():
|
||||
steam_dirs = [steam_dir]
|
||||
|
||||
for directory in steam_dirs:
|
||||
if not (directory / "steamapps").is_dir():
|
||||
steam_dirs.remove(directory)
|
||||
|
||||
for directory in steam_dirs:
|
||||
try:
|
||||
for open_file in (directory / "steamapps").iterdir():
|
||||
if open_file.is_file() and "appmanifest" in open_file.name:
|
||||
appmanifests.append(open_file)
|
||||
except FileNotFoundError:
|
||||
continue
|
||||
|
||||
importer = shared.importer
|
||||
importer.total_queue += len(appmanifests)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#define MyAppName "Cartridges"
|
||||
#define MyAppVersion "1.5.3"
|
||||
#define MyAppVersion "1.5.5"
|
||||
#define MyAppPublisher "kramo"
|
||||
#define MyAppURL "https://github.com/kra-mo/cartridges"
|
||||
#define MyAppExeName "pythonw.exe"
|
||||
|
||||
Reference in New Issue
Block a user