spleen1981 / retroarch-kodi-addon-CoreELEC

RetroArch KODI add-on for CoreELEC
51 stars 5 forks source link

RetroArch Kodi add-on for CoreELEC

This script creates a RetroArch add-on for Kodi from Lakka sources for CoreELEC (Amlogic-ng devices).

Resulting builds have been tested on following ARM devices:

with CoreELEC 19 and 20 versions.

Add-on usage

Core list included by default is same as Lakka.

Settings/features

Folders

Resources

The addon uses an internal resources folder as well as one external local folder /storage/.config/retroarch. Internal folder will be wiped on addon removal/update.

/storage/.config/retroarch should include the retroarch.cfg main configuration file and following subfolders. If not there, empty folders and default retroarch.cfg will be created automatically.

The internal resources folder includes:

Depending on build configuration (not by default) also the following may be included in the internal folder, with the content from relevant repositories:

In case same subfolder is present both in external and internal resource folders, external will be used and internal content will be merged as needed.

Roms

Default ROM folder is /storage/roms. This folder can be mapped to a remote location using addon settings.

Cores

Cores are stored in lib/libretro internal subfolder (removed on addon removal).

Other folders

Screenshots are stored in /storage/screenshots.

Development and build script usage

Lakka repository is included as a submodule by default. To build the addon with default settings type the following:

git clone --recursive https://github.com/spleen1981/retroarch-kodi-addon-CoreELEC
cd retroarch-kodi-addon-CoreELEC
./build.sh

Extra dowloadable contents as retroarch-assets retroarch-joypad-autoconfig retroarch-overlays libretro-database glsl-shaders are not included by default to reduce addon size, but can be included setting INCLUDE_DLC="Y"(or can be downloaded from RetroArch online updater otherwise).

Default core list can be customized setting LIBRERETRO_CORES_ADD and LIBRERETRO_CORES_RM variables.

Refer to the script source for all other configuration parameters.

First time the building/compiling process will take a lot of time (the whole toolchain will be compiled with the first package).

Addon zip file will be placed in build subfolder.

Adding new translations

New languages for the addon frontend can be added by modifying this file.

The new language code is to be added in the following variable, separated by space (adding italian language in the following examples, coded it_it):

LANG_list="en_gb it_it"

and the new translations for each string are to be added as follows, as per existing structure:

LANG_32001_en_gb="Stop Kodi service before launching RetroArch"
LANG_32001_it_it="Ferma il servizio Kodi prima di lanciare RetroArch"

All language files needed by Kodi will be generated at build time.

Credits

Thanks to Lakka and CoreELEC for their work.

Also thanks to ToKe79 - This work has been developed starting from his.