From 9b537492c01e210d5b7edfebf6433b5460fb84d0 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Wed, 18 Mar 2026 16:06:56 +0100 Subject: [PATCH] feat: scraper injects data_directories refs into retroarch.yml --- data/.gitignore | 1 - platforms/retroarch.yml | 11 +++++++++++ scripts/scraper/libretro_scraper.py | 18 ++++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) delete mode 100644 data/.gitignore diff --git a/data/.gitignore b/data/.gitignore deleted file mode 100644 index e83eaf0a..00000000 --- a/data/.gitignore +++ /dev/null @@ -1 +0,0 @@ -.versions.json diff --git a/platforms/retroarch.yml b/platforms/retroarch.yml index 18416ef5..9320fcf4 100644 --- a/platforms/retroarch.yml +++ b/platforms/retroarch.yml @@ -925,6 +925,11 @@ systems: manufacturer: Spectravideo|Philips|Al Alamiah|Sony|Sanyo|Mitsubishi|Toshiba|Hitachi|Panasonic|Canon|Casio|Pioneer|Fujitsu|Yamaha|JVC|Kyocera|GoldStar|Samsung|Daewoo|Gradiente|Sharp|Talent|NTT|ACVS/CIEL|DDX|AGE Labs docs: https://docs.libretro.com/library/bluemsx/ + data_directories: + - ref: bluemsx-databases + destination: Databases + - ref: bluemsx-machines + destination: Machines nec-pc-engine: files: - name: gecard.pce @@ -1262,6 +1267,9 @@ systems: core: dolphin manufacturer: Nintendo docs: https://docs.libretro.com/library/dolphin/ + data_directories: + - ref: dolphin-sys + destination: dolphin-emu/Sys nintendo-64dd: files: - name: 64DD_IPL.bin @@ -3021,6 +3029,9 @@ systems: core: ppsspp manufacturer: Sony docs: https://docs.libretro.com/library/ppsspp/ + data_directories: + - ref: ppsspp-assets + destination: PPSSPP ti-83: files: - name: ti83se.rom diff --git a/scripts/scraper/libretro_scraper.py b/scripts/scraper/libretro_scraper.py index 0a24512a..628fd64f 100644 --- a/scripts/scraper/libretro_scraper.py +++ b/scripts/scraper/libretro_scraper.py @@ -407,6 +407,24 @@ class Scraper(BaseScraper): g for g in groups if g not in systems[sys_id].get("includes", []) ) + # Data directories: full core data folders included in packs. + # ref: each entry cites the core source code requiring the directory. + SYSTEM_DATA_DIRS = { + "nintendo-gamecube": [ + {"ref": "dolphin-sys", "destination": "dolphin-emu/Sys"}, + ], + "sony-psp": [ + {"ref": "ppsspp-assets", "destination": "PPSSPP"}, + ], + "microsoft-msx": [ + {"ref": "bluemsx-databases", "destination": "Databases"}, + {"ref": "bluemsx-machines", "destination": "Machines"}, + ], + } + for sys_id, data_dirs in SYSTEM_DATA_DIRS.items(): + if sys_id in systems: + systems[sys_id]["data_directories"] = data_dirs + return { "platform": "RetroArch", "version": metadata["retroarch_version"] or "",