fix for dualra1n-loader installation
This commit is contained in:
parent
dbe306f42f
commit
f03e2e5a42
9 changed files with 80 additions and 60 deletions
99
downr1n.sh
99
downr1n.sh
|
|
@ -296,6 +296,45 @@ _dfuhelper() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_do_localboot() {
|
||||||
|
ask
|
||||||
|
while true; do
|
||||||
|
read -r answer
|
||||||
|
case "$(echo "$answer" | tr '[:upper:]' '[:lower:]')" in
|
||||||
|
yes)
|
||||||
|
echo "[*] You answered YES. so Activating the iBoot localboot path..."
|
||||||
|
echo '[*] Patching the kernel to krnl'
|
||||||
|
if [[ "$deviceid" == *'iPhone8'* ]] || [[ "$deviceid" == *'iPad6'* ]] || [[ "$deviceid" == *'iPad5'* ]]; then
|
||||||
|
python3 -m pyimg4 im4p create -i work/$(if [ "$taurine" = "1" ]; then echo "kcache.patched"; else echo "kcache.patchedB"; fi) -o work/krnl.im4p -f krnl --extra work/kpp.bin --lzss >/dev/null
|
||||||
|
else
|
||||||
|
python3 -m pyimg4 im4p create -i work/$(if [ "$taurine" = "1" ]; then echo "kcache.patched"; else echo "kcache.patchedB"; fi) -o work/krnl.im4p -f krnl --lzss >/dev/null
|
||||||
|
fi
|
||||||
|
python3 -m pyimg4 img4 create -p work/krnl.im4p -o work/kernelcachd -m work/IM4M >/dev/null
|
||||||
|
remote_cp work/kernelcachd root@localhost:/mnt6/"$active"/System/Library/Caches/com.apple.kernelcaches/ >/dev/null
|
||||||
|
|
||||||
|
if [ "$os" = 'Linux' ]; then
|
||||||
|
sed -i 's/\/\kernelcache/\/\kernelcachd/g' work/iBEC.dec
|
||||||
|
else
|
||||||
|
LC_ALL=C sed -i.bak -e 's/s\/\kernelcache/s\/\kernelcachd/g' work/iBEC.dec
|
||||||
|
fi
|
||||||
|
|
||||||
|
"$dir"/iBoot64Patcher work/iBEC.dec work/iBEC.patched -b "-v wdt=-1 debug=0x2014e `if [ "$cpid" = '0x8960' ] || [ "$cpid" = '0x7000' ] || [ "$cpid" = '0x7001' ]; then echo "-restore"; fi`" -n -l >/dev/null
|
||||||
|
"$dir"/img4 -i work/iBEC.patched -o work/iBEC.img4 -M work/IM4M -A -T "$(if [[ "$cpid" == *"0x801"* ]]; then echo "ibss"; else echo "ibec"; fi)" >/dev/null
|
||||||
|
cp -v work/iBEC.img4 "boot/${deviceid}"
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
no)
|
||||||
|
echo "You answered NO. so Not activating the iBoot localboot path."
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Invalid answer."
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
echo "Please answer with YES or NO (case-insensitive)."
|
echo "Please answer with YES or NO (case-insensitive)."
|
||||||
}
|
}
|
||||||
|
|
@ -767,24 +806,26 @@ if [ true ]; then
|
||||||
python3 -m pyimg4 im4p extract -i work/kernelcache -o work/kcache.raw >/dev/null
|
python3 -m pyimg4 im4p extract -i work/kernelcache -o work/kcache.raw >/dev/null
|
||||||
fi
|
fi
|
||||||
|
|
||||||
remote_cp work/kcache.raw root@localhost:/mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.raw >/dev/null
|
"$dir"/Kernel64Patcher work/kcache.raw work/kcache.patched -e $(if [[ ! "$version" = "15."* ]]; then echo "-b"; else echo "-b15 -r"; fi) $(if [ ! "$taurine" = "1" ]; then echo "-l"; fi) >/dev/null
|
||||||
remote_cp boot/"${deviceid}"/kernelcache.img4 "root@localhost:/mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kernelcache" >/dev/null
|
|
||||||
|
|
||||||
|
remote_cp work/kcache.patched root@localhost:/mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patched >/dev/null
|
||||||
|
#remote_cp boot/"${deviceid}"/kernelcache.img4 "root@localhost:/mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kernelcache" >/dev/null
|
||||||
remote_cp binaries/Kernel15Patcher.ios root@localhost:/mnt1/private/var/root/Kernel15Patcher.ios >/dev/null
|
remote_cp binaries/Kernel15Patcher.ios root@localhost:/mnt1/private/var/root/Kernel15Patcher.ios >/dev/null
|
||||||
remote_cmd "/usr/sbin/chown 0 /mnt1/private/var/root/Kernel15Patcher.ios"
|
remote_cmd "/usr/sbin/chown 0 /mnt1/private/var/root/Kernel15Patcher.ios"
|
||||||
remote_cmd "/bin/chmod 755 /mnt1/private/var/root/Kernel15Patcher.ios"
|
remote_cmd "/bin/chmod 755 /mnt1/private/var/root/Kernel15Patcher.ios"
|
||||||
sleep 1
|
sleep 1
|
||||||
if [ ! $(remote_cmd "/mnt1/private/var/root/Kernel15Patcher.ios /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.raw /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patched 2>/dev/null") ]; then
|
if [ ! $(remote_cmd "/mnt1/private/var/root/Kernel15Patcher.ios /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patched /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patchedB 2>/dev/null") ]; then
|
||||||
echo "you have the kernelpath already installed "
|
echo "you have the kernelpath already installed "
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sleep 2
|
sleep 2
|
||||||
remote_cp root@localhost:/mnt6/"$active"/System/Library/Caches/com.apple.kernelcaches/kcache.patched work/ # that will return the kernelpatcher in order to be patched again and boot with it
|
remote_cp root@localhost:/mnt6/"$active"/System/Library/Caches/com.apple.kernelcaches/kcache.patchedB work/ # that will return the kernelpatcher in order to be patched again and boot with it
|
||||||
"$dir"/Kernel64Patcher work/kcache.patched work/kcache.patchedB -e $(if [[ ! "$version" = "15."* ]]; then echo "-b"; else echo "-b15 -r"; fi) $(if [ ! "$taurine" = "1" ]; then echo "-l"; fi) >/dev/null
|
|
||||||
|
|
||||||
if [[ "$deviceid" == *'iPhone8'* ]] || [[ "$deviceid" == *'iPad6'* ]] || [[ "$deviceid" == *'iPad5'* ]]; then
|
if [[ "$deviceid" == *'iPhone8'* ]] || [[ "$deviceid" == *'iPad6'* ]] || [[ "$deviceid" == *'iPad5'* ]]; then
|
||||||
python3 -m pyimg4 im4p create -i work/kcache.patchedB -o work/kcache.im4p -f rknl --extra work/kpp.bin --lzss >/dev/null
|
python3 -m pyimg4 im4p create -i "work/$(if [ "$taurine" = "1" ]; then echo "kcache.patched"; else echo "kcache.patchedB"; fi)" -o work/kcache.im4p -f rknl --extra work/kpp.bin --lzss >/dev/null
|
||||||
else
|
else
|
||||||
python3 -m pyimg4 im4p create -i work/kcache.patchedB -o work/kcache.im4p -f rknl --lzss >/dev/null
|
python3 -m pyimg4 im4p create -i "work/$(if [ "$taurine" = "1" ]; then echo "kcache.patched"; else echo "kcache.patchedB"; fi)" -o work/kcache.im4p -f rknl --lzss >/dev/null
|
||||||
fi
|
fi
|
||||||
|
|
||||||
remote_cmd "rm -f /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.raw /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patched /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.im4p"
|
remote_cmd "rm -f /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.raw /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.patched /mnt6/$active/System/Library/Caches/com.apple.kernelcaches/kcache.im4p"
|
||||||
|
|
@ -800,7 +841,7 @@ if [ true ]; then
|
||||||
unzip other/dualra1n-loader.ipa -d other/
|
unzip other/dualra1n-loader.ipa -d other/
|
||||||
mkdir -p other/Payload/Applications/
|
mkdir -p other/Payload/Applications/
|
||||||
mv -nv other/Payload/dualra1n-loader.app other/Payload/Applications/
|
mv -nv other/Payload/dualra1n-loader.app other/Payload/Applications/
|
||||||
remote_cp other/Payload/Applications/ root@localhost:/mnt1/Applications
|
remote_cp other/Payload/ root@localhost:/mnt1/
|
||||||
|
|
||||||
echo "[*] Saving snapshot"
|
echo "[*] Saving snapshot"
|
||||||
if [ ! "$(remote_cmd "/usr/bin/snaputil -c orig-fs /mnt1")" ]; then
|
if [ ! "$(remote_cmd "/usr/bin/snaputil -c orig-fs /mnt1")" ]; then
|
||||||
|
|
@ -819,6 +860,8 @@ if [ true ]; then
|
||||||
if [ "$taurine" = 1 ]; then
|
if [ "$taurine" = 1 ]; then
|
||||||
echo "installing taurine"
|
echo "installing taurine"
|
||||||
remote_cp other/taurine/* root@localhost:/mnt1/
|
remote_cp other/taurine/* root@localhost:/mnt1/
|
||||||
|
echo "[*] Taurine sucessfully copied"
|
||||||
|
_do_localboot
|
||||||
echo "[*] Finished, now your downgrade is jailbroken, you can boot it"
|
echo "[*] Finished, now your downgrade is jailbroken, you can boot it"
|
||||||
remote_cmd "/sbin/reboot"
|
remote_cmd "/sbin/reboot"
|
||||||
exit;
|
exit;
|
||||||
|
|
@ -842,45 +885,7 @@ if [ true ]; then
|
||||||
remote_cmd "rm /mnt1/jbin/binpack/binpack.tar"
|
remote_cmd "rm /mnt1/jbin/binpack/binpack.tar"
|
||||||
remote_cmd "/usr/sbin/nvram auto-boot=true"
|
remote_cmd "/usr/sbin/nvram auto-boot=true"
|
||||||
echo "[*] Finished of jailbreaking"
|
echo "[*] Finished of jailbreaking"
|
||||||
ask
|
_do_localboot
|
||||||
while true; do
|
|
||||||
read -r answer
|
|
||||||
case "$(echo "$answer" | tr '[:upper:]' '[:lower:]')" in
|
|
||||||
yes)
|
|
||||||
echo "[*] You answered YES. so Activating the iBoot localboot path..."
|
|
||||||
echo '[*] Patching the kernel to krnl'
|
|
||||||
if [[ "$deviceid" == *'iPhone8'* ]] || [[ "$deviceid" == *'iPad6'* ]] || [[ "$deviceid" == *'iPad5'* ]]; then
|
|
||||||
python3 -m pyimg4 im4p create -i work/kcache.patchedB -o work/krnl.im4p -f krnl --extra work/kpp.bin --lzss >/dev/null
|
|
||||||
|
|
||||||
else
|
|
||||||
python3 -m pyimg4 im4p create -i work/kcache.patchedB -o work/krnl.im4p -f krnl --lzss >/dev/null
|
|
||||||
fi
|
|
||||||
|
|
||||||
python3 -m pyimg4 img4 create -p work/krnl.im4p -o work/kernelcachd -m work/IM4M >/dev/null
|
|
||||||
remote_cp work/kernelcachd root@localhost:/mnt6/"$active"/System/Library/Caches/com.apple.kernelcaches/ >/dev/null
|
|
||||||
|
|
||||||
if [ "$os" = 'Linux' ]; then
|
|
||||||
sed -i 's/\/\kernelcache/\/\kernelcachd/g' work/iBEC.dec
|
|
||||||
else
|
|
||||||
LC_ALL=C sed -i.bak -e 's/s\/\kernelcache/s\/\kernelcachd/g' work/iBEC.dec
|
|
||||||
fi
|
|
||||||
|
|
||||||
"$dir"/iBoot64Patcher work/iBEC.dec work/iBEC.patched -b "-v wdt=-1 debug=0x2014e `if [ "$cpid" = '0x8960' ] || [ "$cpid" = '0x7000' ] || [ "$cpid" = '0x7001' ]; then echo "-restore"; fi`" -n -l >/dev/null
|
|
||||||
"$dir"/img4 -i work/iBEC.patched -o work/iBEC.img4 -M work/IM4M -A -T "$(if [[ "$cpid" == *"0x801"* ]]; then echo "ibss"; else echo "ibec"; fi)" >/dev/null
|
|
||||||
cp -v work/iBEC.img4 "boot/${deviceid}"
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
no)
|
|
||||||
echo "You answered NO. so Not activating the iBoot localboot path."
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Invalid answer."
|
|
||||||
usage
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "[*] DONE ... now reboot and boot again"
|
echo "[*] DONE ... now reboot and boot again"
|
||||||
remote_cmd "/sbin/reboot"
|
remote_cmd "/sbin/reboot"
|
||||||
exit;
|
exit;
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -14,7 +14,7 @@
|
||||||
</data>
|
</data>
|
||||||
<key>Assets.car</key>
|
<key>Assets.car</key>
|
||||||
<data>
|
<data>
|
||||||
ofgS+mzZOF1wGSC2FQ5l55t/LA8=
|
bXDbAeetZA/Y7De+N+wsak26mtw=
|
||||||
</data>
|
</data>
|
||||||
<key>Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
|
<key>Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
|
||||||
<data>
|
<data>
|
||||||
|
|
@ -34,15 +34,15 @@
|
||||||
</data>
|
</data>
|
||||||
<key>Info.plist</key>
|
<key>Info.plist</key>
|
||||||
<data>
|
<data>
|
||||||
eiDKe/D56un3zKhXp5SWKeutX08=
|
VgEA7vuKIoOkYkPb1kmre27zZUk=
|
||||||
</data>
|
</data>
|
||||||
<key>Main.storyboardc/BYZ-38-t0r-view-8bC-Xf-vdC.nib</key>
|
<key>Main.storyboardc/BYZ-38-t0r-view-8bC-Xf-vdC.nib</key>
|
||||||
<data>
|
<data>
|
||||||
ImV7XKTuTuuV6klwGLp+Mj9Xq9s=
|
kSWFEuGorMdBAOBexXoMyUukLAA=
|
||||||
</data>
|
</data>
|
||||||
<key>Main.storyboardc/DKI-Yp-loo-view-cPN-qX-cZW.nib</key>
|
<key>Main.storyboardc/DKI-Yp-loo-view-cPN-qX-cZW.nib</key>
|
||||||
<data>
|
<data>
|
||||||
M6GOu7LeSuY/ER6L38vSYFgCgUw=
|
CSJi64jwIUVX0OEntgwRd5B/WwQ=
|
||||||
</data>
|
</data>
|
||||||
<key>Main.storyboardc/Info.plist</key>
|
<key>Main.storyboardc/Info.plist</key>
|
||||||
<data>
|
<data>
|
||||||
|
|
@ -62,12 +62,16 @@
|
||||||
</data>
|
</data>
|
||||||
<key>basebinaries.tar</key>
|
<key>basebinaries.tar</key>
|
||||||
<data>
|
<data>
|
||||||
KJf7T46HZ+IyKHtg4fNSk7WKMfc=
|
ExBQ7905hQq27b1OmZtQYb10SUA=
|
||||||
</data>
|
</data>
|
||||||
<key>bootstrap.tar.gz</key>
|
<key>bootstrap.tar.gz</key>
|
||||||
<data>
|
<data>
|
||||||
rt9rjkuiQu3ovT9WyegG6Z9/ytw=
|
rt9rjkuiQu3ovT9WyegG6Z9/ytw=
|
||||||
</data>
|
</data>
|
||||||
|
<key>ctbypass.gz</key>
|
||||||
|
<data>
|
||||||
|
JdQt3oVn0+ahtpB//zvjuxhaQoQ=
|
||||||
|
</data>
|
||||||
<key>essential_0-4_iphoneos-arm.deb</key>
|
<key>essential_0-4_iphoneos-arm.deb</key>
|
||||||
<data>
|
<data>
|
||||||
1y7jqfU13qKUqU89y/9D46NdAX0=
|
1y7jqfU13qKUqU89y/9D46NdAX0=
|
||||||
|
|
@ -117,11 +121,11 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<data>
|
<data>
|
||||||
ofgS+mzZOF1wGSC2FQ5l55t/LA8=
|
bXDbAeetZA/Y7De+N+wsak26mtw=
|
||||||
</data>
|
</data>
|
||||||
<key>hash2</key>
|
<key>hash2</key>
|
||||||
<data>
|
<data>
|
||||||
qcG05RgfuPUIxZSr+s93OIPoDq2Z5/s+jJvd74Fpoe4=
|
Fg+jTlHFEyBWz8JQ15mDPZ566+4+xCB5G/jh721SwQg=
|
||||||
</data>
|
</data>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
|
<key>Base.lproj/LaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
|
||||||
|
|
@ -172,22 +176,22 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<data>
|
<data>
|
||||||
ImV7XKTuTuuV6klwGLp+Mj9Xq9s=
|
kSWFEuGorMdBAOBexXoMyUukLAA=
|
||||||
</data>
|
</data>
|
||||||
<key>hash2</key>
|
<key>hash2</key>
|
||||||
<data>
|
<data>
|
||||||
flB+gYCk4uXa2Ql9ot54QIOU4/siSnHvcj0cNRQiXzk=
|
8gMBiRwfwaaCjixBxHpksVY+4VUml5gaXlGJYdRlZD8=
|
||||||
</data>
|
</data>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Main.storyboardc/DKI-Yp-loo-view-cPN-qX-cZW.nib</key>
|
<key>Main.storyboardc/DKI-Yp-loo-view-cPN-qX-cZW.nib</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<data>
|
<data>
|
||||||
M6GOu7LeSuY/ER6L38vSYFgCgUw=
|
CSJi64jwIUVX0OEntgwRd5B/WwQ=
|
||||||
</data>
|
</data>
|
||||||
<key>hash2</key>
|
<key>hash2</key>
|
||||||
<data>
|
<data>
|
||||||
50zbkPXpRw51MqtsqNcP0+k4Pc+OtaR5yAHtevRDSkk=
|
XZCnoxbK69pg1k+8mjeqecZYO3HlsHatLJZfHDbnvxg=
|
||||||
</data>
|
</data>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Main.storyboardc/Info.plist</key>
|
<key>Main.storyboardc/Info.plist</key>
|
||||||
|
|
@ -227,11 +231,11 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<data>
|
<data>
|
||||||
KJf7T46HZ+IyKHtg4fNSk7WKMfc=
|
ExBQ7905hQq27b1OmZtQYb10SUA=
|
||||||
</data>
|
</data>
|
||||||
<key>hash2</key>
|
<key>hash2</key>
|
||||||
<data>
|
<data>
|
||||||
rZ/bEJqkZvuoeNLKN0CdxjPoEykk1fSvY3ajl+VTdsA=
|
CJLChPH47C+kyRUvM0WdOj890GPH9KOi6tDcZ5SWc90=
|
||||||
</data>
|
</data>
|
||||||
</dict>
|
</dict>
|
||||||
<key>bootstrap.tar.gz</key>
|
<key>bootstrap.tar.gz</key>
|
||||||
|
|
@ -245,6 +249,17 @@
|
||||||
oPDjxT618z33oRg9OzyDpiDLrILb//b8JERKt0c8Kbw=
|
oPDjxT618z33oRg9OzyDpiDLrILb//b8JERKt0c8Kbw=
|
||||||
</data>
|
</data>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>ctbypass.gz</key>
|
||||||
|
<dict>
|
||||||
|
<key>hash</key>
|
||||||
|
<data>
|
||||||
|
JdQt3oVn0+ahtpB//zvjuxhaQoQ=
|
||||||
|
</data>
|
||||||
|
<key>hash2</key>
|
||||||
|
<data>
|
||||||
|
Xjb0unJ9d55XZiu3iii2FmlDbQD/67ZfEs6u02uWtgk=
|
||||||
|
</data>
|
||||||
|
</dict>
|
||||||
<key>essential_0-4_iphoneos-arm.deb</key>
|
<key>essential_0-4_iphoneos-arm.deb</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
|
|
|
||||||
Binary file not shown.
BIN
other/taurine/Applications/taurine.app/ctbypass.gz
Normal file
BIN
other/taurine/Applications/taurine.app/ctbypass.gz
Normal file
Binary file not shown.
Loading…
Add table
Reference in a new issue