GameHub displays all your games in a single interface

Organized Games

Article from Issue 232/2020

If you regularly buy games through Steam, GOG, and Humble Bundle, GameHub can help you keep them organized by bringing them all together into a single library.

Most computer owners have long since stopped buying games in a cardboard box with floppy disks, CDs, or a DVD including a booklet and other goodies. Usually you log on to an online sales platform for games, such as Steam, acquire a license via the portal, and then download the game off the Internet. These portals are very popular, despite the drawbacks. For example, Steam has for years prevented honestly bought Steam games from being resold as used games, as you could do with a game purchased in a box – although that policy has recently been challenged in the EU [1].

Another disadvantage with purchasing games online is the difficulty of keeping track of all the titles in your collection. In addition to Steam [2], there is GOG (formerly Good Old Games) [3], and the Humble platform [4], which in the past has enjoyed massive success with cheap Humble Bundles advertised on social media channels. Both alternatives offer the advantage that, unlike Steam, they do without DRM measures. However, if you buy your games over the various platforms, you have to check in to the individual portals time and time again to install them.

One Front End for All

GameHub is open source software [5] that integrates the three large gaming portals in a single interface. You can also use it to organize manually installed games, as well as old Windows games that can be run in Wine (see the "Proton and Wine" box) and games designed for a variety of old platforms (see the "Emulators" box).

Proton and Wine

Wine, as well as the Valve-driven Proton fork of Wine, can also be used and installed directly via GameHub – at least on Ubuntu. The options can be found in Settings | Steam, where the program lists the available Proton versions. A click on Install then installs the desired variant. This option is not available on Arch Linux, but GameHub automatically detects the Wine and Proton libraries installed via the Steam client.

After completing these steps, you can also install and start "Windows-only" games via GameHub. The program changes the context menu from Execute to Execute with compatibility layer and then shows an additional dialog at startup (e.g., by setting the Proton version or environment variables). How well the desired game works with Wine or Proton does not depend on GameHub, but on the compatibility layer you use and on the Windows game itself.

You only need to install the proprietary client program for Steam; for GOG and Humble, you just need to enter your account data in GameHub. On Fedora and OpenMandriva, you can install directly from the package sources in the gamehub package. For openSUSE users, there is a package in the Open Build Service [6]. Users with Arch Linux can import the application from the AUR with a one-liner, assuming an AUR helper such as Pamac or Yay is available. For Ubuntu, you install via a PPA package source that offers packages for Ubuntu 16.04 to 19.10 (Listing 1).

Listing 1

Installing GameHub for Ubuntu

$ sudo add-apt-repository ppa:tkashkin/gamehub
$ sudo apt update
$ sudo apt install com.github.tkashkin.gamehub

After the installation, a new GameHub entry appears in the application menu of the desktop environment. When launched, the program first shows you a setup wizard, which you can use to set up your accounts for Steam, GOG, and Humble Bundle. For GOG and Humble, you just enter your password and email address; for Steam, the official client has to be installed on the system. For current editions of Ubuntu, for example, the Steam client can be installed directly using the package manager. The Ubuntu Software Center lists Steam as the Steam installer.

After installing Steam, GameHub automatically connects to the platform. However, to list the Steam games, you either have to publish your game list or create a Steam API key. To do this, click on Settings in GameHub and select Steam as the game source in the configuration. Pressing Generate Key opens the Steam client with the configuration dialog. Then transfer the key to the Steam API Key field and restart the GameHub program.

All Games at a Glance

GameHub now displays all games purchased via the three portals (Figure 1). However, the orange header still indicates that the program requires an API key for the Internet Game Database (IGDB) [7] for detailed information on the individual titles. This can be created quite easily and free of charge. Pressing the Settings button opens the Appearance tab in the GameHub configuration. When you get there the Generate key button in the IGDB section takes you to the portal website, where you may have to create an account. You can then copy and paste the key to GameHub and restart the program again.

Figure 1: GameHub integrates games from the major games platforms (Steam, GOG, and Humble, as well as manually installed games) in a clear-cut interface.


In addition to classic PC games, GameHub also integrates emulator games on request. The system uses RetroArch [8], a front end for numerous emulators from Amstrad CPC to classics like the C64 and the Nintendo 64 game console through to the ZX Spectrum. Alternatively, you can also set up your own emulators. The configurations are listed in Settings under RetroArch and Emulators.

Like almost all modern Gnome applications, GameHub moves the icons to the window bar. You can use the buttons to switch between a tile and a list view or filter the displayed games by platform and various tags. To the right of the application name, there is the possibility to manually enter games in GameHub, launch a search in the games on offer via a search field, and open the settings. You can change the installation paths, for example. By default, GameHub stores the downloaded data in ~/Games/_Collection/ (Figure 2) and the installed games in ~/Games/<Provider>/.

Figure 2: In the GameHub settings, you can define the installation paths for games on different platforms.

For titles from the Steam and GOG libraries, GameHub automatically loads matching images from the Internet; for Humble Bundle games, you only see an icon. However, a real image can be downloaded off the web. To do this, right-click on the desired title and open the Details of the game. A click on the download icon in the top right corner of the preview image opens a dialog that searches for suitable images on the Internet and then offers them for selection. Pressing the Install button lets you install the program on your computer (Figure 3).

Figure 3: A few mouse clicks are all it takes to install most titles.

Installation Pitfalls

Some games are easier to install than others. The easiest setup is installing Steam titles: All you have to do is click on the game and the Steam client will open and offer to install the selected game. Click on FINISH and the dialog closes, while Steam downloads the game off the web in the background and sets it up on your hard disk. If required, the Manage Downloads link opens the Steam client's download manager where you can track the progress. When the installation is complete, the game tile should lose its grey veil and report Installed. Click on the tile again to start the game. (If you like, you can use a gamepad for this and other processes within GameHub. See the "Control by Gamepad" box.)

Control by Gamepad

GameHub can be completely controlled by a gamepad if required. The program automatically detects compatible devices and integrates them into the program. The detected devices can be managed in the Settings below Controller. As soon as a gamepad is active, GameHub displays the key assignment (such as A for Select, B for Back, or X for the menu) in the window bar. In practice, however, the function was still a little shaky. On an Arch Linux system, the connected Logitech Wingman Rumblepad actually crashed the program. On a system with Ubuntu 19.04, GameHub was stable even with a gamepad, but GameHub only registered the signals from the analog sticks. All the keys remained inoperative.

Installing GOG games involves more work. A dialog appears here supporting installation in different languages depending on the title. A click on Install downloads the game from the portal archive and installs it on the hard disk using the installation routine integrated in the game. In our lab, this worked without any problems with all the titles tested. Like with Steam, you can call up the newly added game by clicking on the tile.

In contrast, complications regularly occurred with games from Humble Bundle. Even choosing the version of a game to install often caused trouble. If you use a distribution like Arch Linux, which is not based on RPM or DEB packages, the package formats are not available. A statically built variant as a tar.gz archive is not always available for 32- and 64-bit systems. So not every game can be installed easily via the GameHub interface.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Introduction

    This month in Linux Voice.

  • Lutris

    Gaming on Linux has traditionally involved a complex installation and configuration procedure, until now. Lutris lets you enjoy games from different worlds quickly in a unified interface.

  • Game Engines and Platforms

    New game engines and platforms usher in a whole new era for Linux gaming.

  • SteamOS

    Valve has big plans for SteamOS, the new Linux that will run on the first generation of Steam machine gaming consoles.

  • Lutris

    If you frequently play games on Linux, you are accustomed to dealing with many different installers and configurations. Lutris can help simplify the process of setting up all your games.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More