a-la-karte/docs/GAMECENTER.md

1.5 KiB

Gamecenter track (Launcher + Game Center)

Goal

The gamecenter track evolves A-La-Karte from “a launcher” into “a launcher + game center” suitable for a fully integrated, console-like experience on KDE.

Key ideas:

  • The UI becomes a client of background services.
  • Launching and monitoring games is handled by a daemon.
  • Runner resolution (Wine/Proton) is handled by a runner manager service.

Architecture (high level)

UI (A-La-Karte)

  • Displays the library and settings.
  • Requests launches via the Game Center daemon instead of launching processes directly.
  • Surfaces daemon/service errors to the user.

Game Center daemon

  • Manages game sessions (launch/stop, running state, concurrency policy).
  • Tracks/monitors sessions so Steam/Lutris URL-based launches can still be managed.
  • Intended to be activatable via DBus/systemd.

DBus service (planned/implemented on the gamecenter branch):

  • org.kde.GameCenter1

Runner manager daemon

  • Manages “runners” (e.g. Proton, Wine, GE builds):
    • install/uninstall
    • inventory listing
    • resolve launch specs deterministically
    • prefix lifecycle helpers

DBus service (planned/implemented on the gamecenter branch):

  • org.kde.ALaKarte.Runner1

Branches

  • master / legacy
    • Launcher-focused baseline.
  • gamecenter
    • Experimental daemon-based direction.

Status

This document is intentionally a living overview. Detailed API docs / roadmaps should live in separate documents as they solidify.