7 Commits
Author SHA1 Message Date
aydencharles dee1c1d523 feat(log): share the file sink and cap rotation from config 2026-10-02 16:40:23 +08:00
HexwellandClaude Fable 5 0d9fe9302a fix(build): make DEBUG and SHELL_DEBUG follow the build type
A --release build defined both DEBUG and NDEBUG, and SHELL_DEBUG was
hardcoded to 1 in defs.h. Every debug branch therefore shipped: the extra
checks in libhijacker's containers, and ~50 verbose diagnostic blocks in the
ShellUI hooks — the chattiest logging in the project, running inside an
injected system process on every boot.

DEBUG is now defined only for non-Release configurations, and SHELL_DEBUG
follows NDEBUG (override with -DSHELL_DEBUG=1 to keep the verbose blocks in a
release build while chasing a report). The symbols that exist only to serve
those blocks are guarded alongside them.

Also drop the hardcoded -O0. Release only got -O3 because it was appended
after it; reordering the flag strings would have silently produced an
unoptimised release build. Optimisation now comes from the build type alone.

Release shellui.elf is 24% smaller than the Debug one, and smaller than
before this change despite the added logging code.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 20:44:26 +08:00
Hexwell 7db83f3baf update: show build metadata in welcome toast
Generate shared version metadata from an exact Git tag, falling back to dirty-YYMMDD-SHA for untagged or modified trees. Show the version and author in the startup toast and reuse the generated version across ShellUI.
2026-07-20 16:48:47 +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 0a62ab1c55 fix(shellui): stop ShellUI crashes on cheats, notify, ELF load, and toolbox open
- Route orion_notify through orion_notify_set_send so injectees never CALL a
  dlsym function-pointer as code (SIGSEGV after cheat toggle notify).
- Skip stock SettingPage.OnPressed for dynamic id_cheat_* (Consumed).
- Derive raw ELF launch/PID keys from basename stem; stop writing plugins/.elf
  when titleID was misread from ELF magic.
- Keep UpdateImposeStatusFlag detour disabled on 11.600 (bad trampoline);
  stop remote-play pairing loop when leaving the remote_play page via GMRS.
- Drop mprotect on Mono heap byte[] when building toolbox MemoryStream; free
  prior gchandle on replace (fast/notification DebugSettings opens).
- Tighten plugin/payload filename filters and align ELF tid/PID paths.
2026-07-10 22:17:50 +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 37b0ff3143 init: init 2026-07-09 23:48:02 +08:00