Update README add more notes

This commit is contained in:
LukeeGD 2020-08-10 22:08:15 +08:00
parent 43abc41ca3
commit 6f29f7d04a
2 changed files with 26 additions and 19 deletions

View File

@ -1,25 +1,27 @@
# iOS-OTA-Downgrader # iOS-OTA-Downgrader
### (formerly 32bit-OTA-Downgrader) ### (formerly 32bit-OTA-Downgrader)
### Downgrade/restore iOS devices to signed OTA firmwares ### Downgrade/restore iOS devices to signed OTA firmwares
- **Please see "Other notes" below to serve as answers for FAQs** - **Please see the "Other notes" section below to serve as answers for FAQs**
## Supported devices: ## Supported devices:
- **iOS 10.3.3**: All A7 devices are supported **except iPad4,6 iPad4,7 iPad4,8 iPad4,9** - **iOS 10.3.3**: All A7 devices are supported **except iPad4,6 and all iPad mini 3 models**
- **iOS 8.4.1**: All A5, A5X, A6, and A6X devices are supported **except iPhone5,3 and 5,4 (iPhone 5C)** - **iOS 8.4.1**: All A5, A5X, A6, and A6X devices are supported **except iPhone5,3 and 5,4 (iPhone 5C)**
- **iOS 6.1.3**: Only iPhone 4S and iPad 2 devices are supported **except iPad2,4 (iPad 2 Rev A)** - **iOS 6.1.3**: Only iPhone 4S and iPad 2 devices are supported **except iPad2,4 (iPad 2 Rev A)**
## Prerequisites: ## Prerequisites:
- A supported device: - **A supported device:**
- A 32-bit iOS device (any version, **jailbreak needed**) - A 32-bit iOS device (any version, **jailbreak needed**)
- An A7 device (any version, jailbreak not needed) - An A7 device (any version, jailbreak not needed)
- An IPSW for the version you want to downgrade to (the script can also download it for you) - An IPSW for the version you want to downgrade to (the script can also download it for you)
- A **macOS** or a **64-bit Linux install/live USB** (see distros tested on below) (a live USB can be easily created with tools like [balenaEtcher](https://www.balena.io/etcher/) or [Rufus](https://rufus.ie/)) - A **macOS** or a **64-bit Linux install/live USB**
- See supported Linux distros below
- A live USB can be easily created with tools like [balenaEtcher](https://www.balena.io/etcher/) or [Rufus](https://rufus.ie/))
- All 32-bit users must install [OpenSSH](https://cydia.saurik.com/package/openssh/) - All 32-bit users must install [OpenSSH](https://cydia.saurik.com/package/openssh/)
- A6/A6X iOS 10 users must install [Dropbear (deb)](http://www.mediafire.com/file/m2wzque7zsa87lp/Dropbear.deb/file) as well - A6/A6X iOS 10 users must install [Dropbear (deb)](http://www.mediafire.com/file/m2wzque7zsa87lp/Dropbear.deb/file) as well
- For kDFU mode to work on Pangu 32-bit, install the [latest Pangu 7.1.x Untether (deb)](http://apt.saurik.com/debs/io.pangu.axe7_0.3_iphoneos-arm.deb) or [latest Pangu 8.0-8.1.x Untether (deb)](http://apt.saurik.com/debs/io.pangu.xuanyuansword8_0.5_iphoneos-arm.deb) - For 32-bit users using Pangu, install the [latest Pangu 7.1.x Untether (deb)](http://apt.saurik.com/debs/io.pangu.axe7_0.3_iphoneos-arm.deb) or [latest Pangu 8.0-8.1.x Untether (deb)](http://apt.saurik.com/debs/io.pangu.xuanyuansword8_0.5_iphoneos-arm.deb)
1. [Download](https://github.com/LukeZGD/iOS-OTA-Downgrader/archive/master.zip) or `git clone` this repo 1. [Download](https://github.com/LukeZGD/iOS-OTA-Downgrader/archive/master.zip) or `git clone` this repo
2. Open Terminal, `cd` to the directory where the script is located (example: `cd /home/user/iOS-OTA-Downgrader`) 2. Open Terminal and `cd` to the directory where the script is located (example: `cd /home/user/iOS-OTA-Downgrader`)
3. Run `chmod +x restore.sh` 3. Run `chmod +x restore.sh`
## How to use: ## How to use:
@ -30,22 +32,25 @@
## Other notes: ## Other notes:
- **You do NOT need blobs to use this**, the script will get them for you - **You do NOT need blobs to use this**, the script will get them for you
- This script will verify the IPSW with SHA1sum before restoring - If the restore process does not work for you, try switching USB ports and/or cables
- 32-bit only: - This script will verify the IPSW SHA1sum before restoring
- For A7 devices:
- Do not use USB-C to lightning cables as this can prevent a successful restore
- checkm8 ipwndfu is unfortunately pretty unreliable, you may have to try multiple times
- If the script can't find your device in pwnREC mode or gets stuck, you may have to start over
- For 32-bit devices:
- This script does not modify the IPSW - This script does not modify the IPSW
- To devices with baseband, this script will restore your device with the latest baseband - To devices with baseband, this script will restore your device with the latest baseband
- This script has a workaround for the activation error on devices downgrading from iOS 10 - This script has a workaround for the activation error on devices downgrading from iOS 10
- This script uses futurerestore "Odysseus method" for downgrading (different from OdysseusOTA/2, which are deprecated)
- This script only uses iBSS patches for entering kDFU mode
- This script can also be used to just enter kDFU mode for all supported devices - This script can also be used to just enter kDFU mode for all supported devices
- This script can also be used to futurerestore to other iOS versions with provided SHSH blobs - This script can also restore your device to other iOS versions with provided SHSH blobs
- This script can work on virtual machines, but I won't provide support for them - This script can work on virtual machines, but I won't provide support for them
## OS versions/distros tested on: ## Supported OS versions/distros:
- [Ubuntu 20.04](http://releases.ubuntu.com/focal/) (and Focal-based distros like [Linux Mint 20](https://www.linuxmint.com/)) - [Ubuntu 20.04](http://releases.ubuntu.com/focal/) and Focal-based distros like [Linux Mint 20](https://www.linuxmint.com/)
- [Arch Linux](https://www.archlinux.org/) (and Arch-based distros like [Manjaro](https://manjaro.org/)) - [Arch Linux](https://www.archlinux.org/) and Arch-based distros like [Manjaro](https://manjaro.org/)
- [Fedora 32](https://getfedora.org/) - [Fedora 32](https://getfedora.org/)
- macOS 10.13.6 High Sierra, 10.14.6 Mojave, 10.15.5 Catalina - macOS 10.13 High Sierra, 10.14 Mojave, 10.15 Catalina
## Tools and other stuff used by this script: ## Tools and other stuff used by this script:
- cURL - cURL
@ -59,7 +64,6 @@
- [futurerestore 152](http://api.tihmstar.net/builds/futurerestore/futurerestore-latest.zip) (32-bit) - [futurerestore 152](http://api.tihmstar.net/builds/futurerestore/futurerestore-latest.zip) (32-bit)
- [futurerestore 249 (Linux)](https://github.com/LukeZGD/futurerestore) (A7) - [futurerestore 249 (Linux)](https://github.com/LukeZGD/futurerestore) (A7)
- [futurerestore 245 (macOS)](https://github.com/MatthewPierson/Vieux/blob/master/resources/bin/futurerestore) - [futurerestore 245 (macOS)](https://github.com/MatthewPierson/Vieux/blob/master/resources/bin/futurerestore)
- [xpwntool](https://www.youtube.com/watch?v=fh0tB6fp0Sc)
- [kloader](https://www.youtube.com/watch?v=fh0tB6fp0Sc) - [kloader](https://www.youtube.com/watch?v=fh0tB6fp0Sc)
- [kloader5 for iOS 5](https://mtmdev.org/pmbonneau-archive) - [kloader5 for iOS 5](https://mtmdev.org/pmbonneau-archive)
- [kloader_hgsp for iOS 10](https://twitter.com/nyan_satan/status/945203180522045440) - [kloader_hgsp for iOS 10](https://twitter.com/nyan_satan/status/945203180522045440)

View File

@ -290,7 +290,10 @@ function Downgrade {
IPSW="${IPSW}_${OSVer}_${BuildVer}_Restore" IPSW="${IPSW}_${OSVer}_${BuildVer}_Restore"
IPSWCustom="${ProductType}_${OSVer}_${BuildVer}_Custom" IPSWCustom="${ProductType}_${OSVer}_${BuildVer}_Custom"
if [ ! -e $IPSW.ipsw ]; then if [ ! -e $IPSW.ipsw ]; then
Log "iOS $OSVer IPSW cannot be found. Downloading IPSW..." Log "iOS $OSVer IPSW cannot be found."
echo "* If you already downloaded the IPSW, did you put it in the same directory as the script?"
echo "* Do NOT rename the IPSW as the script will fail to detect it"
Log "Downloading IPSW... (Press Ctrl+C to cancel)"
curl -L $(cat $Firmware/$BuildVer/url) -o tmp/$IPSW.ipsw curl -L $(cat $Firmware/$BuildVer/url) -o tmp/$IPSW.ipsw
mv tmp/$IPSW.ipsw . mv tmp/$IPSW.ipsw .
fi fi
@ -461,7 +464,7 @@ function InstallDependencies {
brew install make automake autoconf libtool pkg-config gcc brew install make automake autoconf libtool pkg-config gcc
else else
Error "Distro not detected/supported by the install script." "See the repo README for OS versions/distros tested on" Error "Distro not detected/supported by the install script." "See the repo README for supported OS versions/distros"
fi fi
Compile libimobiledevice libirecovery Compile libimobiledevice libirecovery