This is an unofficial experimental fork of 0xkuj/IPARanger.
I made these changes mostly for personal use and experimentation. If they help someone else, great. If not, no worries. This is not intended to replace the original project or take credit for it.
The original app downloads encrypted IPA files from the App Store using an Apple ID account, through majd/ipatool.
This fork was tested on my own devices and setup only. I used it mainly on a rootless jailbreak environment (Dopamine, iOS 16.4), with limited rootful testing on iOS 13.5. I cannot guarantee that it will behave the same way on other iOS versions, other jailbreaks, or rootful setups.
Some parts may fail, behave differently, or crash entirely depending on your environment. This is shared as an experimental fork, not as a polished or officially supported release.
If it works for you, nice. If it does not, please assume rough edges are expected.
Prebuilt experimental .deb packages are available under GitHub Releases.
Pick the package that matches your jailbreak setup:
- Rootless / Dopamine:
IPARanger_2.3.0+exp1_rootless-dopamine_downloads-folder-spacing.deb - Rootful / iOS 13-compatible:
IPARanger_2.3.0+exp1_rootful-ios13compat_downloads-folder-spacing.deb
This fork is versioned as 2.3.0+exp1: it is based on IPARanger 2.3.0, with experimental changes on top.
- Added multi-account support.
- Isolated each account's
ipatoolkeychain service to avoid login/token conflicts. - Patched the embedded
ipatoolauth/keychain behavior used by this fork. - Added version selection before downloading an app.
- Added release dates in the version picker when available.
- Added a fallback to download the latest version when version history is unavailable.
- Added minimum iOS version metadata for downloaded IPAs.
- Added account attribution for downloaded IPAs.
- Made downloads less blocking with an in-app download banner.
- Adjusted downloaded IPA metadata text so it fits better on small screens.
- Added a login-screen shortcut to open the local downloads folder even when Apple ID auth is broken.
- Tested both rootless and rootful builds during development.
- Kept the existing install/share/download flow as close to the original app as possible.
Downloaded IPAs are still encrypted when they come from the App Store. TrollStore cannot install encrypted main binaries directly; that is separate from IPARanger's download flow.
This fork embeds a patched ipatool binary.
The embedded binary is a custom patched iOS build. It may report itself as a development build; the important part for this fork is the patch behavior, not the upstream CLI version string.
The patch is included in patches/ipatool-keychain-service.patch. In short:
ipatoolcan readIPATOOL_KEYCHAIN_SERVICEfrom the environment.- IPARanger sets a different keychain service per account.
- This avoids multiple Apple ID accounts fighting over the same system keychain slot.
keychain.Setremoves the old item before saving a new one, which avoids an iOS keychain update failure seen during testing.- The goal is to reduce the recurring auth/login failures that can surface in IPARanger as JSON parsing errors when Apple or
ipatoolbehavior changes.
This project uses Theos.
Rootless build:
THEOS_PACKAGE_SCHEME=rootless make package FINALPACKAGE=1Rootful build:
make package FINALPACKAGE=1Install the package that matches your jailbreak environment. A rootless package is not expected to work correctly on a rootful jailbreak, and a rootful package is not expected to work correctly on a rootless jailbreak.
Depending on your local Xcode/iOS SDK setup, you may need to adjust the TARGET line in the Makefile. For older rootful devices, the app has been built with TARGET=iphone:clang:latest:13.0 during testing.
Generated .deb packages are intentionally not tracked in this source tree. If I publish builds, they should live under GitHub Releases instead.
From the original README:
- IPARanger is a GUI based application for
ipatool. - It was made for jailbroken devices.
- Original support notes mentioned jailbroken devices running iOS 13.4 to iOS 16, excluding Xina15.
- Original app: 0xkuj/IPARanger
- ipatool: majd/ipatool
- Changes in this fork were vibe-coded with Codex.
This project keeps the original MIT license from IPARanger.




