Toolchain Management & Rootfs Model¶
fparted does not bundle volatile binaries inside the APK. Instead, it relies on standalone, cryptographically verified Bionic rootfs bundles compiled specifically for the application prefix by Repo A (codex-clamps/fparted-toolchain).
📦 Prefix & Path Specification¶
All toolchain components are built from source targeting the exact package data directory:
Application ID: vn.shadichy.parted
Data Directory: /data/data/vn.shadichy.parted
Rootfs Prefix: /data/data/vn.shadichy.parted/files
Binaries Directory: /data/data/vn.shadichy.parted/files/usr/bin
Libraries Directory: /data/data/vn.shadichy.parted/files/usr/lib
[!CAUTION] The app detects incompatible storage configurations (such as secondary Android users, work profiles, or adoptable storage installations where the path is not
/data/data/vn.shadichy.parted/files) and refuses execution to prevent linking crashes.
🏗️ Supported Architectures & ABIs¶
| Android ABI | Termux / Native Architecture | Status |
|---|---|---|
arm64-v8a |
aarch64 |
Supported (Primary 64-bit ARM) |
armeabi-v7a |
arm |
Supported (32-bit ARM) |
x86_64 |
x86_64 |
Supported (64-bit x86 / Emulators / PC Android) |
x86 (32-bit) |
i686 |
Deliberately Unsupported (No 32-bit x86 Flutter engine artifact) |
🔒 Verification & Activation Pipeline¶
1. Release Manifest Download ──► 2. Ed25519 Signature Verification
│
3. ABI Asset Selection ◄─────────────────┘
│
▼
4. Download to Cache (.partial) ──► 5. Size & SHA-256 Check
│
6. Safe Staging Extraction ◄──────────────────┘
(Zip-Slip & Symlink Check)
│
▼
7. File-by-File Hash Check ──► 8. Executable Permissions chmod (0755)
│
9. Atomic Rename & Journal ◄──────────────────┘
│
▼
10. installed-toolchain-manifest.json fsync
Safety Protections During Extraction¶
- Zip-Slip Prevention: Resolves normalized relative paths; any entry attempting directory traversal (
../) or absolute root targeting is rejected. - Symlink Boundary Checks: Symlink targets are validated so they cannot point outside the staging root directory.
- No Directory Wiping: The installer never calls recursive deletion on
filesDirto preserve user configuration, preferences, and logs (files/home). - Install Journal: All top-level directory swaps (
files/usr, etc.) are recorded in an install journal to support crash recovery and rollback.