Commit graph

10 commits

Author SHA1 Message Date
0044c2c12a fix: replace speculative Bridgeless hook with RainTweak's verified approach
The RCTInstance/-_loadScriptFromSource: + fake-RCTSource hook from the
previous commit was a plausible guess from RN's public source, but
codeberg.org/raincord/RainTweak - an actively-shipping loader for a sibling
Revenge/Bunny fork - proves both the Bridgeless diagnosis correct (its %ctor
refuses to run below Discord v332, i.e. pre-Bridgeless) and shows a cleaner,
verified mechanism: hook RCTHost/-instance:didInitializeRuntime:, let
Discord's own bundle load untouched via %orig, then evaluate Revenge's
scripts directly against the live JSI runtime instead of faking another
bundle load.

- Add Headers/JSI.h + Sources/JSI.mm (ported from RainTweak's JSI.mm):
  evaluates NSData as JS or Hermes bytecode directly against a
  facebook::jsi::Runtime.
- Add Headers/RCTHost.h declaring the hook target's signature (RN ships no
  public header for this internal class).
- Vendor Headers/jsi/{jsi.h,jsi-inl.h,instrumentation.h} - Meta's MIT-licensed
  JSI headers, which Theos doesn't provide; RainTweak vendors the same files.
- Rewrite Tweak.x -> Tweak.xm (needs C++ for jsi::Runtime&): runRevengeInjection
  now takes a plain data/async execute callback, driven by either the new
  RCTHost+JSI hook or the legacy RCTCxxBridge hook (kept as a no-cost
  fallback), guarded by a didInject flag so only one path actually injects.
- Makefile: build .xm/.mm sources, add -std=c++17 CCFLAGS matching RainTweak.

Still unverified against a real device, but the mechanism itself is no longer
a guess - it's the one running in a comparable, currently-shipping mod.
2026-08-03 10:10:32 -04:00
Cristiandis
3f5723ea20 Change bunny to revenge 2024-11-15 11:45:12 +01:00
Cristiandis
0a9bfdbce3 update bunny.plist and makefile 2024-11-15 11:17:44 +01:00
Adrian Castro
bdf3792be9
feat: finish font impl 2024-11-14 22:50:08 +01:00
Adrian Castro
c568969333
feat: rewrite from orion to logos 2024-11-14 19:33:19 +01:00
amsyarasyiq
01804727b0 chore: Bunnyfication
.replaceAll("Pyoncord", "Bunny") 🧌
2024-05-18 20:53:21 +08:00
amsyarasyiq
87a567ad6a Pyoncord changes 2024-03-15 08:10:25 +08:00
alexia
8835f91cb6
build: target 15.0 for rootless 2023-04-08 00:58:58 +02:00
Jack Matthews
e08178a916
[Main] Execute patches 2023-03-12 21:23:45 -04:00
Jack Matthews
ea525c3d56
[Global] Initial commit 2023-03-12 04:19:51 -04:00