Add Appstream metadata and .libretro file for GNOME Games integration

Bug #1812498 reported by Jeremy Bícha
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
genesisplusgx (Ubuntu)
Fix Released
Medium
Unassigned
Bionic
In Progress
Medium
Unassigned
Cosmic
In Progress
Medium
Unassigned

Bug Description

Impact
======
Various Sega (Genesis, GameGear, and others) games can't be played in the GNOME Games app without a .libretro metadata file.

By adding Appstream addon metadata, we can also make it easy for users to install this addon. All they have to do is open the GNOME Games page in the GNOME Software app and check the box for the addon they want.

The GNOME Games app isn't included in Ubuntu 16.04 LTS so this SRU is only for 18.04 LTS and 18.10.

Test Case 1
===========
0. You'll need to have multiverse enabled (this is the default in Ubuntu installs.)
1. Enable -proposed updates.
2. Wait a day or so after the package has built so that Appstream metadata is updated.
3. Run these commands:
sudo apt update
pkill gnome-software
gnome-software --details-pkg=gnome-games-app

The GNOME Software app will take a few moments to start this way.
Scroll down to the Add-ons section. There should be a "Genesis Plus GX" add-on. Check the box to install it.

Test Case 2
===========
Verify that all 3 files are installed:
/usr/lib/x86_64-linux-gnu/libretro/genesis_plus_gx.libretro
/usr/lib/x86_64-linux-gnu/libretro/genesis_plus_gx_libretro.so
/usr/share/metainfo/libretro-genesisplusgx.metainfo.xml

Optional Test Case 3
====================
Visit
https://gitlab.gnome.org/aplazas/retro-test-data/tree/master/testsuite240p

Download the Genesis zip
Save the contained file named 240pTestSuite-v15.bin to the root of your home directory.
Rename the .bin file extension to .gen

Open GNOME Games. You should be able to run the test file. (It may help to switch to the Platforms screen and click Sega Genesis if you have many games installed.)

Note that GNOME Games requires tracker to be installed. You must log out and log back in after installing tracker if it was not already installed.

Regression Potential
====================
This adds 2 metadata files. We also convert the install file to use dh-exec which is why the second test case verifies the install of *3* files instead of just 2.

dh-exec
=======
The debian/*install files use an unusual shell script style instead of the much more common dh-exec.

I briefly talked to the Debian maintainer about this issue in 2017. He said he moved from dh-exec to sh because a Debian maintainer advised him to.

I am switching from sh to dh-exec because it's what I did in Ubuntu 19.04 and because my opinion is that the dh-exec style is easier to read and understand so we are less likely to make a mistake.

https://codesearch.debian.net/search?q=path%3Adebian%2F.*%5C.install+MULTIARCH&perpkg=1
https://codesearch.debian.net/search?q=path%3Adebian%2F.*%5C.install+%23%5C%21%2Fbin%2Fsh&perpkg=1

Tags: bionic cosmic
Jeremy Bícha (jbicha)
Changed in genesisplusgx (Ubuntu Bionic):
importance: Undecided → Medium
status: New → In Progress
Changed in genesisplusgx (Ubuntu Cosmic):
importance: Undecided → Medium
status: New → In Progress
mikesch (mikeschi)
summary: - Add Appstream metadata and .libretro file for GNOME Games integration
+ Add Appstream metadata and .libretro file for GNOME Games integration
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.