Tutorial created by jkcoxson and spidy123222
NOTE: This method has been superceeded by JitStreamer for ease of use.
Notice: If you want to add anything like an SSH shortcut or something talk to us in Oatmealdome's Home Discord server
Before starting you will need some terminology and information. For the moment only the Windows install method requires DMG files which holds the debugger needed to activate JIT (just in time).
This tutorial is using DolphiniOS as a reference but it also works on other apps other than DolphiniOS, like PPSSPP and UTM. The tutorial gets revised over time and might even fix some install issues.
We have gotten a lot of results from people trying it out and concluded that you might have to remount the debug image if your device dies or restarts, which isn't a big deal if you have a shortcut or mount it when you start the debugger.
Please make it easier for yourself and have a notepad or a text editor to put the commands in first that you will need to edit and reuse.
UDID: Unique Device Identification is used for identifying your specific device and never changes out of manufacturer.
BundleID/PackageID: This Identification is for applications and is unique for each app
This requires having AltStore installed (Windows and Mac only) but once it’s installed make sure to install the app you want first.
Download iTunes from Apple's website (not the Windows Store)
Download libimobiledevice from https://github.com/libimobiledevice-win32/imobiledevice-net/releases/
Plug in your iDevice (this will work over WiFi later).
Open iTunes, click on your device and make sure you trust this computer on your iDevice. It will ask you for a passcode.
Scroll down and check the box for WiFi sync in iTunes.
Minimize iTunes and open a power shell and type
"cd \Users\yourusername\**_LocationOfFile_**\libimobiledevice.1.2.1-r1122-win-x64"
but fill in the correct information pertaining to where you saved and unzipped Libimobiledevice on your computer
Run .\idevice_id.exe
and copy the numbers and/or letters it gives you. This is your UDID.
Open AltStore, press My Apps
and then View App IDs
. Write down the small letters of DolphiniOS, as shown in the prerequisites from above.
Download the Developer Disk Image from either of these links. Note; you must download the version that is the same as your major iOS release. For example, a device running 14.4.2 will download 14.4.
Unzip it and type
.\ideviceimagemounter.exe \Users\username\LocationOfFile\iosversionofFile\DeveloperDiskImage.dmg
If it fails to mount, restart both your iDevice and PC.
.\idevicedebug -u UDID -n --detach run PackageID
where you replace UDID and PackageID with their values you found before.
Important note: On step 11 there is a space in between -n
and --detach
. Also you can remove -n
if you are wanting to activate through usb only. -n
is for network.
Recommendation: To prevent mess ups on step 11 copy the command and paste it in notepad or a text editor and add UDID and packageID and run the command you edited.
Make sure you have a github account logged in beforehand and Download the latest one that says master on the right and make sure it is MacOS and Extract it in Downloads folder.
Enter the extracted zip file and extract file libimobiledevice.tar
In the terminal
move to directory by entering
cd ~/Downloads/libimobiledevice-latest_macOS/usr/local/bin/
Then executing by entering
chmod +x ./idev*
Make sure your device is plugged in and that it is Trusted. Then go in Finder and click your device and Enable WiFi sync.
Type in and enter
./idevice_id
It should of returned your UDID of you’re device
Type without []
./idevicedebug -u [UDID] -n --detach run [BundleID]
Important note: on step 8 There is a space in between -n
and --detach
. Also you can remove -n
if you are wanting to activate through usb only. -n
is for network.
Recommendation: to prevent mess ups on step 8 copy the command and paste it in notepad or a text editor and add udid and packageID and run the command you edited.
Download install.sh from github: https://GitHub.com/jkcoxson/DiOS-instructions (still under construction, message jkcoxson any issues you have)
Plug iDevice in linux computer and trust computer
Go to location of installation
cd File/Location
Give file permissions
sudo chmod +x ./install.sh
sudo ./install.sh
Give login password if needed
At the end of install it should give your udid from usb and wifi if you have wifi setup and copy the udid (If your device was not connected or did not show just type in idevice_id to see udid if connected. If you are having trouble with idevice_id responding type the command: sudo service usbmuxd restart )
If you are wanting to do over wifi then all you need to do is have the device plugged in and type this command. Idevicepair wifi on
Type without []
idevicedebug -u [UDID] -n --detach run [PackageID]
Important note: on step 9 There is a space in between -n
and --detach
. Also you can remove -n
if you are wanting to activate through usb only. -n
is for network.
Recommendation: to prevent mess ups on step 9 copy the command and paste it in notepad or a text editor and add udid and packageID and run the command you edited.
The next steps are optional, to make it run from your iDevice. You will need to enable SSH on your PC.
Before you start please keep in mind that you will have to open the firewall for OpenSSH if it’s not allowed through. There are many tutorials on how to allow services or applications to go through the firewall of the computer. Sometimes this is automatic so you may not need to open it for openssh. You will also need to be the admin to set this up which by default most people.
You will also need your password and root username so the name your computer uses (On windows it’s called users) Not a Microsoft email.
To find your root username it would be in your main partition for windows so C:/Users/RootUsername
Note: for some reason if your username and password don’t work you will need to create a SSH key.
You can set up the server to start automatically, open PowerShell in adninistrator type:
Set-Service sshd -StartupType Automatic
Then do this next one after from one above
Start-Service sshd
Open and ensure the firewall accept SSH connection, by default port 22, type:
New-NetFirewallRule -Name sshd -DisplayName 'Allow SSH' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
To check if the port is listening :
netstat -a | findstr 22
SSH PASSWORD AUTH
Then, in settings go to the Internet and then look for your IP address. Write that down.
On your iDevice, open shortcuts and make a new one. Choose SSH.
Put in your IP address, username and password to your computer. Make sure to give the exact location of libimobiledevice, so that includes all the way down to drive letter C:\example\fileloaction\libimobiledevice\idevicedebug. For the command put
C:Users\username\LocationOfFile\libimobiledevice.1.2.1-r1122-win-x64\idevicedebug -u [UDID] -n --detach run [PackageID]
SSH KEY AUTH
md ~/.ssh
cd ~/.ssh
then generate a random key, name it authorized_key and leave blank passphrase(by pressing enter):
ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/demo/.ssh/id_rsa):authorized_keys
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
then it will indicate path location of authorized key
On your idevice :shortcut > scripting > Run Script Over SSH > select Authentification SSH key > press on your key ed25519 or RSA between ur choice > share public key > copy
On Windows : go explorer folder to = C:\Users\Username.ssh
it should have two files: authorized_keys.pub and authorized_keys
Right click again authorized_keys and edit with notepad, you can erase everything in the file and copy the Pub Key that you got from idevice and save.
On Windows : go explorer folder to = C:\ProgramData\ssh
Edit in notepad sshd_config file: uncomment removing # line 34 and line 85 comment with #
Save and restart Openssh server, in powershell :
Restart-Service sshd
TO BE DETERMINED
Hecka easy, run sudo apt-get install
openssh-server (on systems with apt of course)
Choose your method of allowing through iptables. I, jkcoxson, prefer ufw.
If you use ufw, run sudo ufw allow 22
Put your information and command into the shortcut.
These are shortcuts that are premade by users that help with problems and a premade ssh activation method to select multiple apps.
To download just go in shortcuts and make a shortcut with a random action that won’t affect your device then save it and activate it. (Idk why Apple wanted this to be done first before installing untrusted shortcuts)
Go to settings and enable Allow Untrusted Shortcuts And proceed with downloads
You will need to edit the shortcuts to connect to your computer and with your udid and bundleID and file locations. Make sure to go through Optional SSH setup before this
This allows debugging apps over ssh with multiple apps and can be useful if you have multiple apps with jit or need a debugger to run.
By: spidy123222
Download: https://www.icloud.com/shortcuts/246b83074f364e84ba42609b1f71e9d0
This helps with problems with iTunes on windows not connecting over WiFi.
By: Magnus_Redd
Download: https://www.icloud.com/shortcuts/50947cc2884a470da132f42d4468c960
This can help with problems with libimobiledevice not attaching a debug image. (This requires auto login to fully work for things like altserver and libimobiledevice).
By: Magnus_Redd
Download: https://www.icloud.com/shortcuts/7611e9873b2b43fea11c1b459949b339