An update

This commit is contained in:
LukeZGD 2023-01-04 16:25:18 +08:00
parent 3b42a1b2c3
commit 9ab3fd4968
4 changed files with 20 additions and 16 deletions

View File

@ -4,7 +4,7 @@
- **iPhone4Down: Downgrade your iPhone 4 on Linux/Windows (using powdersn0w)** - **iPhone4Down: Downgrade your iPhone 4 on Linux/Windows (using powdersn0w)**
- **Linux, macOS, and Windows** are supported - **Linux, macOS, and Windows** are supported
- Windows usage is not recommended - Windows usage is not recommended
- iPhone4Down focuses on Linux support - use [cherryflowerJB](https://web.archive.org/web/20210701000000*/https://dora2ios.web.app/CFJB/) or [powdersn0w](https://dora2ios.web.app/konayuki/index.html) on macOS instead - iPhone4Down focuses on Linux support - use [cherryflowerJB](https://web.archive.org/web/20210322151509/https://dora2ios.web.app/CFJB/) or [powdersn0w](https://web.archive.org/web/20221213010446/https://dora2ios.web.app/konayuki/index.html) on macOS instead
- **Read the ["How to Use" wiki page](https://github.com/LukeZGD/iOS-OTA-Downgrader/wiki/How-to-Use) for a step-by-step tutorial** - **Read the ["How to Use" wiki page](https://github.com/LukeZGD/iOS-OTA-Downgrader/wiki/How-to-Use) for a step-by-step tutorial**
- **Read the ["Troubleshooting" wiki page](https://github.com/LukeZGD/iOS-OTA-Downgrader/wiki/Troubleshooting) for tips, frequent questions, and troubleshooting** - **Read the ["Troubleshooting" wiki page](https://github.com/LukeZGD/iOS-OTA-Downgrader/wiki/Troubleshooting) for tips, frequent questions, and troubleshooting**
@ -23,7 +23,7 @@
- iPhone 5C can still be restored to versions that you have SHSH blobs for - iPhone 5C can still be restored to versions that you have SHSH blobs for
- iPhone 4 devices also support restoring with SHSH blobs - iPhone 4 devices also support restoring with SHSH blobs
- **iPhone4Down supports iPhone 4 GSM and CDMA (iPhone3,1 and iPhone3,3)** - **iPhone4Down supports iPhone 4 GSM and CDMA (iPhone3,1 and iPhone3,3)**
- iPhone3,3 support is not tested. Use [powdersn0w](https://dora2ios.web.app/konayuki/index.html) on macOS instead - iPhone3,3 support is not tested. Use [powdersn0w](https://web.archive.org/web/20221213010446/https://dora2ios.web.app/konayuki/index.html) on macOS instead
<table> <table>
<thead> <thead>
@ -72,6 +72,7 @@
</details> </details>
## Supported OS versions/distros ## Supported OS versions/distros
#### Supported architectures: x86_64, armhf (Linux), arm64 (macOS only for now)
- [**Ubuntu**](https://ubuntu.com/) 20.04 and newer, and Ubuntu-based distros like [Linux Mint](https://www.linuxmint.com/) - [**Ubuntu**](https://ubuntu.com/) 20.04 and newer, and Ubuntu-based distros like [Linux Mint](https://www.linuxmint.com/)
- [**Arch Linux**](https://www.archlinux.org/) and Arch-based distros like [EndeavourOS](https://endeavouros.com/) - [**Arch Linux**](https://www.archlinux.org/) and Arch-based distros like [EndeavourOS](https://endeavouros.com/)
- [**Fedora**](https://getfedora.org/) 36 and newer - [**Fedora**](https://getfedora.org/) 36 and newer

View File

@ -181,7 +181,7 @@ SaveExternal() {
Name=ch3rryflower Name=ch3rryflower
SHA1=790d56db354151b9740c929e52c097ba57f2929d SHA1=790d56db354151b9740c929e52c097ba57f2929d
elif [[ $1 == "powdersn0w" ]]; then elif [[ $1 == "powdersn0w" ]]; then
Link=https://dora2ios.github.io/download/konayuki/powdersn0w_v2.0b3.zip Link=https://web.archive.org/web/20220802230119if_/https://dora2ios.github.io/download/konayuki/powdersn0w_v2.0b3.zip
Name=powdersn0w Name=powdersn0w
SHA1=c733aac4a0833558ef9f5517f2a11ca547110b6e SHA1=c733aac4a0833558ef9f5517f2a11ca547110b6e
fi fi
@ -252,7 +252,8 @@ InstallDepends() {
(( DebianVer >= 11 )) || [[ $DebianVer == "sid" ]]; then (( DebianVer >= 11 )) || [[ $DebianVer == "sid" ]]; then
[[ -n $UBUNTU_CODENAME ]] && sudo add-apt-repository -y universe [[ -n $UBUNTU_CODENAME ]] && sudo add-apt-repository -y universe
sudo apt update sudo apt update
sudo apt install -y bsdiff curl jq libimobiledevice6 openssh-client python2 python3 unzip usbmuxd usbutils xmlstarlet xxd zenity zip sudo apt install -y bsdiff curl jq libimobiledevice6 openssh-client python3 unzip usbmuxd usbutils xmlstarlet xxd zenity zip
[[ $DebianVer != "sid" ]] && sudo apt install -y python2
sudo systemctl enable --now udev systemd-udevd usbmuxd 2>/dev/null sudo systemctl enable --now udev systemd-udevd usbmuxd 2>/dev/null
elif [[ $ID == "fedora" || $ID == "nobara" ]] && (( VERSION_ID >= 36 )); then elif [[ $ID == "fedora" || $ID == "nobara" ]] && (( VERSION_ID >= 36 )); then

View File

@ -229,7 +229,7 @@ EnterPwnDFU() {
local pwnD=1 local pwnD=1
local Selection=() local Selection=()
if [[ $DeviceProc == 4 && $platform != "macos" ]]; then if [[ $ProductType == "iPhone3,1" && $platform != "macos" ]]; then
pwnDFUTool="$pwnedDFU" pwnDFUTool="$pwnedDFU"
if [[ $platform == "win" ]]; then if [[ $platform == "win" ]]; then
Log "iPhone 4 device detected in DFU mode." Log "iPhone 4 device detected in DFU mode."
@ -239,7 +239,7 @@ EnterPwnDFU() {
read -s read -s
return return
fi fi
elif [[ $DeviceProc == 7 ]]; then elif [[ $DeviceProc == 4 || $DeviceProc == 7 ]]; then
[[ $platform == "macos" ]] && Selection+=("ipwnder_lite" "iPwnder32") [[ $platform == "macos" ]] && Selection+=("ipwnder_lite" "iPwnder32")
Input "PwnDFU Tool Option" Input "PwnDFU Tool Option"
Echo "* This option selects what tool to use to put your device in pwnDFU mode." Echo "* This option selects what tool to use to put your device in pwnDFU mode."

View File

@ -86,7 +86,7 @@ Main() {
fi fi
if [[ ! $platform ]]; then if [[ ! $platform ]]; then
Error "Platform unknown/not supported." Error "Platform is unknown/not supported." "Supported platforms: macOS, Linux, Windows"
fi fi
if [[ -d .git ]]; then if [[ -d .git ]]; then
@ -137,17 +137,19 @@ Main() {
fi fi
fi fi
if [[ $platform == "macos" && $(uname -m) != "x86_64" ]]; then if [[ $(uname -m) != "x86_64" && $(uname -m) == "a"* ]]; then
if [[ $platform == "macos" ]]; then
Log "Apple Silicon Mac detected. Support may be limited, proceed at your own risk." Log "Apple Silicon Mac detected. Support may be limited, proceed at your own risk."
elif [[ $platform == "linux" && $(uname -m) == "a"* ]]; then elif [[ $platform == "linux" ]]; then
Log "Linux ARM detected. Support may be limited, proceed at your own risk." Log "Linux ARM ($(uname -m)) detected. Support may be limited, proceed at your own risk."
Echo "* Note that only 32-bit (armhf) is compiled natively for now. For 64-bit, box64 might work." Echo "* Note that only 32-bit (armhf) is compiled natively for now. For 64-bit, get the x86_64 version and box64 might work."
if [[ $(getconf LONG_BIT) != 64 ]]; then [[ $(getconf LONG_BIT) != 64 ]] && LinuxARM=1
LinuxARM=1 elif [[ $platform == "win" ]]; then
Log "WARNING - Windows ARM is not tested or supported."
Echo "* You must be using Windows 11 on ARM or newer."
fi fi
elif [[ $(uname -m) != "x86_64" ]]; then elif [[ $(uname -m) != "x86_64" ]]; then
Error "Only 64-bit (x86_64) distributions are supported." Error "Platform architecture ($(uname -m)) is not supported." "Supported architectures: x86_64, armhf (Linux), arm64 (macOS only for now)"
fi fi
if [[ $1 == "Install" || -z $bspatch || ! -e $ideviceinfo || ! -e $irecoverychk || if [[ $1 == "Install" || -z $bspatch || ! -e $ideviceinfo || ! -e $irecoverychk ||