Browse and play your games

This is the developer documentation for GNOME Games. If you're a regular user, see Games' main page for help.


  • List the available video games, whatever their format is (native, Wine, old system ROM, game package for a particular engine, web game...).
  • Display metadata for the games.
  • Download the required programs to run the available games.
  • Treat games as works of art instead of files or applications.
  • Implement GNOME 3's Finding and Reminding layout on games.


  • Integrate a game market, but we could ease integration of some external markets like Steam, GOG, Humble Store or
  • Being a controller manager: other projects exists for the GNOME Control Center and we should integrate with them.


Currently, there's different types of games playable with GNOME, and different ways of doing so:

  • native games can be launched via the Activities Overview, but you won't be able to display them by clicking on the "Games" category in GNOME Shell 3.8;
  • game packs poorly integrated to their native engine or to the desktop (Doom, LÖVE...);
  • emulated games, which need an emulator (such as MAME, Mednafen or DOSBox) to run;
  • Windows games, which need Wine - when they're willing to work with Wine;
  • Web games, which can be added to the Overview thanks to the Web Apps feature of Web, but still need a browser to work, if not a third-party plugin (like Flash or Unity).

Goals and scope

  • Making the most, if not all of an user's games available from one place;
  • Bringing a common interface to multiple emulators;
  • Keeping the actions needed between launching the app and launching a game to a minimum;
  • Needing as little configuration as possible.

Tentative Designs

Needs design

  • Non-searchable games and search folders integration ("+" button).
  • System preferences (the "gear" button).
  • The application menu.

Relevant Art

Relevant Art

  • GNOME Games: the games collection formerly packaged as gnome-games on several distros.

  • GNOME Video Arcade: project achieving some of our goals in a GNOME 2 style.

  • Gamepad settings: a project we should support and rely on.

  • Lutris: a similar open source project for Linux.

  • Phoenix: a similar open source project for Linux.

  • Libretro: an ecosystem mainly composed of game console emulator and game engine libraries sharing the same API.

  • DOSBox: a DOS emulator.

Design/Playground/Games (last edited 2020-03-28 16:15:10 by LaurentPointecouteau)