Commit Graph
36 Commits
Author SHA1 Message Date
aydencharles df2622cd67 feat(sprx): add catalog management controls 2026-09-04 14:40:11 +08:00
aydencharles 127748afc6 feat(plugins): embed settings links and manage autostart per plugin 2026-09-03 16:55:39 +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
Hexwell 0e276281fd feat(plugin): add external ELF plugin management 2026-09-02 21:32:44 +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 8ab584db24 fix(rest-mode): recover built-in FTP listener after standby 2026-08-22 22:33:27 +08:00
Hexwell b8c15cff0b fix(payload): preserve user-owned processes 2026-08-22 21:49:06 +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 988cf124f9 fix(rest-mode): recover toolbox and IPC listeners on SIGCONT 2026-08-21 18:15:50 +08:00
Hexwell 40e2fab9b1 feat(plugins): split run/autoload and embed ShadowMountPlus 1.6beta16 2026-08-21 16:22:58 +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 440c867974 fix(cheats): cancel sync when progress page closes 2026-08-19 15:52:13 +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 027814f5b0 fix: prefix OnionHEN runtime process names 2026-07-22 22:10:16 +08:00
Hexwell ebc89bb5d4 fix: restore Itemzflow jailbreak and IPC ABI
Restore ITEM00001 to the app-jailbreak allowlist so the Itemzflow loader can complete its legacy handshake.

Reserve the removed dumper command at 0x9000004, lock the released critical IPC ordinals with host tests, and document the remaining legacy socket compatibility gap.
2026-07-22 15:52:29 +08:00
Hexwell a74f6bb0b4 refactor: unify system tmp namespace 2026-07-19 02:00:22 +08:00
Hexwell d83577e568 feat: embed private elfldr on 9020 2026-07-18 20:35:16 +08:00
Hexwell 56a4530a02 remove: drop legacy TCP 9028 jailbreak command server
Delete the util hijacker Command protocol, config toggle, and Toolbox
UI. Homebrew jailbreak remains on the daemon sandbox FIFO path only.
2026-07-16 23:16:55 +08:00
Hexwell 072361c53f refactor: remove online kstuff and cheats downloads
Drop GitHub-based download UI, IPC, and the util HTTP/curl stack. Keep
local cheats under /data/OnionHEN/cheats and optional external kstuff.elf.
2026-07-15 18:42:54 +08:00
Hexwell 6610857b28 refactor: remove game/app dump menu and dumper leftovers
Drop the ShellUI dump menu entry and OnionHEN?Dump URI handling. Replace
dumper_utils with file_copy_utils for generic IPC copy/size helpers only.
Also drop WIP wording from the cheats menu label.
2026-07-15 18:36:50 +08:00
Hexwell aad2cdaabc refactor: rebrand OrionHEN to OnionHEN
Rename product, namespaces, libraries, paths, and assets from Orion/orion
to Onion/onion across the tree. TCP stack-shutdown magic is now ONIO
(0x4F4E494F) to match the corrected branding.
2026-07-15 18:23:16 +08:00
Hexwell db4fdda753 feat(daemon): shutdown stack via IPC and LAN TCP :9048
Add BREW_SHUTDOWN_STACK (0xDEAD0002): kill util.elf, ForceKill SceShellUI,
then exit the crit daemon. Expose the same sequence on TCP port 9048 with
ORIO magic frames so a PC can tear down OrionHEN over the LAN.

Provide scripts/shutdown_orion.py (kill_daemon.py becomes a thin alias) and
IPC_Client::ShutdownStack for on-console Unix clients.
2026-07-10 22:35:00 +08:00
Hexwell 352d682cd2 refactor: drop plugins; OrionHEN only supports payload .elf
Remove the .plugin package format and rename the stack to payload-only:
liborion_plugin → liborion_payload, IPC LAUNCH_PAYLOAD, UI payloads.xml,
and bootstrapper/util/shellui load paths under .../payloads/*.elf.

Delete dead package header validation, make_plugin_app staging, and
plugin-named lists/handlers; keep Sony Settings.Plugins resource namespace
and system_settings plugin= attributes (platform, not our format).
2026-07-10 22:28:19 +08:00
Hexwell ff40042d84 chore: keep only system PkgInstaller; remove DPI and custom PKG UI
Delete DirectPKGInstaller and the toolbox DPI toggle. Remove the custom
background package installer (custompkginstaller XML generation and
id_pkg_ handlers). Package install remains the stock PkgInstaller link
in OrionHEN_toolbox.xml. Leave BREW_UTIL_UNUSED_DPI ordinal for IPC
compatibility.
2026-07-10 16:03:27 +08:00
Hexwell 2c455c1eb6 test: expand host unit coverage for platform, ready flags, and IPC
Add suites for liborion_platform (fs/log/notify), richer settings and ready
flag cases, and msg.hpp protocol ordinals. Link real platform sources under
ORION_HOST_TEST; fix DaemonCommands to unsigned so high-bit opcodes are
well-formed. Rename host binary to orion-host-tests.
2026-07-10 15:42:32 +08:00
Hexwell 3d94cf046d feat: add shared orion libs for IPC, settings, detour, and proc
Introduce liborion_ipc (client + Unix server transport), liborion_settings
(single config schema), liborion_detour (Detour/hde64), and liborion_proc
(proc/ucred). Fix IPC_Ret OPERATION_FAILED distinction and ignore built
first-party .a artifacts under source/lib/.
2026-07-10 14:41:55 +08:00
Hexwell 793719abf4 refactor(cheats): C++ service/parsers and remove RELOAD index cache
Move util cheats orchestration to C++ (CheatService, Repository, Applier,
IMemoryBackend, ICheatParser factory for json/shn/mc4 with ShnExt C adapter).
Drop the obsolete RELOAD_CHEATS UI/IPC path; reloads use file-signature hot
reload only. Document util cheats architecture under docs/util_arch.
2026-07-10 14:06:42 +08:00
Hexwell 039bcd086c refactor: remove SELF directory decrypt IPC
Drop decrypt_self/decrypt_dir and related SELF header types from the
critical daemon. Keep BREW_DECRYPT_DIR as an unused ordinal for
compatibility; callers receive a hard failure.
2026-07-10 13:24:00 +08:00
Hexwell 5d646266ea refactor: remove FTP/Klog services and document architecture
Drop the util FTP (1337) and Klog (9081) servers, Toolbox UI toggles, and
config keys. Keep former IPC command ordinals as UNUSED_* for compatibility.
Add docs/arch.md covering modules, IPC, features, and dependencies.
2026-07-10 13:14:52 +08:00
Hexwell d28f4e3eb1 chore: rebrand runtime paths and identifiers to OrionHEN
Rename remaining etaHEN symbols, log prefixes, on-disk paths, plugin
magic, process names, and copyright headers across bootstrapper, daemons,
shellui, and util without keeping legacy aliases.
2026-07-10 13:06:58 +08:00
Hexwell ce14f9f6aa cleanup: remove deprecated toolbox services 2026-07-10 12:25:16 +08:00
Hexwell 8375128e59 feat: launch util/daemon/kstuff via external elfldr on 9021
Drop in-process spawn for HEN components. Write ELFs under
/data/etaHEN/daemons and hand off file: URIs to the host elfldr service.
Add elfldr_remote helpers and wire bootstrapper/daemon/util CMake and call sites.
2026-07-10 01:04:15 +08:00
Hexwell 37b0ff3143 init: init 2026-07-09 23:48:02 +08:00