Games that no store plugin lists still sit in the app menu: distro
packages, Flatpaks, hand-written launchers. This source reads every
`.desktop` file whose Categories say Game, in XDG precedence order, so
a user-level NoDisplay copy hides the system one exactly as the menu
does. Launchers this library already covers, plus the shortcuts they
write for their own games, are skipped so a title is never listed twice.
Entries publish `launch: {kind: "plugin"}` and no command. The host
asks back at launch time; the answer is the Exec line with its field
codes stripped, or `flatpak run <app-id>`, resolved against a fresh
scan so a forged id answers 404. The command is the game, so no detect
hint is needed.
Needs plugin-kit 0.4.5 for the `launch` field. The lockfile is not
committed until that version is published.