Suport de repos privats: token de Gitea global configurable des del menú

This commit is contained in:
2026-05-29 22:30:11 +02:00
parent bfa01f31e3
commit 667eade660
4 changed files with 79 additions and 25 deletions
+6 -4
View File
@@ -25,16 +25,17 @@ class _Signals(QObject):
class DownloadWorker(QRunnable):
"""Clona o actualiza (forzado) y refresca la metadata de un juego."""
def __init__(self, root: Path, game: Game) -> None:
def __init__(self, root: Path, game: Game, token: str = "") -> None:
super().__init__()
self.root = root
self.game = game
self.token = token
self.signals = _Signals()
def run(self) -> None: # noqa: D401 - API de QRunnable
try:
meta: GameMeta = gitops.download(
self.root, self.game, log=self.signals.log.emit
self.root, self.game, log=self.signals.log.emit, token=self.token
)
except Exception as exc: # noqa: BLE001 - reportar a la UI
self.signals.error.emit(str(exc))
@@ -66,10 +67,11 @@ class CheckUpdatesWorker(QRunnable):
Emite `result(game_id, has_update)` por cada juego instalado y `finished` al final.
"""
def __init__(self, root: Path, games: list[Game]) -> None:
def __init__(self, root: Path, games: list[Game], token: str = "") -> None:
super().__init__()
self.root = root
self.games = games
self.token = token
self.signals = _Signals()
def run(self) -> None: # noqa: D401 - API de QRunnable
@@ -79,7 +81,7 @@ class CheckUpdatesWorker(QRunnable):
continue
try:
has_update = gitops.check_update(
self.root, game, log=self.signals.log.emit
self.root, game, log=self.signals.log.emit, token=self.token
)
except Exception as exc: # noqa: BLE001 - no abortar el resto
self.signals.log.emit(f"check {game.id}: {exc}")