Skip to content

Commit

Permalink
Disable IPSW jailbreak option for S5L8900, and other changes
Browse files Browse the repository at this point in the history
  • Loading branch information
LukeZGD committed Mar 14, 2024
1 parent f666255 commit b416862
Show file tree
Hide file tree
Showing 10 changed files with 29 additions and 6 deletions.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,15 @@
## Features
- Legacy iOS Kit supports all 32-bit iOS devices, and some 64-bit (A7/A8/A9/A10) devices
- Devices that received iOS 16 and newer are not supported and only have limited functionality (such as sideload on Linux etc.)
- S5L8900 devices (iPhone 2G, 3G, touch 1) are only partially supported, some features may not work properly
- Restore to signed OTA versions (iOS 8.4.1 and/or 6.1.3) on A5/A6 devices
- Restore some 32-bit devices to other iOS versions without blobs
- This includes downgrading iPhone 3GS, iPhone 4 GSM and CDMA, iPod touch 2, touch 3, iPad 1
- Restore with SHSH blobs on supported devices
- Restore to other iOS versions with iOS 7 blobs (powdersn0w)
- Tethered restores to other iOS versions for A5/A6 and other devices
- Jailbreak all 32-bit iOS devices on (almost) any iOS version
- Available on iOS versions 3.1.3 to 9.3.4
- Available on iOS versions 3.1 to 9.3.4
- Only unsupported versions are iOS 9.0.x
- Hacktivation for iPhone 2G, 3G, 3GS, 4 GSM (activate without valid SIM card)
- Restore to iOS 10.3.3 (signed OTA version) on supported A7 devices
Expand Down
Binary file modified bin/linux/arm64/idevicerestore
Binary file not shown.
Binary file modified bin/linux/arm64/tsschecker
Binary file not shown.
Binary file modified bin/linux/armhf/idevicerestore
Binary file not shown.
Binary file modified bin/linux/armhf/tsschecker
Binary file not shown.
Binary file modified bin/linux/x86_64/idevicerestore
Binary file not shown.
Binary file modified bin/linux/x86_64/tsschecker
Binary file not shown.
Binary file modified bin/macos/idevicerestore
Binary file not shown.
Binary file modified bin/macos/tsschecker
Binary file not shown.
32 changes: 27 additions & 5 deletions restore.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1704,7 +1704,7 @@ ipsw_preference_set() {
fi

case $device_latest_vers in
7.1.2 | 6.1.6 | 5.1.1 | 4.2.1 | 3.1.3 ) ipsw_canjailbreak=1;;
[7654]* ) ipsw_canjailbreak=1;;
esac
if [[ $device_target_vers == "$device_latest_vers" && $ipsw_canjailbreak != 1 ]]; then
return
Expand All @@ -1714,11 +1714,23 @@ ipsw_preference_set() {

case $device_target_vers in
9.3.[1234] | 9.3 | 9.2* | 9.1 | [87654]* ) ipsw_canjailbreak=1;;
3.1.3 )
log "Jailbreak option is not available, but you may jailbreak (and hacktivate) later after the restore"
print "* To jailbreak, select \"Jailbreak Device\" in the main menu"
print "* To hacktivate, go to \"Other Utilities -> Hacktivate Device\" after jailbreaking"
;;
esac
if [[ $device_proc == 5 ]]; then
case $device_target_vers in
8.2 | 8.[10]* ) ipsw_canjailbreak=;;
esac
elif [[ $device_type == "iPhone2,1" || $device_type == "iPod2,1" ]]; then
case $device_target_vers in
3.1* )
ipsw_canjailbreak=1
warn "Jailbreak option might have issues on versions below 3.1.3. I recommend selecting 3.1.3 or newer instead"
;;
esac
fi

if [[ $device_target_powder == 1 ]]; then
Expand Down Expand Up @@ -5181,7 +5193,7 @@ menu_restore_more() {
menu_items+=("4.3.5" "4.3.4" "4.3.2" "4.3.1" "4.3")
menu_items+=("4.2.1" "4.0.2" "4.0.1" "4.0" "3.1.2" "3.1" "3.0")
;;
iPod2,1 ) menu_items+=("4.0.2" "4.0");;
iPod2,1 ) menu_items+=("4.0.2" "4.0" "3.1.2" "3.1.1");;
esac
menu_items+=("Go Back")
menu_print_info
Expand All @@ -5193,6 +5205,9 @@ menu_restore_more() {
if [[ -z $1 && $device_type == "iPod2,1" && $device_newbr != 0 ]]; then
warn "These versions are for old bootrom devices only. They may not work on your device"
echo
else
warn "These versions might not work on your device"
echo
fi
input "Select an option:"
select opt in "${menu_items[@]}"; do
Expand Down Expand Up @@ -5800,9 +5815,14 @@ menu_other() {
"Normal" )
menu_items+=("Attempt Activation")
case $device_vers in
[3456]* )
3.1* | [456]* )
case $device_type in
iPhone1* | iPhone[23],1 ) menu_items+=("Hacktivate Device");;
iPhone1* )
if [[ $device_vers == "3.1.3" ]]; then
menu_items+=("Hacktivate Device")
fi
;;
iPhone[23],1 ) menu_items+=("Hacktivate Device");;
esac
;;
esac
Expand Down Expand Up @@ -6201,10 +6221,12 @@ device_hacktivate() {

restore_customipsw() {
print "* You are about to restore with a custom IPSW."
print "* Proceed with caution when restoring to custom IPSWs not made with Legacy iOS Kit."
print "* This option is only for restoring with IPSWs NOT made with Legacy iOS Kit, like whited00r or GeekGrade."
if [[ $device_newbr == 1 ]]; then
warn "Your device is a new bootrom model and custom IPSWs might not be compatible."
print "* For iPhone 3GS, after restoring you will need to go to Other Utilities -> Install alloc8 Exploit"
else
warn "* Do NOT use this option for powdersn0w or jailbreak IPSWs made with Legacy iOS Kit!"
fi
pause
menu_ipsw_browse custom
Expand Down

0 comments on commit b416862

Please sign in to comment.