An update

- Recompile futurerestore for Bionic
- Allow ipwndfu for A6 devices in recovery
- Add Ubuntu 20.10 to support (untested and not even released yet but it most likely will work anyway)
This commit is contained in:
LukeeGD 2020-09-07 15:55:38 +08:00
parent ce1d47c88a
commit de6e5792bf

View File

@ -38,7 +38,7 @@ function Main {
echo echo
if [[ $OSTYPE == "linux-gnu" ]]; then if [[ $OSTYPE == "linux-gnu" ]]; then
platform='linux' platform="linux"
bspatch="bspatch" bspatch="bspatch"
ideviceenterrecovery="ideviceenterrecovery" ideviceenterrecovery="ideviceenterrecovery"
ideviceinfo="ideviceinfo" ideviceinfo="ideviceinfo"
@ -52,7 +52,7 @@ function Main {
[[ $UBUNTU_CODENAME == "bionic" ]] && futurerestore2="${futurerestore2}_bionic" [[ $UBUNTU_CODENAME == "bionic" ]] && futurerestore2="${futurerestore2}_bionic"
elif [[ $OSTYPE == "darwin"* ]]; then elif [[ $OSTYPE == "darwin"* ]]; then
platform='macos' platform="macos"
lsusb="system_profiler SPUSBDataType 2>/dev/null" lsusb="system_profiler SPUSBDataType 2>/dev/null"
bspatch="resources/tools/bspatch_$platform" bspatch="resources/tools/bspatch_$platform"
ideviceenterrecovery="resources/libimobiledevice_$platform/ideviceenterrecovery" ideviceenterrecovery="resources/libimobiledevice_$platform/ideviceenterrecovery"
@ -122,7 +122,12 @@ function Main {
Log "Downgrading $ProductType in kDFU/pwnDFU mode..." Log "Downgrading $ProductType in kDFU/pwnDFU mode..."
SelectVersion SelectVersion
elif [[ $RecoveryDevice == 1 ]] && [[ $A7Device != 1 ]]; then elif [[ $RecoveryDevice == 1 ]] && [[ $A7Device != 1 ]]; then
Error "32-bit device detected in recovery mode. Please put the device in normal mode and jailbroken before proceeding" "For usage of 32-bit ipwndfu, put the device in DFU mode (A6) or pwnDFU mode (A5 using Arduino)" read -p "$(Input 'Is this an A6 device in recovery mode? (y/N) ')" DFUManual
if [[ $DFUManual == y ]] || [[ $DFUManual == Y ]]; then
Recovery
else
Error "32-bit device detected in recovery mode. Please put the device in normal mode and jailbroken before proceeding" "For usage of 32-bit ipwndfu, put the device in Recovery/DFU mode (A6) or pwnDFU mode (A5 using Arduino)"
fi
fi fi
if [[ $1 ]] && [[ $1 != 'NoColor' ]]; then if [[ $1 ]] && [[ $1 != 'NoColor' ]]; then
@ -274,7 +279,7 @@ function Recovery {
sleep 2 sleep 2
done done
fi fi
Log "A7 device in recovery mode detected. Get ready to enter DFU mode" Log "Device in recovery mode detected. Get ready to enter DFU mode"
read -p "$(Input 'Select Y to continue, N to exit recovery (Y/n) ')" RecoveryDFU read -p "$(Input 'Select Y to continue, N to exit recovery (Y/n) ')" RecoveryDFU
if [[ $RecoveryDFU == n ]] || [[ $RecoveryDFU == N ]]; then if [[ $RecoveryDFU == n ]] || [[ $RecoveryDFU == N ]]; then
Log "Exiting recovery mode." Log "Exiting recovery mode."
@ -454,33 +459,35 @@ function InstallDependencies {
Log "Installing dependencies..." Log "Installing dependencies..."
if [[ $ID == "arch" ]] || [[ $ID_LIKE == "arch" ]]; then if [[ $ID == "arch" ]] || [[ $ID_LIKE == "arch" ]]; then
# Arch Linux # Arch
sudo pacman -Sy --noconfirm --needed bsdiff curl libcurl-compat libpng12 libimobiledevice libusbmuxd libzip openssh openssl-1.0 python2 unzip usbmuxd usbutils sudo pacman -Sy --noconfirm --needed bsdiff curl libcurl-compat libpng12 libimobiledevice libusbmuxd libzip openssh openssl-1.0 python2 unzip usbmuxd usbutils
ln -sf /usr/lib/libcurl.so.3 ../resources/lib/libcurl.so.3 ln -sf /usr/lib/libcurl.so.3 ../resources/lib/libcurl.so.3
ln -sf /usr/lib/libzip.so.5 ../resources/lib/libzip.so.4 ln -sf /usr/lib/libzip.so.5 ../resources/lib/libzip.so.4
elif [[ $UBUNTU_CODENAME == "bionic" ]] || [[ $UBUNTU_CODENAME == "focal" ]]; then elif [[ $UBUNTU_CODENAME == "bionic" ]] || [[ $UBUNTU_CODENAME == "focal" ]] || [[ $UBUNTU_CODENAME == "groovy" ]]; then
# Ubuntu Bionic and Focal # Ubuntu
sudo add-apt-repository universe sudo add-apt-repository universe
sudo apt update sudo apt update
sudo apt install -y bsdiff curl git libimobiledevice-utils libplist3 libusbmuxd-tools openssh-client usbmuxd usbutils sudo apt install -y bsdiff curl git libimobiledevice-utils libplist3 libusbmuxd-tools openssh-client usbmuxd usbutils
SavePkg SavePkg
cp libcurl.so.4.5.0 ../resources/lib/libcurl.so.3
if [[ $UBUNTU_CODENAME == "bionic" ]]; then if [[ $UBUNTU_CODENAME == "bionic" ]]; then
sudo apt install -y libzip4 python sudo apt install -y libzip4 python
sudo dpkg -i libpng12_bionic.deb libzip5.deb sudo dpkg -i libpng12_bionic.deb libzip5.deb
SaveFile https://github.com/LukeZGD/iOS-OTA-Downgrader-Keys/releases/download/tools/tools_linux_bionic.zip tools_linux_bionic.zip 34300e26cf34e8d0e2b36c8545268eb4b645d1b3 SaveFile https://github.com/LukeZGD/iOS-OTA-Downgrader-Keys/releases/download/tools/tools_linux_bionic.zip tools_linux_bionic.zip 2fb44dbb6c167ba6f7782521454503998a285751
unzip tools_linux_bionic.zip -d ../resources/tools unzip tools_linux_bionic.zip -d ../resources/tools
else else
sudo apt install -y libusbmuxd6 libzip5 python2 sudo apt install -y libusbmuxd6 libzip5 python2
sudo dpkg -i libssl1.0.0.deb libpng12.deb libzip4.deb sudo dpkg -i libssl1.0.0.deb libpng12.deb libzip4.deb
fi
if [[ $UBUNTU_CODENAME == "focal" ]]; then
ln -sf /usr/lib/x86_64-linux-gnu/libimobiledevice.so.6 ../resources/lib/libimobiledevice-1.0.so.6 ln -sf /usr/lib/x86_64-linux-gnu/libimobiledevice.so.6 ../resources/lib/libimobiledevice-1.0.so.6
ln -sf /usr/lib/x86_64-linux-gnu/libplist.so.3 ../resources/lib/libplist-2.0.so.3 ln -sf /usr/lib/x86_64-linux-gnu/libplist.so.3 ../resources/lib/libplist-2.0.so.3
ln -sf /usr/lib/x86_64-linux-gnu/libusbmuxd.so.6 ../resources/lib/libusbmuxd-2.0.so.6 ln -sf /usr/lib/x86_64-linux-gnu/libusbmuxd.so.6 ../resources/lib/libusbmuxd-2.0.so.6
fi fi
cp libcurl.so.4.5.0 ../resources/lib/libcurl.so.3
elif [[ $ID == "fedora" ]]; then elif [[ $ID == "fedora" ]]; then
# Fedora 32 # Fedora
sudo dnf install -y binutils bsdiff git libimobiledevice-utils libpng12 libusbmuxd-utils libzip perl-Digest-SHA python2 sudo dnf install -y binutils bsdiff git libimobiledevice-utils libpng12 libusbmuxd-utils libzip perl-Digest-SHA python2
SavePkg SavePkg
ar x libssl1.0.0.deb data.tar.xz ar x libssl1.0.0.deb data.tar.xz
@ -644,7 +651,7 @@ function BasebandDetect {
fi fi
iBEC="iBEC.$iBSS.RELEASE" iBEC="iBEC.$iBSS.RELEASE"
iBSS="iBSS.$iBSS.RELEASE" iBSS="iBSS.$iBSS.RELEASE"
SEP=sep-firmware.$HWModel.RELEASE.im4p SEP="sep-firmware.$HWModel.RELEASE.im4p"
} }
Main $1 Main $1