Skip to content

Knulli native integration: cached-ids export, batch cache CLI, service-aware menu#46

Merged
misantronic merged 1 commit into
mainfrom
knulli-native-integration
Jul 14, 2026
Merged

Knulli native integration: cached-ids export, batch cache CLI, service-aware menu#46
misantronic merged 1 commit into
mainfrom
knulli-native-integration

Conversation

@misantronic

@misantronic misantronic commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Linux-side changes for the Knulli native integration (companion to knulli-cfw/knulli-linux#94 and knulli-cfw/batocera-emulationstation#126).

Changes

  • es_export.py: export cached RA game ids to cached_game_ids.txt on every cache mutation (hooked centrally in Storage); read by the EmulationStation integration for the offline icons
  • New CLI: cache-roms --paths-file (batch caching with progress output for the ES gamelist action) and export-cached-ids
  • knulli_service.py + menu: when the Knulli service is installed, the SDL menu hides Start/Stop, autostart and Uninstall (single control point: ES Services toggle) and shows "KNULLI SERVICE" status; unchanged behavior on muOS/Onion or without the service
  • linux/knulli/integration/: dev kit used for on-device testing (service file, configgen patcher with revert, ES deploy scripts)

Fixes

  • retroarch_cfg.py: upsert regex could swallow the following config line when a value was empty (\s* matches newlines) — corrupted retroarch.cfg; orphan "" lines are now also self-healed
  • batocera_conf.py: revert no longer touches global.retroachievements — the proxy may enable the master toggle but never disables it

Tested on RG40XX-H (h700); tag knulli-native-preview-1 was built from this branch.

@misantronic
misantronic merged commit 7f6b4a5 into main Jul 14, 2026
@misantronic
misantronic deleted the knulli-native-integration branch July 14, 2026 18:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant