v2.3.0: Java virtual environment via app_process, SELinux bypass for build tools
This commit is contained in:
14
README.md
14
README.md
@@ -631,6 +631,20 @@ data: [DONE]
|
||||
|
||||
## Changelog
|
||||
|
||||
### v2.3.0 (2026-05-20)
|
||||
- **Java Virtual Environment** — `ecj.jar` (3.2MB) and `apksigner.jar` (1.1MB) bundled as APK assets, extracted at runtime
|
||||
- **app_process Wrappers** — wrapper scripts use `/system/bin/app_process` to run JARs (bypasses SELinux `execve` restrictions entirely)
|
||||
- **d8.jar Runtime Download** — downloads DEX compiler (~18MB) from Google build-tools at first use
|
||||
- **installAapt2 Plugin** — `BootstrapPlugin.installAapt2()` downloads aapt2 + aapt + dependencies from Termux repo, extracts to `$TOOLS`
|
||||
- **extractAsset/downloadFile Plugins** — new `BootstrapPlugin` methods for APK asset extraction and URL file downloads
|
||||
- **Smart Tool Detection** — `toolsReady()` and `checkDevEnvironment()` check both Termux native tools and Java virtual tools
|
||||
- **BUILD_SCRIPT Updated** — uses `sh "$TOOLS/bin/ecj"` etc., `#!/system/bin/sh` shebang, `$TOOLS/share/android.jar` fallback paths
|
||||
- **LD_LIBRARY_PATH** — `$TOOLS/lib` added for aapt2 shared library resolution
|
||||
- Architecture: Java tools never need execute permission (read-only JARs), aapt2 downloaded on demand
|
||||
|
||||
### v2.2.5 (2026-05-19)
|
||||
- Shebang Patching, Proot from APK nativeLib, Termux RUN_COMMAND integration, F-Droid fallback, 3-Strategy Install
|
||||
|
||||
### v2.2.4 (2026-05-19)
|
||||
- **Bundled PRoot** — proot binary (v5.1.107) included in APK as native library with executable SELinux label
|
||||
- **Auto-Proot Install** — `ShellPlugin.refreshShell()` copies proot + loader from APK's `nativeLibraryDir` to `$PREFIX/bin/` and `$PREFIX/libexec/proot/` on first use
|
||||
|
||||
Reference in New Issue
Block a user