github opa334/Dopamine 1.0.0-beta.8
Public Beta 8 (Final Beta)

latest releases: 2.2.2, 2.2.1, 2.2...
pre-release17 months ago

This build was updated on 22:09 UTC with a very tiny hotfix for an issue where certain jailbreak detections were tripping because the fork hook wasn't setting errno correctly.

Changelog:

  • Add workaround for fork() and vfork() inside processes that have hooks applied (previously the child would instantly crash)
  • Even better setuid solution (Thanks to @sbingner)
  • Update shipped Sileo to 2.4.4
  • Add option to hide / uninstall jailbreak environment to the app, accessible by long pressing on the jailbreak button (stop gap solution until final version with proper UI), ONLY USE WHILE NOT JAILBROKEN
  • The alert that appears after jailbreaking now has a button to do the userspace reboot (stop gap solution until final version with proper UI)

What's still missing for the final release:

  • Proper name / UI
  • User friendlyness
  • Userland hooks for icon cache and preferences
  • libkrw
  • Fully working Sileo / Zebra builds

Known Issues:

  • For some users, Sileo crashes on launch, there is no current fix or workaround for this, a proper fix is pending by Sileo developers
  • On some versions, doing anything in Zebra crashes, there is no current fix or workaround for this, a proper fix is pending by Zebra developers
  • When something hooks a C function inside logd, userspace reboots will get stuck, (fixed in Ellekit 0.4.5)
  • Spinlock panic, no idea what causes this, might be a late side effect by one of the exploits
  • Some sort of race condition pmap panic, no idea what causes this either, but I think this is probably a bug in the environment somewhere
  • On 15.0 - 15.3.1, you need to fully disable wifi while jailbreaking

Notes:

  • Final jailbreak will have a different name
  • This jailbreak is rootless: https://theapplewiki.com/wiki/Rootless, rootful packages are not supported
  • Default password for root: alpine (you need to install openssh from package manager)
  • The only known bootloop issue is when you delete some system files in /private/preboot yourself, so don't do that?

For Tweak Developers:

  • Update theos to latest, then you can build for rootless via THEOS_PACKAGE_SCHEME=rootless
  • Store/load preferences either via cfprefsd APIs or inside /var/jb/var/mobile/Library/Preferences (there will be a cfprefsd hook in the final jb to redirect all non stock stuff to that path)
  • You need to compile everything for rootless
  • All dependencies have to be compiled for rootless and stored in $THEOS/lib/iphone/rootless
  • You need to put every former root path you access through the macros defined in rootless.h
  • You need to compile with Xcode 12 or newer, otherwise your dylib will crash the process (if you don't want to loose iOS 12 / 13 arm64e support, you still need to compile your rootful packages with Xcode 11)
  • There currently is a theos bug where rootless libraries cannot link against other rootless libraries
  • No rocketbootstrap / IPC (yet? ever? who knows?)

Credits:
@evelyneee: Ellekit
@Cryptiiiic: Various contributions
@TheRealClarity: Various contributions
@dhinakg: Various contributions
@captinc: Various contributions
@sbingner: setuid solution
@LinusHenze: Original Fugu15 project, various contributions
@ProcursusTeam: Bootstrap
@kirb: Zebra
@elihwyma / @Sileo: Sileo

Don't miss a new Dopamine release

NewReleases is sending notifications on new releases.