35 Commits
Author SHA1 Message Date
aydencharles ef90f9430f feat(notify): add a startup thanks toast 2026-10-02 18:24:10 +08:00
aydencharles dee1c1d523 feat(log): share the file sink and cap rotation from config 2026-10-02 16:40:23 +08:00
aydencharles 92b346566e feat(i18n): add remaining PS5 system language catalogs 2026-09-14 09:28:42 +08:00
aydencharles 3fedbf4a03 feat(rest-mode): restore resume delay after trophy SPRX 2026-09-11 22:12:41 +08:00
aydencharles 813e4c19b8 feat(overlay): add per-metric pages, order, and font size 2026-09-09 15:28:18 +08:00
aydencharles a25a0bf600 chore(settings): drop unused cheats.memory_backend 2026-09-04 16:15:56 +08:00
Hexwell e1cd1e6d3a refactor(dpi): move installer to external plugin 2026-09-03 14:41:00 +08:00
Hexwell c9a24f148b refactor: migrate ShadowMount+ to external plugin 2026-09-03 14:02:37 +08:00
Hexwell 33da7e3709 refactor(ftp): remove built-in FTP server 2026-09-02 22:38:47 +08:00
kvnhrt a534adcd60 feat: add ShadowMount+, DPI pkg-server + WebUI, fix PS4 FPS
- fix(fps): measure PS4 BC frame rate with a remote GNM detour
  and hide the pkg install result code in the finish notification
- feat(utils): integrate ShadowMount+ alongside the FTPSRV service
  for game scanning, mounting and installation
- feat(DPI): add the packet package server (pkgserver) with its
  Web UI and full REST/SSE API surface
- feat(tests): add new host test suites (multipart, builtin
  services, pkg XML, FPS formula, toolbox i18n/route, language)
- build: add Docker support for building and running the tests
- docs: update credits, README, architecture, util-arch, api and
  third-party documentation; add contributor credit and i18n keys
- i18n: remove the pkg finish result code from every locale
2026-08-31 05:26:42 -06:00
Hexwell 374013160b feat(overlay): add fan duty display to the game monitor bar 2026-08-31 10:25:30 +08:00
Hexwell b344e2d992 feat(overlay): add left/center/right metric align 2026-08-31 07:38:32 +08:00
Hexwell e049af1ce4 refactor(services): remove ShadowMountPlus and integrate ftpsrv source 2026-08-22 21:13:16 +08:00
Hexwell e22013992d fix(rest-mode): recover toolbox from SysCore EXEC not SIGCONT 2026-08-21 22:26:32 +08:00
Hexwell fddc9d4e3e feat(overlay): FPS on the monitor bar (#13) 2026-08-21 17:14:55 +08:00
Hexwell 40e2fab9b1 feat(plugins): split run/autoload and embed ShadowMountPlus 1.6beta16 2026-08-21 16:22:58 +08:00
Hexwell 2ab1ee50e8 fix(startup): default bundled payload autoloads off
Keep ftpsrv and ShadowMountPlus disabled when configuration is missing or predates these options. This avoids duplicate launches and conflicts with payloads users already autoload themselves, while preserving an explicit autoload=true opt-in.
2026-08-20 10:28:44 +08:00
Kevin Huerta b7fa1bd238 feat: add FTP, Docker, Remote Play, and ShadowMountPlus support (#23)
* feat: move FTP server to third_party and keep Docker

* docs: add ftpsrv to project credits

* feat: add FTP, Docker, and Remote Play support

* docs: document FTP and Remote Play

* feat: improve dependency scripts and add ShadowMountPlus

* docs: update ShadowMountPlus credits

* docs: add ShadowMountPlus config example

* i18n: normalize locale terminology and validation

* fix: launch ShadowMountPlus from memory
2026-08-20 10:10:32 +08:00
Hexwell 456c834f00 feat(cheats): add git catalog sync with host mirrors
Bring back DOWNLOAD_CHEATS as a background git clone/fetch of
cheat catalogs, then reuse flatten to install flat files.
Catalog identity and GitHub/cnb.cool mirrors stay in separate
modules so a new source does not rewrite the download pipeline.

auto mirror uses cnb.cool for zh-Hans and GitHub otherwise;
explicit github/cnb skips fallback. libgit2 is an optional
submodule (v1.8.4); without it the client stays a stub.
2026-08-18 12:00:16 +08:00
Hexwell e1eab5a908 fix(i18n): adapt Thai locale to account activation
Replace leftover Remote Play keys in th-TH.json with the account
catalog used on dev. Document th in the READMEs, example config,
generated config comment, and catalog filename map.
2026-08-17 22:25:14 +08:00
Hexwell c19d560d5e feat(i18n): add Italian, Russian, and Polish
Add key-complete catalogs and wire them through settings, Toolbox,
and notifications. Follow PS5 system languages 5, 8, and 16 when
toolbox.language is system. Existing locale ids stay unchanged.
2026-08-17 13:18:07 +08:00
Hexwell cd0c0450f0 feat(i18n): add Korean, Spanish, and Brazilian Portuguese
Add key-complete catalogs and wire them through settings, Toolbox,
and notifications. Follow PS5 system languages 9, 3/20, and 7/17
when toolbox.language is system. Existing locale ids stay unchanged.
2026-08-17 13:02:05 +08:00
Hexwell 58d6c4d5bb feat(i18n): add zh-Hant, Japanese, French, and German
Add key-complete catalogs and wire them through settings, Toolbox,
and notifications. Follow PS5 system languages 10, 0, 2/22, and 4
when toolbox.language is system. Existing zh-Hans, en, and ar ids
stay unchanged.
2026-08-17 12:46:48 +08:00
Hexwell 5c07eee777 feat(i18n): add a trial Arabic locale
Scan every locale JSON into N-column catalogs and wire ar through
settings, Toolbox, and PS5 system language 21. The Settings page
stays LTR; XOR trial banners stay bilingual.
2026-08-17 10:32:55 +08:00
Hexwell 3088689377 feat(shellui): add monitor bar background toggle 2026-08-17 09:12:34 +08:00
Hexwell a604646495 fix(kstuff): default autoload on in config
Read the Toolbox toggle from config.ini (default true) instead of the
no_kstuff sentinel so a fresh install loads kstuff. USB no_kstuff still
skips launch.
2026-08-16 20:59:55 +08:00
Hexwell 3275a4e244 feat(daemon): restore Home Menu startup option 2026-08-15 15:47:00 +08:00
Hexwell 07ed6d2339 feat(daemon): add event-driven app jailbreak listener 2026-08-06 19:30:48 +08:00
Hexwell 9a9c37e318 feat(logging): add runtime levels and log rotation 2026-08-06 18:12:52 +08:00
Hexwell 8207087b61 feat(shellui): add monitor bar visibility toggle 2026-08-06 16:15:48 +08:00
Hexwell d09a6dc9ac refactor(rest-mode): preserve services and games on entry 2026-07-30 23:20:32 +08:00
HexwellandClaude Fable 5 510106f2de feat(log): make the log level configurable from config.ini
Adds [logging] level to the shared config schema, applied on every settings
load — so BREW_RELOAD_SETTINGS re-applies it and a user can raise verbosity
for a bug report without a debug payload or a reboot.

libonion_settings stays independent of libonion_platform, so the level
constants exist in both. onion/log_settings.hpp is the single place that sees
both headers and static_asserts that they still agree; it also clamps a
request to what the build actually compiled in and reports the effective
level back, so asking for trace in a release build logs why it stayed at
info rather than silently ignoring the setting.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 20:44:37 +08:00
Hexwell 4c1dd66566 feat: make app jailbreak allowlist configurable
Move exact Title IDs and prefix matching into the shared config schema while retaining safe defaults for existing or invalid configurations.

Validate and deduplicate allowlist entries, support explicit none values, and update host tests and configuration documentation.
2026-07-22 16:12:02 +08:00
Hexwell 734e86ed29 feat: localize notification messages
Share the Toolbox language setting across bootstrapper, daemon, util, and ShellUI notifications. Localize both plain and icon-rich toast text with system-language fallback, and add host coverage for language resolution and rich payload formatting.
2026-07-20 17:25:29 +08:00
Hexwell 2582795f2a feat: add semantic config schema 2026-07-19 01:25:03 +08:00