FS#75906 - [kodi-addon-game-libretro-snes9x] missing controller error

Attached to Project: Community Packages
Opened by zkrx (wkchu) - Wednesday, 14 September 2022, 11:38 GMT
Last edited by Ike Devolder (BlackEagle) - Monday, 06 February 2023, 11:12 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Ike Devolder (BlackEagle)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Hello,

From a clean Arch Linux install, I installed this add-on, and the IAGL (from a separate Kodi repository) to launch games. Games won't start with an error about missing controller.

This package seems to miss the following dependencies that I had to install by hand inside of Kodi in order to solve the issue:

In the official repository, under Add-ons / Controller profiles:
SNES Mouse
Super Multitap
Super Scope
Konami Justifier (SNES)

Only "SNES Controller" was already installed.

Cheers
This task depends upon

Closed by  Ike Devolder (BlackEagle)
Monday, 06 February 2023, 11:12 GMT
Reason for closing:  Won't fix
Additional comments about closing:  dropped kodi-addon-game-libretro to AUR
Comment by Toolybird (Toolybird) - Wednesday, 14 September 2022, 23:01 GMT
> and the IAGL (from a separate Kodi repository)

So, third party stuff is out of scope. How do you propose Arch resolve this issue from a packaging point of view?

> won't start with an error about missing controller

It's best to post exact error messages.
Comment by zkrx (wkchu) - Thursday, 15 September 2022, 11:13 GMT
Hi Toolybird,

Sorry about the quick initial report (and the missing title that I could not edit).

Let's keep the IAGL out of the equation as it is merely a launcher and should have nothing to do with this issue (I do not know how to launch games from Kodi otherwise).

The kodi-game/game.libretro.snes9x/ add-on (which is installed by this package) depends (see [1]) on the following add-ons which are also part of the official kodi repository:

```
<requires>
<import addon="game.libretro" version="1.0.0"/>
<import addon="game.controller.snes" version="1.0.0"/>
<import addon="game.controller.snes.mouse" version="1.0.0"/>
<import addon="game.controller.snes.multitap" version="1.0.0"/>
<import addon="game.controller.snes.super.scope" version="1.0.0"/>
<import addon="game.controller.konami.justifier.snes" version="1.0.0"/>
</requires>
```

It seems that game.controller.snes was automatically pulled when installing kodi-addon-game-libretro-snes9x. My understanding is that we should package these controller add-ons and add them as dependencies to the present package, otherwise this SNES add-on cannot work and fails with the following error message:

```
Add-on is incompatible due to unmet dependencies.

Missing: game.controller.snes.mouse,
game.controller.snes.multitap,
game.controller.snes.super.scope,
game.controller.konami.justifier.snes
```

Note that I encountered this issue with at least one other emulator as well. I guess that more or less all packaged emulators are impacted in the same way.

To solve this, the simpler approach would be to add a "kodi-addon-game-libretro-controllers" package that would install all available controllers from the Kodi repository. An alternative would be to document this in the Wiki and have users install these manually (which I did, although it was tedious given their number).

Note that I am not well-versed in the Kodi ecosystem and this is my first time playing with libretro.

[1] https://github.com/kodi-game/game.libretro.snes9x/blob/master/game.libretro.snes9x/addon.xml.in

Loading...