diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 3e6e28f..0000000 --- a/LICENSE +++ /dev/null @@ -1,29 +0,0 @@ -BSD 3-Clause License - -Copyright (c) 2020, Yaya4 -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md index dceb7f2..e5ce810 100644 --- a/README.md +++ b/README.md @@ -9,32 +9,30 @@ ***Disclaimer: I am not held responsible for any damage done to your device.***
***Note: you must have a computer to launch the script via SSH, you cannot use NewTerm.***
***Note: I recommend that you know what you're doing***
-***Note: After The installtion You Will have Procursus Cydia By Default Free to you to Keep Cydia or install zebra,sileo,installer or other package manager PS : For sileo use odyssey repo, PS: You can uninstall cydia after installed another package manager***
-***Note: That will not give you libhooker please dont install it or that will break your unc0ver install if you really want it use odyssey***
-***Note: If you install sileo from odyssey repo make sur to not update preference loader to 3.0.1 and to have 2.2.5 else tweak settings will not show***
-1) You don't need to restore rootfs anymore, Tweaks/Apps are saved
-2) Refresh sources in Cydia and install `OpenSSH` and `Curl`
-3) Find the IP of your iDevice and connect to it via SSH on your computer. Don't know what SSH is or how to use it? Refer to: https://www.hostinger.com/tutorials/ssh-tutorial-how-does-ssh-work
-4) Use the following command in your SSH session for installation:
+1) Restore rootfs with unc0ver
+2) Rejailbreak with unc0ver
+3) Refresh sources in Cydia and install `OpenSSH` and `Curl`
+4) Find the IP of your iDevice and connect via SSH on your computer.
+5) Use the following command in your SSH session for installation:
`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Yaya48/Uncursus/new/installuncursus.sh)"`
-5) Once your device resprings, launch Cydia and you're good to go.
+6) Once your device resprings, launch Sileo and you're good to go.
-***For all users that don't have a PC, I made a Non-Computer version.***
-1) You don't need to restore rootfs anymore, Tweaks/Apps are saved +***For All Users Cannot Have A Pc I Made a Non-Computer Version***
+***Note: Disclimer This still in beta***
+1) Restore Rootfs 2) Add https://repo.yaya48.gq in cydia -3) Install `Uncursus Installer` come with MTerminal as a dependency, newterm isn't supported. -4) Open MTerminal and login as root with your password. Type `su`, then `alpine` (or your root password) -5) Type `uncursus-installer`, then run it and wait -6) When finished, your device will respring. -7) Open Cydia, update your packages and enjoy +3) Install Uncursus Installer +4) Enter In Terminal And Log In As Root With Default Passworld Type: su after alpine +5) Run uncursus-installer and wait +6) When Is Finished Your Device Will Respring After Open Sileo Do Update And Enjoy ### Questions & Support: - Discord: Yaya4#1989 - Twitter: [@Yaya4_4](https://twitter.com/Yaya4_4) -***Note: Support is not for installation help, but for bug reports or asking questions. All installation steps are here***
+***Note: The support is not made for install help but for bug reports or ask questions all install steps is here***
### Credits: [Procursus Team](https://github.com/ProcursusTeam/) - for the bootstrap
-[CoolStar](https://github.com/coolstar/) - Previously for the deploy script (that not used anymore)
+[CoolStar](https://github.com/coolstar/) - for the deploy script
knuckles approver#1119 (on Discord) - for the testing and name of the project
diff --git a/debpatch.zip b/debpatch.zip new file mode 100644 index 0000000..f27be72 Binary files /dev/null and b/debpatch.zip differ diff --git a/debprocursussystem-1500.zip b/debprocursussystem-1500.zip new file mode 100644 index 0000000..2051c24 Binary files /dev/null and b/debprocursussystem-1500.zip differ diff --git a/debprocursussystem-1600.zip b/debprocursussystem-1600.zip new file mode 100644 index 0000000..ad25f60 Binary files /dev/null and b/debprocursussystem-1600.zip differ diff --git a/installuncursus.sh b/installuncursus.sh index af82f42..72fe4c6 100644 --- a/installuncursus.sh +++ b/installuncursus.sh @@ -1,79 +1,69 @@ #!/bin/bash + +need="" + +unzip > /dev/null 2>&1 | need+="unzip " +plutil > /dev/null 2>&1 | need+="com.bingner.plutil " +zsh > /dev/null 2>&1 | need+="zsh " +curl > /dev/null 2>&1 | need+="curl " + if [ "$EUID" -ne 0 ]; then - echo You need to run this script as root. +echo You need to run this script as root. else - need="" - command -v curl >/dev/null 2>&1 || need+="curl " - command -v wget >/dev/null 2>&1 || need+="wget " - clear - echo "Copyright (c) 2020, Yaya4 All rights reserved." - echo -e "\e[31mWelcome to Uncursus Installation Script.\e[0m" - echo "Checking if this script is running on ARM Darwin" - if [ $(uname) = "Linux" ]; then - if [ $(uname -p) = "x86_64" ]; then - PC=yes - fi - fi - if [[ "${PC}" = yes ]]; then - echo "Use this script with SSH over an IP session on your iDevice. Thanks." - exit 1 - else - echo "ARM Darwin detected, running..." - echo "Checking if you're using unc0ver..." - if [[ -f "/.installed_unc0ver" ]]; then - u0=yes - else - u0=no - fi - if [[ "${u0}" = no ]]; then - echo "Use unc0ver, thanks" - exit 1 - else - echo "unc0ver detected" - echo "WARNING: I'M NOT RESPONSIBLE IF ANYTHING GOES WRONG" - echo "If you've found any bugs, please DM Me" - echo "Checking Dependencies..." - if [[ $need != "" ]]; then - echo "Installing Dependencies..." - apt update - apt install $need -y - fi - echo "Pulling and executing the Procursus Migration Script..." - /bin/bash /usr/bin/procursus-migration - echo "Creating a custom directory for the required files. Path (/tmp/uncursus)." - rm -rf /tmp/uncursus - mkdir /tmp/uncursus - mkdir /tmp/uncursus/u0 - echo "Done. Setting Up Uncursus Repo...." - echo "Types: deb" > /etc/apt/sources.list.d/uncursus.sources - echo "URIs: https://repo.yaya48.gq/uncursusrepo/" >> /etc/apt/sources.list.d/uncursus.sources - echo "Suites: iphoneos-arm64/all" >> /etc/apt/sources.list.d/uncursus.sources - echo "Components: main" >> /etc/apt/sources.list.d/uncursus.sources - echo "" >> /etc/apt/sources.list.d/uncursus.sources - mkdir -p /etc/apt/preferences.d/ - echo "Package: *" > /etc/apt/preferences.d/uncursus - echo "Pin: release l=Uncursus" >> /etc/apt/preferences.d/uncursus - echo "Pin-Priority: 1001" >> /etc/apt/preferences.d/uncursus - echo "" >> /etc/apt/preferences.d/uncursus - wget -q https://repo.yaya48.gq/uncursusrepo/pool/main/iphoneos-arm64/com.yaya4.repokeyring.deb --directory-prefix=/tmp/uncursus/ - dpkg -i /tmp/uncursus/com.yaya4.repokeyring.deb - apt update - echo "Done. Installing Procursus Cydia..." - apt purge cydia -y --allow-remove-essential - apt install cydia -y essential -y - echo "Done. Installing necessities..." - apt update - apt install essential-dummy -y lzma -y ncurses -y libidn2 -y - echo "Done. Running Firmware Configuration (./firmware.sh)" - /usr/libexec/firmware - echo "Bootstrap installation complete. Cleaning up..." - rm -rf /tmp/uncursus/ - rm -rf /tmp/procursus-migration/ - rm -rf /tmp/zstd-support/ - echo "All Done." - touch /.procursus_strapped - uicache -p /Applications/Cydia.app - sbreload - fi - fi +clear +echo -e "\e[31mWelcome to Uncursus Installation Script V1.3.2 (Stable) By @Yaya4_4 on Twitter.\e[0m" +echo "WARNING: I'M NOT RESPONSIBLE IF ANYTHING GOES WRONG" +echo "If you've found any bugs, please create an issue in GitHub." +if [ $need != "" ]; then + echo "Installing Dependencies..." + apt update + apt install $need -y +fi +echo "Pulling and executing the Procursus deployment script..." +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Yaya48/Uncursus/new/procursus-deploy-u0.sh)" +echo "Pulling and installing official Procursus debians..." +rm -rf /User/Documents/uncursus +mkdir /User/Documents/uncursus +apt update +apt install wget -y --allow-unauthenticated +VER=$(/usr/bin/plutil -key ProductVersion /System/Library/CoreServices/SystemVersion.plist) +if [[ "${VER%.*}" -ge 12 ]] && [[ "${VER%.*}" -lt 13 ]]; then +echo "Uncursus does not support iOS 12." +elif [[ "${VER%.*}" -ge 13 ]]; then +echo "iOS 13 Dectected Installing iOS 13 Procursus Deb" +wget https://github.com/Yaya48/Uncursus/blob/new/debprocursussystem-1600.zip?raw=true --directory-prefix=/User/Documents/uncursus/ +unzip /User/Documents/uncursus/debprocursussystem-1600.zip?raw=true -d /User/Documents/uncursus/ +dpkg -i /User/Documents/uncursus/debprocursussystem/*.deb +else +echo "iOS 12 Dectected Installing iOS 12 Procursus Deb" +wget https://github.com/Yaya48/Uncursus/blob/new/debprocursussystem-1500.zip?raw=true --directory-prefix=/User/Documents/uncursus/ +unzip /User/Documents/uncursus/debprocursussystem-1500.zip?raw=true -d /User/Documents/uncursus/ +dpkg -i /User/Documents/uncursus/debprocursussystem1500/*.deb +fi +echo "Done. Creating a custom directory for the required files. Path (/User/Documents/)." +mkdir /User/Documents/uncursus/u0 +wget https://github.com/Yaya48/Uncursus/blob/new/debpatch.zip?raw=true --directory-prefix=/User/Documents/uncursus/ +unzip /User/Documents/uncursus/debpatch.zip?raw\=true -d /User/Documents/uncursus/debpatch +rm -rf /usr/bin/cynject +wget https://apt.bingner.com/debs/1443.00/com.ex.substitute_0.1.14_iphoneos-arm.deb --directory-prefix=/User/Documents/uncursus/u0 +wget https://apt.bingner.com/debs/1443.00/com.saurik.substrate.safemode_0.9.6003_iphoneos-arm.deb --directory-prefix=/User/Documents/uncursus/u0 +echo "Done. Installing necessities..." +dpkg -i --force-all /User/Documents/uncursus/debpatch/us.diatr.sileorespring_1.1_iphoneos-arm.deb +dpkg -i --force-all /User/Documents/uncursus/debpatch/coreutils-bin.deb +dpkg -i --force-all /User/Documents/uncursus/debpatch/libssl.deb +dpkg -i --force-all /User/Documents/uncursus/debpatch/lzma.deb +dpkg -i --force-all /User/Documents/uncursus/debpatch/ncurses5-libs.deb +dpkg -i --force-all /User/Documents/uncursus/debpatch/xz.deb +dpkg -i --force-all /User/Documents/uncursus/u0/*.deb +echo "Done. Running Firmware Configuration (./firmware.sh)" +/usr/libexec/firmware +echo "Bootstrap installation complete. Cleaning up..." +rm -rf /User/Documents/uncursus/ +echo "Uninstalling Cydia..." +apt update +apt install cydia -y --allow-unauthenticated +apt purge cydia -y +uicache -a +echo "All Done." +killall SpringBoard fi diff --git a/procursus-deploy-u0.sh b/procursus-deploy-u0.sh new file mode 100644 index 0000000..ae2c507 --- /dev/null +++ b/procursus-deploy-u0.sh @@ -0,0 +1,113 @@ +#!/bin/bash +if [ $(uname) = "Darwin" ]; then + if [ $(uname -p) = "arm" ] || [ $(uname -p) = "arm64" ]; then + echo "It's recommended this script be ran on macOS/Linux with a clean iOS device running checkra1n attached unless migrating from older bootstrap." + ARM=yes + fi + fi + +echo "odysseyra1n deployment script" +echo "(C) 2020, CoolStar. All Rights Reserved" +echo "Uncursus Version" + +echo "" +echo "Before you begin: This script includes experimental migration from older bootstraps to Procursus/Odyssey." +echo "If you're already jailbroken, you can run this script on the checkra1n device." +echo "If you'd rather start clean, please Reset System via the Loader app first." + +if ! which curl >> /dev/null; then + echo "Error: curl not found" + exit 1 +fi +if [[ "${ARM}" = yes ]]; then + if ! which zsh >> /dev/null; then + echo "Error: zsh not found" + exit 1 + fi +else + if which iproxy >> /dev/null; then + iproxy 4444 44 >> /dev/null 2>/dev/null & + else + echo "Error: iproxy not found" + exit 1 + fi +fi +rm -rf odyssey-tmp +mkdir odyssey-tmp +cd odyssey-tmp + +echo '#!/bin/zsh' > odyssey-device-deploy.sh +if [[ ! "${ARM}" = yes ]]; then + echo 'cd /var/root' >> odyssey-device-deploy.sh +fi +echo 'if [[ -f "/.bootstrapped" ]]; then' >> odyssey-device-deploy.sh +echo 'mkdir -p /odyssey && mv migration /odyssey' >> odyssey-device-deploy.sh +echo 'chmod 0755 /odyssey/migration' >> odyssey-device-deploy.sh +echo '/odyssey/migration' >> odyssey-device-deploy.sh +echo 'rm -rf /odyssey' >> odyssey-device-deploy.sh +echo 'else' >> odyssey-device-deploy.sh +echo 'VER=$(/usr/bin/plutil -key ProductVersion /System/Library/CoreServices/SystemVersion.plist)' >> odyssey-device-deploy.sh +echo 'if [[ "${VER%.*}" -ge 12 ]] && [[ "${VER%.*}" -lt 13 ]]; then' >> odyssey-device-deploy.sh +echo 'CFVER=1500' >> odyssey-device-deploy.sh +echo 'elif [[ "${VER%.*}" -ge 13 ]]; then' >> odyssey-device-deploy.sh +echo 'CFVER=1600' >> odyssey-device-deploy.sh +echo 'else' >> odyssey-device-deploy.sh +echo 'echo "${VER} not compatible."' >> odyssey-device-deploy.sh +echo 'exit 1' >> odyssey-device-deploy.sh +echo 'fi' >> odyssey-device-deploy.sh +echo 'gzip -d bootstrap_${CFVER}-ssh.tar.gz' >> odyssey-device-deploy.sh +echo 'mount -uw -o union /dev/disk0s1s1' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/profile' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/profile.d' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/alternatives' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/apt' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/ssl' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/ssh' >> odyssey-device-deploy.sh +echo 'rm -rf /etc/dpkg' >> odyssey-device-deploy.sh +echo 'rm -rf /Library/dpkg' >> odyssey-device-deploy.sh +echo 'rm -rf /var/cache' >> odyssey-device-deploy.sh +echo 'rm -rf /var/lib' >> odyssey-device-deploy.sh +echo 'tar --preserve-permissions -xkf bootstrap_${CFVER}-ssh.tar -C /' >> odyssey-device-deploy.sh +echo '/Library/dpkg/info/openssh.postinst || true' >> odyssey-device-deploy.sh +echo 'launchctl load -w /Library/LaunchDaemons/com.openssh.sshd.plist || true' >> odyssey-device-deploy.sh +echo 'fi' >> odyssey-device-deploy.sh +echo '/usr/libexec/firmware' >> odyssey-device-deploy.sh +echo 'mkdir -p /etc/apt/sources.list.d/' >> odyssey-device-deploy.sh +echo 'echo "Types: deb" > /etc/apt/sources.list.d/odyssey.sources' >> odyssey-device-deploy.sh +echo 'echo "URIs: https://yaya48.github.io/uncursusrepo" >> /etc/apt/sources.list.d/odyssey.sources' >> odyssey-device-deploy.sh +echo 'echo "Suites: ./" >> /etc/apt/sources.list.d/odyssey.sources' >> odyssey-device-deploy.sh +echo 'echo "Components: " >> /etc/apt/sources.list.d/odyssey.sources' >> odyssey-device-deploy.sh +echo 'echo "" >> /etc/apt/sources.list.d/odyssey.sources' >> odyssey-device-deploy.sh +echo 'mkdir -p /etc/apt/preferenced.d/' >> odyssey-device-deploy.sh +echo 'echo "Package: *" > /etc/apt/preferenced.d/odyssey' >> odyssey-device-deploy.sh +echo 'echo "Pin: release n=uncursus-ios" >> /etc/apt/preferenced.d/odyssey' >> odyssey-device-deploy.sh +echo 'echo "Pin-Priority: 1001" >> /etc/apt/preferenced.d/odyssey' >> odyssey-device-deploy.sh +echo 'echo "" >> /etc/apt/preferenced.d/odyssey' >> odyssey-device-deploy.sh +echo 'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games dpkg -i org.coolstar.sileo_1.8.1_iphoneos-arm.deb' >> odyssey-device-deploy.sh +echo 'uicache -p /Applications/Sileo.app' >> odyssey-device-deploy.sh +echo 'echo -n "" > /var/lib/dpkg/available' >> odyssey-device-deploy.sh +echo '/Library/dpkg/info/profile.d.postinst' >> odyssey-device-deploy.sh +echo 'touch /.mount_rw' >> odyssey-device-deploy.sh +echo 'touch /.installed_odyssey' >> odyssey-device-deploy.sh +echo 'rm bootstrap*.tar*' >> odyssey-device-deploy.sh +echo 'rm org.coolstar.sileo_1.8.1_iphoneos-arm.deb' >> odyssey-device-deploy.sh +echo 'rm odyssey-device-deploy.sh' >> odyssey-device-deploy.sh + +echo "Downloading Resources..." +curl -L -O https://github.com/coolstar/odyssey-bootstrap/raw/master/bootstrap_1500-ssh.tar.gz -O https://github.com/coolstar/odyssey-bootstrap/raw/master/bootstrap_1600-ssh.tar.gz -O https://github.com/coolstar/odyssey-bootstrap/raw/master/migration -O https://github.com/coolstar/odyssey-bootstrap/raw/master/org.coolstar.sileo_1.8.1_iphoneos-arm.deb +clear +if [[ ! "${ARM}" = yes ]]; then + echo "Copying Files to your device" + echo "Default password is: alpine" + scp -P4444 -o "StrictHostKeyChecking no" -o "UserKnownHostsFile=/dev/null" bootstrap_1500-ssh.tar.gz bootstrap_1600-ssh.tar.gz migration org.coolstar.sileo_1.8.1_iphoneos-arm.deb odyssey-device-deploy.sh root@127.0.0.1:/var/root/ + clear +fi +echo "Installing Procursus bootstrap and Sileo on your device" +if [[ "${ARM}" = yes ]]; then + zsh ./odyssey-device-deploy.sh +else + echo "Default password is: alpine" + ssh -p4444 -o "StrictHostKeyChecking no" -o "UserKnownHostsFile=/dev/null" root@127.0.0.1 "zsh /var/root/odyssey-device-deploy.sh" + echo "All Done!" + killall iproxy +fi diff --git a/procursus-migration.sh b/procursus-migration.sh deleted file mode 100644 index a0f8d49..0000000 --- a/procursus-migration.sh +++ /dev/null @@ -1,96 +0,0 @@ -#!/bin/bash -if [ "$EUID" -ne 0 ]; then - echo You need to run this script as root. -else - clear - echo "Copyright (c) 2020, Yaya4 All rights reserved." - echo -e "\e[31mUncursus Migration Part\e[0m" - ErrorHandler(){ - echo -e "\e[31mSomething went wrong.\e[0m" - echo -e "\e[31mPlease report the issues with a pastebin.\e[0m" - exit 1 - } - checkDependencies(){ - echo "Checking Dependencies ..." - need2="" - command -v wget >/dev/null 2>&1 || need2+="wget " - command -v plutil >/dev/null 2>&1 || need2+="com.bingner.plutil " - if [[ $need2 != "" ]]; then - echo "Installing Dependencies..." - apt update - apt install $need2 -y - fi - } - checkiOSVersion(){ - echo "Checking iOS Version ..." - echo "1 for *OS 14" - echo "2 for *OS 13" - echo "3 for *OS 12" - read version - if [ "1" = $version ]; then - CFVER=1700 - elif [ "2" = $version ]; then - CFVER=1600 - elif [ "3" = $version ]; then - CFVER=1500 - fi - } - ProcursusMigration(){ - echo "Migrating..." - rm /etc/apt/sources.list.d/cydia.list - echo "deb https://apt.procurs.us/ iphoneos-arm64/${CFVER} main" >> /etc/apt/sources.list.d/cydia.list - rm -rf /tmp/procursus-migration - mkdir /tmp/procursus-migration - cd /tmp/procursus-migration - wget -q https://apt.procurs.us/pool/main/iphoneos-arm64/${CFVER}/procursus-keyring_2020.05.09_iphoneos-arm.deb --no-check-certificate - dpkg -i procursus-keyring_2020.05.09_iphoneos-arm.deb - apt update - rm -rf /tmp/zstd-support/ - mkdir /tmp/zstd-support/ - cd /tmp/zstd-support/ - apt download libintl8 liblzma5 lz4 xz liblz4-1 xz-utils - wget -q https://apt.procurs.us/pool/main/iphoneos-arm64/${CFVER}/libzstd1_1.4.7_iphoneos-arm.deb --no-check-certificate - wget -q https://apt.procurs.us/pool/main/iphoneos-arm64/${CFVER}/zstd_1.4.7_iphoneos-arm.deb --no-check-certificate - dpkg -i --force-all *.deb - cd /tmp/procursus-migration - apt download libzstd1 apt libapt-pkg6.0 xz-utils liblzma5 libncursesw6 ncurses-term libxxhash0 libxxhash-dev libgcrypt20 libgpg-error0 dpkg - dpkg -i --force-all /tmp/procursus-migration/libncursesw6*.deb - if [ ! -f "/usr/lib/libncurses.6.dylib" ]; then - echo "Fixing ..." - ln -s /usr/lib/libncursesw.6.dylib /usr/lib/libncurses.6.dylib - else - echo "Nothing To Do!" - fi - dpkg -i --force-all dpkg*.deb - dpkg -i --force-all *.deb - apt download coreutils - dpkg -r --force-all libidn2 - apt --fix-broken install -y -u -o APT::Force-LoopBreak=1 - apt install diskdev-cmds -y --allow-unauthenticated -u -o APT::Force-LoopBreak=1 - apt dist-upgrade -y --allow-unauthenticated -u -o APT::Force-LoopBreak=1 - dpkg -i --force-all /tmp/procursus-migration/coreutils*.deb - } - ProcursusSourcesSetup(){ - echo "Settings Up Procursus Source ..." - echo "Types: deb" > /etc/apt/sources.list.d/procursus.sources - echo "URIs: https://apt.procurs.us/" >> /etc/apt/sources.list.d/procursus.sources - echo "Suites: iphoneos-arm64/${CFVER}" >> /etc/apt/sources.list.d/procursus.sources - echo "Components: main" >> /etc/apt/sources.list.d/procursus.sources - } - MigrationCleanUp(){ - echo "Cleaning Up ..." - dpkg -r apt1.4 - apt update - apt purge libplist-utils -y libplist3 -y - apt autoremove -y - apt install libplist-utils -y libplist++-dev -y libplist++-dev -y libplist++3v5 -y libplist-dev -y libplist3 -y ldid -y - apt reinstall libintl8 -y - } - checkDependencies || ErrorHandler - checkiOSVersion || ErrorHandler - echo -e "\e[32mStarting Migration On $CFVER ....\e[0m" - ProcursusMigration || ErrorHandler - ProcursusSourcesSetup || ErrorHandler - MigrationCleanUp || ErrorHandler - echo -e "\e[32mMigration Finished!\e[0m" -fi