A cross-platform interface for FutureRestore, written in Java with Swing

Overview

Futurerestore GUI

Github CI Github releases Github issues Github repo size

A GUI implementation for FutureRestore written in Java.

Screenshot of FutureRestore GUI in Light Theme Screenshot of FutureRestore GUI in Dark Theme

Installation

Download from releases. No Java download required (it's bundled).

On Mac, right click the Mac app and click "Open" to open.

On Windows, double click the Windows MSI to install the App. Launch it from the Start Menu or the Desktop shortcut.

Linux (64 bit, amd64 + x86_64):

  • On Debian based Linux systems, such as Ubuntu and Mint, double click the DEB to install it. Launch it from your application library.
  • On RPM based Linux systems, such as Red Hat, Fedora, and CentOS, double click the file to install it. Launch it from your application library.
  • On Linux systems which support none of these, download the Linux-Universal build, and run the runFRGUI.sh script in terminal to launch the GUI.

Features

  • Fancy, user-friendly interface for selecting files for FutureRestore. No more huge commands such as:
/Users/CoocooFroggy/Downloads/futurerestore -d -t /Users/CoocooFroggy/Downloads/353561670934855681_iPhone69\,4_d200ap_18.2-31D37_27325c8258be46e69d9ee57fa9a8fbc28b873df434e5e702a8b27999551138ae.shsh2 --latest-sep --latest-baseband /Users/CoocooFroggy/Downloads/iPhone69\,4\,iPhone20\,0_18.2_31D37_Restore.ipsw
  • Only select BuildManifest once for both SEP and BB.
  • Ensures you don't select incorrect files: The program will ensure you have a working FutureRestore build. You can only select .iPSW files for target firmware, .BBFW files for baseband, etc.
  • Option to connect to GitHub and check if your version of FutureRestore is the latest version.
  • Download FutureRestore will automatically fetch the latest FutureRestore for your operating system, extract it, and select it.
  • Exit Recovery button to run futurerestore --exit recovery
  • Stop FutureRestore to kill the FutureRestore process. Button dynamically changes to "Stop FutureRestore (Unsafe)" while the process is running. Pop-up to confirm killing the process if it's currently running.
  • Automatically launch with Dark or Light mode theme (not supported on Linux).
  • Error parsing such as iBEC, APTicket-APNonce mismatch, unable to place device in recovery mode. Will show a pop-up with some help and a link on where to get help. Error Parsing Example
  • Automatically retry FutureRestore only once if error received is "unable to place device in recovery mode."
  • Inline GUI progress bar for downloading SEP, BB, Sending Filesystem, etc.
  • Automatically saves all logs to /[Home]/FutureRestoreGUI/logs. Never worry about accidentally closing terminal, forgetting to paste your terminal to pastebin, etc.
  • Current task text field to simply show what FutureRestore is doing.
  • Log smart autoscroll when scrolled to the bottom.

Settings

  • Share logs: Shares logs automatically to help develop FutureRestore.
  • Preview command: Preview the final FutureRestore command. You can then choose to copy and/or run the command.
  • GUI update: Automatically checks for updates for this program on launch.

Usage

See how to use FutureRestore.

  1. Download FutureRestore automatically through the Download FutureRestore button, or manually from marijuanARM's fork.
  2. Select your blob (SHSH2) file.
  3. Select your target firmware (iPSW) file.
  4. Choose your desired arguments. See this table for an explanation of arguments.
  5. Baseband and SEP (choose 1 each):
    1. If the latest Baseband and/or SEP firmware is compatible with your target version, select Latest Baseband/Latest SEP.
    2. Choose Manual Baseband/Manual SEP, and select your desired Baseband and SEP (BBFW and IM4P), along with a BuildManifest (.PList).
    3. If your device is Wi-Fi only (no cellular/calling ability), select No Baseband.
  6. Start FutureRestore!
  • You can take your device out of recovery mode with Exit Recovery, which will run [futurerestore] --exit-recovery
  • You may kill the FutureRestore process while it is running, but it is considered unsafe. Do not press the Stop FutureRestore button while the button's text indicates that it is "Unsafe."

Third-Party Assets

Download FutureRestore using the button included in the GUI, or manually from here. Download target iPSW from iPSW.me or iPSW.dev.

Troubleshooting

For FutureRestore related issues, refer to #futurerestore-help in the r/jailbreak Discord server.

For GUI related issues, open an issue in the GitHub issues section.

Contributing

Cloning the repository:

git clone https://github.com/CoocooFroggy/FutureRestore-GUI.git

Building:

Build a .jar with gradle shadowjar. Requires Java 11 or later.

Package to a Windows .msi, Mac .app, or Linux .deb, .rpm, app-image with JPackage from Java 14 or later (continuous integration releases use Java 15).

Pull requests are welcome. For major feature requests, please open an issue to discuss what improvements you would like to see.

Comments
  • FutureRestore Unknown Option

    FutureRestore Unknown Option

    Can someone help me? I'm using FR latest 1.98.3 to downgrade on iOS 14.4 with blobs. I think there's something wrong in the Futurerestore download, as it will download the FR v194, then If I start it, the error is "Looks like there is no --use-pwndfu argument on this version of Futurerestore. Can someone help me what did I miss? I'm stuck here for over 23 hours.

    image image image

    opened by imlambertf 6
  • FutureRestore GUI — v1.98.3 is NOT working on windows 10

    FutureRestore GUI — v1.98.3 is NOT working on windows 10

    FutureRestore GUI — v1.98.3 is NOT working on windows 10 (not starting up)................much bigger download size compared to earlier versions 1.98.2/1.98......

    Thanks Tony

    priority 
    opened by fiatuno49 3
  • FTR V1.98.2 Stuck on hashes IPh12 and IPh11 Using windows.

    FTR V1.98.2 Stuck on hashes IPh12 and IPh11 Using windows.

    Future restore getting stuck on hashes going from ios 14.8.1 on ip12 and 14,8 on ip11 on both devices to ios 15.4.1. Using latest build id 19G69.

    it's runs up to the point of checking hashes then stops and ends future restore

    opened by Iaco8745 0
  • Downgrade from unsupported ipsw ios 15.6RC2 to 15.3 beta 2

    Downgrade from unsupported ipsw ios 15.6RC2 to 15.3 beta 2

    I encounter, maybe futurerestore problem where the device doesnt obey to futurerestore regarding modes of the iphone (recovery mode, restore mode) First i get Possibly invalid iBEC then if restart happens (manually ) i get Unable to put device into restore mode right after Received SHSH blob. Is there a way to fix this?

    opened by markosgiassa1 1
  • downgrade from ios 15.1 to 14.4 [TSSC] parsing beta firmware.json failed

    downgrade from ios 15.1 to 14.4 [TSSC] parsing beta firmware.json failed

    Version: v2.0.0-test(66cdef43f10567b76b5ef95726d92641a5dfbd6f-301) img4tool version: 0.197-aca6cf005c94caf135023263cbb5c61a0081804f-RELEASE libipatcher version: 0.88-1e855d70c84419014e363bdbcaead7b145fe3e1f-RELEASE Odysseus for 32-bit support: yes Odysseus for 64-bit support: yes Checking for updates... Futurerestore is up to date! [INFO] 64-bit device detected daemonManager: suspending invasive macOS daemons... daemonManager: findProc: found MobileDeviceUpdater! daemonManager: killing MobileDeviceUpdater. daemonManager: findProc: found AMPDeviceDiscoveryAgent! daemonManager: killing AMPDeviceDiscoveryAgent. daemonManager: done! futurerestore init done reading signing ticket /Users/mac/Downloads/241304734012035684_iPhone10,4_d201ap_14.4-18D52.shsh2 is done User specified to use latest signed SEP [TSSC] opening firmwares.json [DOWN] downloading file https://api.ipsw.me/v2.1/firmwares.json/condensed [TSSC] opening /tmp/firmwares_betas.jsoniPhone10,4.json [DOWN] downloading file https://api.m1sta.xyz/betas/iPhone10,4 [TSSC] opening ota.json [DOWN] downloading file https://api.ipsw.me/v2.1/ota.json/condensed [Error] failed to download file from=https://api.ipsw.me/v2.1/ota.json/condensed to=/tmp/firmwares_ota.json CURLcode=28 futurerestore: failed with exception: [exception]: what=[TSSC] parsing beta firmware.json failed

    code=103940164 line=1586 file=/Users/runner/work/futurerestore/futurerestore/src/futurerestore.cpp commit count=301: commit sha =66cdef43f10567b76b5ef95726d92641a5dfbd6f: FutureRestore process ended.

    opened by IbraimXCV 0
Releases(v1.98.3)
Owner
null
An image annotation desktop-application written in Java using the JavaFX application platform.

This is an image annotation desktop-application written in Java using the JavaFX application platform. It allows you to create bounding box annotations using rectangular and polygonal shapes. Annotations can be imported and saved from/to JSON files, Pascal VOC format XML-files or YOLO format TXT-files.

Markus Fleischhacker 31 Dec 4, 2022
A 3D chart library for Java applications (JavaFX, Swing or server-side).

Orson Charts (C)opyright 2013-2020, by Object Refinery Limited. All rights reserved. Version 2.0, 15 March 2020. Overview Orson Charts is a 3D chart l

David Gilbert 96 Sep 27, 2022
Tictactoe in java swing

TicTacToe A Tictactoe game in java swing Playing You can play with your friend or computer but currently compuer is implemented as Random, In future m

Sri lakshmi kanthan P 3 May 25, 2021
Jogo da cobrinha feito em java swing.

Jogo da Cobrinha Introdução Esse é o classico jogo da cobrinha. v1.0.0 Como configurar Pre-requisitos Java 11, Maven; Procedimentos para rodar projeto

Rodrigo Guedelho 4 Dec 2, 2022
A 2D chart library for Java applications (JavaFX, Swing or server-side).

JFreeChart Version 2.0.0, not yet released. Overview JFreeChart is a comprehensive free chart library for the Java(tm) platform that can be used on th

David Gilbert 946 Jan 5, 2023
A hotel management system desktop application, built with java SWT/Swing

A hotel management system desktop application, built with java SWT/Swing, with tabs to manage bookings, rooms, customers, payments, cancellations, hotel inventory orders, catering and a plan to visualize all the reservations for the month.

null 1 Jan 12, 2022
Swing (Java) Practicing.

Getting Started Welcome to the VS Code Java world. Here is a guideline to help you get started to write Java code in Visual Studio Code. Folder Struct

Poom Yimyuean 2 Nov 3, 2022
An advanced KeyListener for Java Swing UI.

keystrokelistener An advanced KeyListener for Java Swing UI. In Swing, We don't have any default way of mapping a set of KeyStrokes to a specific task

omega ui 1 Jan 22, 2022
Java Swing application to upload files to FTP server with progress bar

Java Swing application to upload files to FTP server with progress bar Swing-based application that uploads files from local computer to a remote FTP

Aditya Deshmukh 1 Feb 11, 2022
This is a clone of Mircosoft Paint that uses Java and its javax.swing library

PaintClone This is a clone of Mircosoft Paint that uses Java and its javax.swing library You are able to select a RBG colors and creates a pallet of t

Nick Quinones 2 Feb 17, 2022
Java Desktop (JavaFX and Swing) Component Inspector

Java Desktop (JavaFX and Swing) Component Inspector A Tool for help you to inspect the location and properties of certain components in a window hiera

TangoraBox 21 Oct 28, 2022
Yet another very simple java 3D software renderer using only standard 2D libraries (Java2D, AWT & Swing). Video: https://youtu.be/hWUX1t9f6zE

Another very simple 3D software renderer Another very simple 3D software renderer implemented in java using only standard libraries (java 2D, AWT & Sw

Leo 13 Oct 17, 2022
To quickly integrate your applications into the EdgeGallery platform, we provide the toolchain project to help developers quickly modify code and migrate applications to the platform.

Toolchain 工具链 工具链是MEC Developer开发者平台中的一个重要特性,当x86平台的App想要上车ARM平台时,底层的代码不可避免的需要进行修改或重写。 App提供者可以通过MEC Developer开发者平台中集成的工具链进行源代码分析,定位需要修改的源代码并根据指导意见进行修

EdgeGallery 19 Jan 7, 2022
Lightweight installer written in java, made for minecraft mods, The installer uses JPanel and uses a URL to install to the specific area (Discord URL's work the best i've seen)

InstallerForJava Lightweight installer written in java, made for minecraft mods, The installer uses JPanel and uses a URL to install to the specific a

null 18 Dec 9, 2022
Four - An engine for MUDs, written in Java

Four This is Four, an engine for MUDs, written in Java! The project was initiated by nijakow and mhahnFr to serve as the basis for text-based Multi-Us

null 5 May 23, 2022
An advanced book explorer/catalog application written in Java and Kotlin.

Boomega An advanced book explorer/catalog application written in Java and Kotlin. ✨ Features Cross-platform Dark/Light theme, modern UI Multiple UI la

Daniel Gyoerffy 54 Nov 10, 2022
Tetromino is a Tetris-like game written in Java with JavaFX.

Tetromino Link to original project in university's GitLab Tetromino is a Tetris-like game written in Java with JavaFX made by Jonas and myself during

Tobias Helmrich 2 Dec 13, 2021
A portable 8086 emulator written in Java and JavaFX

8086.java A portable 8086 emulator written in JavaFX Environment Variables To run this project, you will need to add the following environment variabl

David Velho 4 Dec 1, 2022
Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE 8 and provides the functionalities to use and handle easily Tiles in your JavaFX application.

Lib-Tile Intention Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE and provides the functionalities to use and handle easily Tile

Peter Rogge 13 Apr 13, 2022