Twackup is a simple iOS tool for re-packaging installed packages to DEB's or backing up and restoring packages or repos. CLI version works from iOS 6 and later and GUI from iOS 14 and later. CLI can be also compiled and work fine on any Debian-based linux, though I do not support this platforms.
Twackup uses custom dpkg database parser written and Rust - and it parses dpkg database a bit faster than dpkg itself. It means it can be used on that platforms that have no support of dpkg - primarily, iOS. There already are some tweaks for jailbreak with the same target, but they all are poorly written in something like Bash and do not really work as they expected to. That's why Twackup exists at all.
Leaves | Detail | Settings |
---|---|---|
-
Make sure you have Rust installed. If not, I would recommend installing it via rustup.
-
Clone the source with git:
$ git clone --recursive https://github.com/danpashin/twackup-rs.git $ cd twackup-rs
-
- If you are targeting to run twackup on host platform, you can directly run
cargo build --release
and you'll find binary intarget
directory. - If you decided to build for iOS and run all tests, then
- Install dependencies
# Install building system $ cargo install cargo-make # Install different building utils if you don't have them $ brew install dpkg ldid coreutils # Install utils from rubygems $ bundle install
- Make sure you have nightly rust with sources as well as iOS and iOS Simulator platforms support
$ rustup target add aarch64-apple-ios x86_64-apple-ios $ rustup toolchain install nightly $ rustup component add rust-src --toolchain nightly
- Install GUI libraries from cocoapods
$ cd twackup-gui $ pod install
- And finally start build
This will take a relatively large amount of time.It is about 30 mins for GitHub actions and 10 mins for my Mac.
$ cargo build-ios
- Install dependencies
- If you are targeting to run twackup on host platform, you can directly run
I'll be really glad to see you in contributors for this project. I spent a lot of time of in writing it to its current state and this is really exhausting.
1.70 for main library
1.74.1 for CLI
Twackup is licensed under GNU General Public License v3.0
See COPYING for the full text.