Merge pull request #127 from kra-mo/sources-paths-fix
Sources paths fix
This commit is contained in:
@@ -86,13 +86,14 @@ class BottlesSource(URLExecutableSource):
|
||||
name = "Bottles"
|
||||
iterator_class = BottlesSourceIterator
|
||||
url_format = 'bottles:run/"{bottle_name}"/"{game_name}"'
|
||||
available_on = set(("linux",))
|
||||
available_on = {"linux"}
|
||||
|
||||
data_location = Location(
|
||||
schema_key="bottles-location",
|
||||
candidates=(
|
||||
"~/.var/app/com.usebottles.bottles/data/bottles/",
|
||||
shared.flatpak_dir / "com.usebottles.bottles" / "data" / "bottles",
|
||||
shared.data_dir / "bottles/",
|
||||
shared.home / ".local" / "share" / "bottles",
|
||||
),
|
||||
paths={
|
||||
"library.yml": (False, "library.yml"),
|
||||
|
||||
@@ -116,7 +116,7 @@ class FlatpakSource(Source):
|
||||
name = "Flatpak"
|
||||
iterator_class = FlatpakSourceIterator
|
||||
executable_format = "flatpak run {flatpak_id}"
|
||||
available_on = set(("linux",))
|
||||
available_on = {"linux"}
|
||||
|
||||
data_location = Location(
|
||||
schema_key="flatpak-location",
|
||||
|
||||
@@ -137,13 +137,14 @@ class HeroicSource(URLExecutableSource):
|
||||
name = "Heroic"
|
||||
iterator_class = HeroicSourceIterator
|
||||
url_format = "heroic://launch/{app_name}"
|
||||
available_on = set(("linux", "win32"))
|
||||
available_on = {"linux", "win32"}
|
||||
|
||||
config_location = Location(
|
||||
schema_key="heroic-location",
|
||||
candidates=(
|
||||
"~/.var/app/com.heroicgameslauncher.hgl/config/heroic/",
|
||||
shared.flatpak_dir / "com.heroicgameslauncher.hgl" / "config" / "heroic",
|
||||
shared.config_dir / "heroic",
|
||||
shared.home / ".config" / "heroic",
|
||||
shared.appdata_dir / "heroic",
|
||||
),
|
||||
paths={
|
||||
|
||||
@@ -82,13 +82,14 @@ class ItchSource(URLExecutableSource):
|
||||
name = "Itch"
|
||||
iterator_class = ItchSourceIterator
|
||||
url_format = "itch://caves/{cave_id}/launch"
|
||||
available_on = set(("linux", "win32"))
|
||||
available_on = {"linux", "win32"}
|
||||
|
||||
config_location = Location(
|
||||
schema_key="itch-location",
|
||||
candidates=(
|
||||
"~/.var/app/io.itch.itch/config/itch/",
|
||||
shared.flatpak_dir / "io.itch.itch" / "config" / "itch",
|
||||
shared.config_dir / "itch",
|
||||
shared.home / ".config" / "itch",
|
||||
shared.appdata_dir / "itch",
|
||||
),
|
||||
paths={"butler.db": (False, "db/butler.db")},
|
||||
|
||||
@@ -92,12 +92,15 @@ class LegendarySourceIterator(SourceIterator):
|
||||
class LegendarySource(Source):
|
||||
name = "Legendary"
|
||||
executable_format = "legendary launch {app_name}"
|
||||
available_on = set(("linux", "win32"))
|
||||
available_on = {"linux", "win32"}
|
||||
|
||||
iterator_class = LegendarySourceIterator
|
||||
config_location: Location = Location(
|
||||
schema_key="legendary-location",
|
||||
candidates=(shared.config_dir / "legendary",),
|
||||
candidates=(
|
||||
shared.config_dir / "legendary",
|
||||
shared.home / ".config" / "legendary",
|
||||
),
|
||||
paths={
|
||||
"installed.json": (False, "installed.json"),
|
||||
"metadata": (True, "metadata"),
|
||||
|
||||
@@ -93,15 +93,16 @@ class LutrisSource(URLExecutableSource):
|
||||
name = "Lutris"
|
||||
iterator_class = LutrisSourceIterator
|
||||
url_format = "lutris:rungameid/{game_id}"
|
||||
available_on = set(("linux",))
|
||||
available_on = {"linux"}
|
||||
|
||||
# FIXME possible bug: location picks ~/.var... and cache_lcoation picks ~/.local...
|
||||
|
||||
data_location = Location(
|
||||
schema_key="lutris-location",
|
||||
candidates=(
|
||||
"~/.var/app/net.lutris.Lutris/data/lutris/",
|
||||
shared.flatpak_dir / "net.lutris.Lutris" / "data" / "lutris",
|
||||
shared.data_dir / "lutris",
|
||||
shared.home / ".local" / "share" / "lutris",
|
||||
),
|
||||
paths={
|
||||
"pga.db": (False, "pga.db"),
|
||||
@@ -111,8 +112,9 @@ class LutrisSource(URLExecutableSource):
|
||||
cache_location = Location(
|
||||
schema_key="lutris-cache-location",
|
||||
candidates=(
|
||||
"~/.var/app/net.lutris.Lutris/cache/lutris/",
|
||||
shared.flatpak_dir / "net.lutris.Lutris" / "cache" / "lutris",
|
||||
shared.cache_dir / "lutris",
|
||||
shared.home / ".cache" / "lutris",
|
||||
),
|
||||
paths={
|
||||
"coverart": (True, "coverart"),
|
||||
|
||||
@@ -111,16 +111,16 @@ class SteamSourceIterator(SourceIterator):
|
||||
|
||||
class SteamSource(URLExecutableSource):
|
||||
name = "Steam"
|
||||
available_on = set(("linux", "win32"))
|
||||
available_on = {"linux", "win32"}
|
||||
iterator_class = SteamSourceIterator
|
||||
url_format = "steam://rungameid/{game_id}"
|
||||
|
||||
data_location = Location(
|
||||
schema_key="steam-location",
|
||||
candidates=(
|
||||
"~/.var/app/com.valvesoftware.Steam/data/Steam/",
|
||||
shared.flatpak_dir / "com.valvesoftware.Steam" / "data" / "Steam",
|
||||
shared.data_dir / "Steam",
|
||||
"~/.steam",
|
||||
shared.home / ".steam",
|
||||
shared.programfiles32_dir / "Steam",
|
||||
),
|
||||
paths={
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
from gi.repository import Gdk, Gio
|
||||
from gi.repository import Gdk, Gio, GLib
|
||||
|
||||
APP_ID = "@APP_ID@"
|
||||
VERSION = "@VERSION@"
|
||||
@@ -31,21 +31,11 @@ SPEC_VERSION = 1.5 # The version of the game_id.json spec
|
||||
schema = Gio.Settings.new(APP_ID)
|
||||
state_schema = Gio.Settings.new(APP_ID + ".State")
|
||||
|
||||
data_dir = (
|
||||
Path(os.getenv("XDG_DATA_HOME"))
|
||||
if "XDG_DATA_HOME" in os.environ
|
||||
else Path.home() / ".local" / "share"
|
||||
)
|
||||
config_dir = (
|
||||
Path(os.getenv("XDG_CONFIG_HOME"))
|
||||
if "XDG_CONFIG_HOME" in os.environ
|
||||
else Path.home() / ".config"
|
||||
)
|
||||
cache_dir = (
|
||||
Path(os.getenv("XDG_CACHE_HOME"))
|
||||
if "XDG_CACHE_HOME" in os.environ
|
||||
else Path.home() / ".cache"
|
||||
)
|
||||
home = Path.home()
|
||||
data_dir = Path(GLib.get_user_data_dir())
|
||||
config_dir = Path(GLib.get_user_config_dir())
|
||||
cache_dir = Path(GLib.get_user_config_dir())
|
||||
flatpak_dir = home / ".var" / "app"
|
||||
|
||||
games_dir = data_dir / "cartridges" / "games"
|
||||
covers_dir = data_dir / "cartridges" / "covers"
|
||||
|
||||
Reference in New Issue
Block a user