JanX2 / SideJITServer

A JIT enabler for iOS 17 with a Windows/macOS computer on the same WiFi!

Repository from Github https://github.comJanX2/SideJITServerRepository from Github https://github.comJanX2/SideJITServer

SideJITServer

This project allows you to start a server that wirelessly or via USB gives you JIT for iOS 17+ on Windows/macOS/Linux if you use the correct newer pymobiledevice3 version.

How to get this running (Run with Administrator!)

Option 1: Python install

python3 -m venv venv # Run inside SideJITServer directory!

# Activate Python venv

# macOS
. ./venv/bin/activate

# Windows but using Powershell
.\venv\Scripts\Activate.ps1

# Windows but using Command Prompt/CMD
.\venv\Scripts\Activate.bat

# Now let's install all the required packages! (Make sure you're still inside venv!)
# All OS
pip3 install -r requirements.txt
pip3 install SideJITServer
# If you got an error saying pip3 not found just change pip3 to pip

# Let's see if everything works (Make sure you're still inside venv!)
SideJITServer --version
# Output should show SideJITServer!

Or use PyPI

python3 -m venv venv
# Activate venv..

pip3 install SideJITServer
SideJITServer --help

Option 2: Direct download (if available)

Go to the latest GitHub Release and check if there are executable downloads, such as SideJITServer-windows-x86_64.exe, depending on your OS and your architecture. If there is no attached executable, you might find one in the GitHub Actions if a recent build worked and did not expire.

Download the correct executable, and run it as Administrator from your terminal or Powershell following the directions below. If you are on Mac or Linux, you must first run chmod +x ./(your downloaded .bin file) before executing the file with sudo.

Python is not necessary for this approach.

How to use SideJITServer?

  • Make sure your device is connected!
  • Make sure you're still inside the venv, if applicable!
  • Common Knowledge

Now run SideJITServer --pair and on your PC make sure you click on Trust this PC! Also it will show you a prompt to continue just type "y"

Usage

MacOS

1. Run the server
# First run
sudo SideJITServer --pair
# Consecutive runs once paired
sudo SideJITServer

You should see output similar to this:

image

If you get an error like OSError: [Errno 48] Address already in use there probably already is a server running on the default port (8080). In my case it was Syncthing. You can use a custom port like 8888:

# First run
sudo SideJITServer --port 8888 --pair
# Consecutive runs once paired
sudo SideJITServer --port 8888
2. Install / Run the shortcut

Connect from your iPhone or iPad to your SideJITServer via a web browser (probably Safari) via the local server address to get your UDID. In the example the address is http://192.168.0.6:8080. (You must include the http and not include / at the end!)

Copy the UDID beside usbmux (example: 0123456789abcdef0123456789abcdef01234567).

Install this shortcutâť—

After installing it's going ask you to set the device's UDID you obtained above.

Next it's gonna ask you for the SideJIT server address. Use the address you connected to earlier using your browser (where you got the device's UDID).

Now run the shortcut!

It's going to ask you to allow access to your local IP address. Just click allow!

Now select the application that you want to give JIT access to and you're done! (It might ask for notification permissions). It's recommended that you tap allow so you see if the JIT fails or succeeds. The app may need to be running for this to work.

Happy JITing! :3

About

A JIT enabler for iOS 17 with a Windows/macOS computer on the same WiFi!

License:GNU General Public License v3.0


Languages

Language:Python 88.4%Language:Dockerfile 11.6%