ipatool: cross-platform support

Today, I am happy to share with you that ipatool has been rebuilt using Go, which allowed me to fulfil a popular feature request: Linux support.
Using Go cross-platform compilation support, the tool can now run on macOS, Windows and Linux.

If you are not yet familiar with ipatool, it is a command-line tool which lets you
search for apps on the iOS App Store, obtain a license for an app and download a copy of the app package (known as ipa file) using your Apple ID.

In addition to cross-platform support, this release brings many enhancements to the CLI, such as structured logging/formatting and automatic country detection.

See below for the full changes list.

What's Changed

  • Added support for Windows.
  • Added support for Linux.
  • Added support for generating autocompletion script using the `completion` command.
  • Implemented new auth info command.
  • Implemented --verbose flag that replaces the --debug-level flag to enable verbose logging.
  • Implemented --format which allows specifying logs output format to either text or json (default: text).
  • Implemented --non-interactive flag to disable running the tool in an interactive session.
  • The relevant command (i.e. purchase) will now automatically determine the country and the device family from the
    authenticated account. The following flags have been deprecated.
    • --country
    • --device-family
  • Improved structured logging.
  • Improved error handling.
  • Improved support for automated systems.
  • Added unit tests to cover the majority of the private App Store API logic.

As a reminder, the tool is fully open-source and is available on GitHub and is licensed under the MIT license. Happy reverse engineering!

Subscribe to Majd Alfhaily

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe