From 39b36419896050d59b8bd3cb90f23b35f229e9d0 Mon Sep 17 00:00:00 2001 From: LukeeGD Date: Fri, 18 Sep 2020 10:17:57 +0800 Subject: [PATCH] Small update and add compile script --- resources/futurerestore.sh | 58 ++++++++++++++++++++++++++++++++++++++ restore.sh | 2 +- 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 resources/futurerestore.sh diff --git a/resources/futurerestore.sh b/resources/futurerestore.sh new file mode 100644 index 0000000..97a6270 --- /dev/null +++ b/resources/futurerestore.sh @@ -0,0 +1,58 @@ +#!/bin/bash +libipatcher=0 +PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig + +# This script can be used to compile tools used by iOS-OTA-Downgrader for Linux + +function Clone { + git clone $3 https://github.com/$1/$2 +} + +function Compile { + Clone $1 $2 $3 + cd $2 + [[ $2 == libipatcher ]] && git checkout v1 + if [[ $2 == libimobiledevice ]]; then + ./autogen.sh + elif [[ -e autogen.sh ]]; then + ./autogen.sh --enable-static --disable-shared + fi + make + sudo make install + cd .. +} + +. /etc/os-release +if [[ ! -z $UBUNTU_CODENAME ]]; then + sudo apt update + sudo apt install -y libtool automake g++ python-dev libzip-dev libcurl4-openssl-dev cmake libssl-dev libusb-1.0-0-dev libreadline-dev libbz2-dev libpng-dev pkg-config git +elif [[ $ID == fedora ]]; then + sudo dnf install automake gcc-g++ libcurl-devel libusb-devel libtool libzip-devel make openssl-devel pkgconf-pkg-config readline-devel +fi + +Compile matteyeux partial-zip #partialzip_linux +Compile lzfse lzfse +Compile libimobiledevice libplist +Compile libimobiledevice libusbmuxd +Compile libimobiledevice libimobiledevice +Compile LukeZGD libirecovery #irecovery_linux +Compile tihmstar libgeneral +Compile tihmstar libfragmentzip +Compile tihmstar img4tool + +if [[ $libipatcher != 0 ]]; then + Clone Merculous xpwn + cd xpwn + sudo python3 install.py + cd .. + Compile tihmstar libipatcher --recursive +fi + +Compile tihmstar tsschecker --recursive #tsschecker_linux +Compile LukeZGD futurerestore --recursive #futurerestore2_linux + +mkdir tools +cp partial-zip/partialzip tools/partialzip_linux +cp libirecovery/tools/irecovery tools/irecovery_linux +cp tsschecker/tsschecker/tsschecker tools/tsschecker_linux +cp futurerestore/futurerestore/futurerestore tools/futurerestore2_linux diff --git a/restore.sh b/restore.sh index 5b5bf8a..3d762ef 100755 --- a/restore.sh +++ b/restore.sh @@ -287,7 +287,7 @@ function kDFU { Echo "* Press POWER or HOME button when screen goes black on the device" Log "Finding device in DFU mode..." while [[ $DFUDevice != 1 ]]; do - [[ $platform == linux ]] && [[ $(lsusb | grep -c '1227') == 1 ]] && DFUDevice=1 + [[ $platform == linux ]] && DFUDevice=$(lsusb | grep -c '1227') [[ $platform == macos ]] && [[ $($irecovery -q 2>/dev/null | grep 'MODE' | cut -c 7-) == "DFU" ]] && DFUDevice=1 sleep 1 done