mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-20 18:59:07 -05:00
fix: give EmuDeck its RetroArch cores' files
The scraper skipped RetroArch's own EmuScripts installer, so no libretro core's files reached the EmuDeck pack: np2kai, neocd and every core checkBIOS.sh does not name. RetroArch now stays in the list, as in RetroPie's.
This commit is contained in:
1 parent
ac58bf68d4
commit
a913fbf539
3 files changed
+31
-10
No files matched your search
@@ -24,6 +24,7 @@ cores:
|
||||
- pcsx2
|
||||
- ppsspp
|
||||
- primehack
|
||||
- retroarch
|
||||
- rpcs3
|
||||
- ryujinx
|
||||
- scummvm
|
||||
|
||||
@@ -440,13 +440,16 @@ class Scraper(BaseScraper):
|
||||
"base_destination": "bios",
|
||||
"hash_type": "md5",
|
||||
"verification_mode": "md5",
|
||||
# RetroArch is one of them: its cores read the same bios folder,
|
||||
# and naming it makes the pack carry every libretro core's files,
|
||||
# as RetroPie's list does. Without it np2kai, neocd and the other
|
||||
# cores EmuDeck installs got nothing checkBIOS.sh does not name.
|
||||
"cores": cores,
|
||||
# Every EmuScripts installer sets up a standalone app (RetroArch's
|
||||
# cores come from its own script, skipped above): Dolphin, Cemu,
|
||||
# xemu, ARMSX2 and Supermodel ran with the libretro layout and
|
||||
# lost their standalone-only files. A profile with no standalone
|
||||
# build keeps its layout (runs_standalone).
|
||||
"standalone_cores": list(cores),
|
||||
# Every other EmuScripts installer sets up a standalone app:
|
||||
# Dolphin, Cemu, xemu, ARMSX2 and Supermodel ran with the libretro
|
||||
# layout and lost their standalone-only files. A profile with no
|
||||
# standalone build keeps its layout (runs_standalone).
|
||||
"standalone_cores": [core for core in cores if core != "retroarch"],
|
||||
"systems": systems,
|
||||
}
|
||||
|
||||
@@ -467,7 +470,8 @@ class Scraper(BaseScraper):
|
||||
"cemuproton": "cemu",
|
||||
"rmg": "mupen64plus_next",
|
||||
}
|
||||
skip = {"retroarch_maincfg", "retroarch"}
|
||||
# The main RetroArch config script installs no emulator.
|
||||
skip = {"retroarch_maincfg"}
|
||||
|
||||
try:
|
||||
req = urllib.request.Request(api_url, headers=github_headers())
|
||||
|
||||
@@ -4272,14 +4272,30 @@ class EmuDeckRunsItsEmulatorsStandalone(unittest.TestCase):
|
||||
from scripts.common import load_platform_config, runs_standalone, load_emulator_profiles
|
||||
|
||||
config = load_platform_config("emudeck", str(ROOT / "platforms"))
|
||||
self.assertEqual(sorted(config["standalone_cores"]), sorted(config["cores"]))
|
||||
self.assertEqual(
|
||||
sorted(config["standalone_cores"]),
|
||||
sorted(c for c in config["cores"] if c != "retroarch"),
|
||||
)
|
||||
profiles = load_emulator_profiles(str(ROOT / "emulators"))
|
||||
standalone = set(config["standalone_cores"])
|
||||
for name in ("dolphin", "cemu", "armsx2", "supermodel"):
|
||||
with self.subTest(emulator=name):
|
||||
self.assertTrue(runs_standalone(name, profiles[name], standalone))
|
||||
source = (ROOT / "scripts" / "scraper" / "emudeck_scraper.py").read_text()
|
||||
self.assertIn('"standalone_cores": list(cores)', source)
|
||||
|
||||
def test_retroarch_brings_its_libretro_cores(self):
|
||||
"""The scraper dropped RetroArch's own script: np2kai, neocd and
|
||||
every core EmuDeck installs through RetroArch got no file that
|
||||
checkBIOS.sh does not name."""
|
||||
from scripts.common import (
|
||||
load_emulator_profiles, load_platform_config, resolve_platform_cores,
|
||||
)
|
||||
|
||||
config = load_platform_config("emudeck", str(ROOT / "platforms"))
|
||||
self.assertIn("retroarch", config["cores"])
|
||||
cores = resolve_platform_cores(config, load_emulator_profiles(str(ROOT / "emulators")))
|
||||
for name in ("np2kai", "neocd", "dolphin"):
|
||||
with self.subTest(core=name):
|
||||
self.assertIn(name, cores)
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user