#(Guide) Enabling JIT on Android Termux

1 messages · Page 1 of 1 (latest)

pallid wagon
#

Requires a rooted Android phone.
My target device is an iPad Air M2 on iPadOS 18.0.1

  1. Download @flint atlas 's fork of go-ios
    #1324369543107448842 message

  2. In Termux, add new sources

cat << EOF >> $PREFIX/etc/apt/sources.list.d/imobiledevice.list
deb [trusted=yes] https://xunmod.github.io/repo termux main
deb [trusted=yes] https://xunmod.github.io/repo termux root
EOF
pkg up
  1. Install the following packages
    pkg in libimobiledevice usbmuxd
    You might need something more but I don't remember at the moment

  2. On android -> plug in usb to ipad -> (from notification) set usb to controlled by connected device.
    Don't mount as MTP device through android's files app. If you did, unplug and re-plug usb.
    Don't unplug the usb until finishing enabling jit.

  3. Start root terminal in termux through tsu

  4. Run usbmuxd --force-exit -> restart usbmuxd without aruguments (do this every time you re-plug the usb or your ipad won't be detected)

  5. Assume go-ios is in current directory and has execution permission, pair your ipad using
    ./go-ios pair
    This should only be needed to be done once

  6. Check if ipad is detected by running ideviceinfo

  7. Run ./go-ios image auto. Wait for download to complete patiently

  8. Either connect both ipad and android phone to the same wifi, or start a hotspot on your android phone and connect your ipad to it (can be done without internet)

  9. Run ./go-ios tunnel start --userspace

  10. Start a new session in termux (swipe from the left side of the screen). Run ./go-ios sidejit (No root needed)

  11. Now find your android phone's local ip address. You can start another new session and run ifconfig to check

  12. On ipad, get the shortcut from https://github.com/nythepegasus/SideJITServer. Remove empty headers
    #1324369543107448842 message

  13. Run the shortcut and pray it works 🙂

#

@south phoenix I sumarised the steps I used to enable JIT on an android phone

To use netmuxd in place of usbmuxd for a completely wireless procedure: #1334535761361375264 message

flint atlas
#

go-ios requires no root
btw if your android phone and iphone are under the same wifi, you can use netmuxd to connect wirelessly

pkg in netmuxd
# Please ensure usbmuxd is not running and sidestore vpn id off
netmuxd
#

btw refresh pairing file (requires usb connection):

pkg in sideloader
# need to workaround a bug before but it's fixed now
sideloader tool run 0

btw you can use sideloader to install sth
sideloader install -i <ipa>

south phoenix
#

if I hotspot with my iphone it could be done wirelessly?

pallid wagon
#

Just tried and netmuxd does indeed work wirelessly ❤️

#

Will write down the steps later

#

With the benefit of freeing up the charging port for charging too

#

This thing is so much more convenient and stable than setting up jitstreamer

south phoenix
#

@pallid wagon my android phone fails to set usb to controlled by connected device

#

@flint atlas

pallid wagon
#

Use a type c to type c cable

#

I tried using a type a to type c adapter and that didn't work out somehow

flint atlas
#

my phone use microusb so I didn't face that problem. For me I just plug the adapter and USB in then the usb device will appear in /dev/bus/

pallid wagon
#

Yeah if termux-usb -l isn't empty (requires Termux:API on fdroid), you're probably good to go

pallid wagon
#

To use netmuxd in place of usbmuxd (to ditch the usb altogether):

  1. Make sure your ipad is paired already (I think you still need usbmuxd for that)

  2. tsu -> usbmuxd --force-exit -> export USBMUXD_SOCKET_ADDRESS=127.0.0.1:27015
    In each shell session, run the same export command first

  3. Make sure both the ipad and android phone are on the same wifi/hotspot. Run netmuxd --disable-unix --host 127.0.0.1. Wait for the message Adding device [uuid here]

  4. Start new shell sessions to run ./go-ios tunnel start --userspace and ./go-ios sidejit. Make sure you ran the export command from step 2.

misty mantle
#

Yes but my usb port on my android phone is

#

But is worki and rooted

pallid wagon
south phoenix
pallid wagon
#

idk if enabling usb debugging in developer settings help too

south phoenix
pallid wagon
#

idk then

#

I'm on LineageOS

#

idk if that makes a difference

south phoenix
#

it's a really well done ROM for my device is well mantained with the latest A15 and the latest security patches available

#

I don't think the ROM it's the problem

#

I didn't find anything on the internet

#

to solve this issue

flint atlas
#

you should have no problem accessing the device

#

just start usbmuxd and see if something is wrong

pallid wagon
#

If termux-usb -l is empty there is no next step

south phoenix
#

I’ll try when as soon as I get home 🙂

pallid wagon
#

@flint atlas netmuxd doesn’t seem to work on hotspot

#

Do you know anything about it

#

Or is it by design

flint atlas
#

idk

#

maybe try add_device <udid> <ip> to manually add idevice

pallid wagon
#

That didn't work out

flint atlas
#

Don't set USBMUXD_SOCKET_ADDRESS or set USBMUXD_SOCKET_ADDRESS="/data/data/com.termux/files/usr/var/run/usbmuxd" if it didn't work

pallid wagon
#

Really

#

But netmuxd won't work at all without exporting that

flint atlas
#

What’ll happen if it is not exported? E.g. usbmuxd failed to start or go-ios failed to connect

south phoenix
#

termux-usb - l has to be done in tsu mode or without root privileges

#

?

flint atlas
#

both is ok (root not required however), but an app called "Termux: API" must be installed

south phoenix
#

it’s installed from fdroid and from the pkg inside termux

#

and has root privileges

south phoenix
#

but without root doesn’t return nothing at all

#

and with root is executing smt

#

but from 10 minutes without any output

flint atlas
#

ok understand

south phoenix
#

it’s like executing something

flint atlas
#

Try termux-api-start

#

if it stucks, it means Termux: API is not responding

pallid wagon
flint atlas
#

hmm weird let me check the source

pallid wagon
#

Like I said if that command returns an empty array and you can't switch usb connection mode, there is no next step

south phoenix
#

hell nah 😢

pallid wagon
#

@south phoenix if you open the files app on android, you also don't see ypur ipad as a storage device right?

flint atlas
pallid wagon
#

Huh

#

idk that option was on netmuxd's readme page on github

flint atlas
#

ignore that

#

Just execute netmuxd is ok and you don't have to export USBMUXD_SOCKET_ADDRESS anymore

south phoenix
#

should debug usb be active?

flint atlas
#

could give it a try, but I don't think it's related

south phoenix
#

i was trying to use different file explorer but that doesn’t change

flint atlas
#

do you have root?

#

if so just sudo find /dev/bus to see if the usb device is here

south phoenix
#

I patched the boot.img of my rom etc

south phoenix
#

but root permissions were triggered

pallid wagon
pallid wagon
#

Without pairing with usbmuxd you can't use netmuxd

south phoenix
#

so that’s another way to say that I’m cooked?

pallid wagon
#

Without both you can't use sidejit

pallid wagon
south phoenix
#

yea but it seems strange to me that I can’t switch the connection control

pallid wagon
#

What about another phone

south phoenix
#

that doesn’t make sense

pallid wagon
#

to rule out the cable's problem, although unlikely

south phoenix
#

I don’t have another android phone

south phoenix
#

maybe

pallid wagon
#

Does it even mount any flash drive at all

south phoenix
#

yes

#

I transferred files and flashed usb sticks with linux with it

pallid wagon
#

idk then

south phoenix
#

Also I used apple official usbc cable

#

and another good usbc cable I use to transfer data and the error doesn’t change

#

😢

pallid wagon
#

I also use the cable that comes with the ipad's box

flint atlas
#

then unfortuantely this could be a problem of ROM if you've enabled some switches like OTG or USB Host mode

#

Or a problem with the usb C to usb A adapter

pallid wagon
#

Evolution X seems to be based on lineageos though

#

And I’m on lineageos

#

So yeah it makes no sense that usb doesn’t work