87 lines
2.1 KiB
Markdown
87 lines
2.1 KiB
Markdown
# X Patches
|
|
|
|
Patch bundle for X (Twitter), maintained by
|
|
[Stan Ponomarev](https://git.krtss.de/StanPonomarev).
|
|
|
|
## Patch
|
|
|
|
### Disable outdated version screen
|
|
|
|
Prevents X from entering its client-shutdown state when the configured minimum
|
|
version is newer than the installed app. It also ignores shutdown state already
|
|
persisted by an unpatched installation, restoring app access without hiding only
|
|
the update UI.
|
|
|
|
## Target
|
|
|
|
- Package: `com.twitter.android`
|
|
- Version: `12.7.1-release.0` (`312071000`)
|
|
- Input type: APKM
|
|
- Minimum Android API: 28
|
|
|
|
## Prerequisites
|
|
|
|
- Java 21
|
|
- The target `twitter.apkm` in the repository root for integration testing
|
|
- GitHub Packages credentials in `~/.gradle/gradle.properties`:
|
|
|
|
```properties
|
|
gpr.user = your-github-username
|
|
gpr.key = your-read-packages-token
|
|
```
|
|
|
|
## Build
|
|
|
|
```shell
|
|
./gradlew :patches:buildAndroid
|
|
```
|
|
|
|
The bundle is written to `patches/build/libs/patches-1.0.0.mpp`.
|
|
|
|
## Integration test
|
|
|
|
```shell
|
|
./gradlew :patches:integrationTest
|
|
```
|
|
|
|
The Kotlin integration test downloads the pinned Morphe Desktop release,
|
|
verifies its SHA-256 checksum, applies only this patch to `twitter.apkm`, and
|
|
checks the resulting APK and Morphe patching report. The verified Morphe JAR is
|
|
cached under `patches/build/verification/tools`.
|
|
|
|
## Apply manually
|
|
|
|
```shell
|
|
java -jar morphe-desktop-*-all.jar patch \
|
|
--patches patches/build/libs/patches-1.0.0.mpp \
|
|
--exclusive \
|
|
--enable="Disable outdated version screen" \
|
|
--out twitter-patched.apk \
|
|
twitter.apkm
|
|
```
|
|
|
|
## Add as a Morphe patch source
|
|
|
|
For a local source, open **Sources → + → Local** in Morphe and select the built
|
|
`.mpp` file.
|
|
|
|
After a release has populated `patches-bundle.json`, add the following address
|
|
under **Sources → + → Remote**:
|
|
|
|
```text
|
|
https://git.krtss.de/StanPonomarev/twitter-patch/raw/branch/main/patches-bundle.json
|
|
```
|
|
|
|
Remote sources update automatically from the release bundle referenced by that
|
|
metadata file.
|
|
|
|
## Project
|
|
|
|
- Repository: <https://git.krtss.de/StanPonomarev/twitter-patch>
|
|
- Author: Stan Ponomarev
|
|
- Contact: <contact@krtss.de>
|
|
|
|
## License
|
|
|
|
Licensed under the [GNU General Public License v3.0](LICENSE).
|