mirror of
https://github.com/ReVanced/revanced-cli.git
synced 2026-01-18 00:43:58 +00:00
Compare commits
2 Commits
v2.21.5
...
v2.21.2-de
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
107dc50cc3 | ||
|
|
0b56387d9e |
23
.github/workflows/release.yml
vendored
23
.github/workflows/release.yml
vendored
@@ -23,20 +23,17 @@ jobs:
|
|||||||
# https://github.com/cycjimmy/semantic-release-action#private-packages
|
# https://github.com/cycjimmy/semantic-release-action#private-packages
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: Cache
|
- name: Setup JDK
|
||||||
uses: actions/cache@v3
|
uses: actions/setup-java@v3
|
||||||
with:
|
with:
|
||||||
path: |
|
java-version: '17'
|
||||||
${{ runner.home }}/.gradle/caches
|
distribution: 'zulu'
|
||||||
${{ runner.home }}/.gradle/wrapper
|
cache: gradle
|
||||||
.gradle
|
- name: Setup Node.js
|
||||||
build
|
uses: actions/setup-node@v3
|
||||||
node_modules
|
with:
|
||||||
key: ${{ runner.os }}-gradle-npm-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'package-lock.json') }}
|
node-version: "18"
|
||||||
- name: Build with Gradle
|
cache: 'npm'
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
run: ./gradlew clean --no-daemon
|
|
||||||
- name: Setup semantic-release
|
- name: Setup semantic-release
|
||||||
run: npm install
|
run: npm install
|
||||||
- name: Release
|
- name: Release
|
||||||
|
|||||||
26
CHANGELOG.md
26
CHANGELOG.md
@@ -1,29 +1,3 @@
|
|||||||
## [2.21.5](https://github.com/revanced/revanced-cli/compare/v2.21.4...v2.21.5) (2023-07-01)
|
|
||||||
|
|
||||||
## [2.21.5-dev.2](https://github.com/revanced/revanced-cli/compare/v2.21.5-dev.1...v2.21.5-dev.2) (2023-07-01)
|
|
||||||
|
|
||||||
## [2.21.5-dev.1](https://github.com/revanced/revanced-cli/compare/v2.21.4...v2.21.5-dev.1) (2023-06-27)
|
|
||||||
|
|
||||||
## [2.21.4](https://github.com/revanced/revanced-cli/compare/v2.21.3...v2.21.4) (2023-06-21)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* remove duplicate options entries. ([d0fc886](https://github.com/revanced/revanced-cli/commit/d0fc8864286adc2677f91a319a11a90272c1001d))
|
|
||||||
|
|
||||||
## [2.21.4-dev.1](https://github.com/revanced/revanced-cli/compare/v2.21.3...v2.21.4-dev.1) (2023-06-18)
|
|
||||||
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
* remove duplicate options entries. ([d0fc886](https://github.com/revanced/revanced-cli/commit/d0fc8864286adc2677f91a319a11a90272c1001d))
|
|
||||||
|
|
||||||
## [2.21.3](https://github.com/revanced/revanced-cli/compare/v2.21.2...v2.21.3) (2023-06-12)
|
|
||||||
|
|
||||||
## [2.21.3-dev.1](https://github.com/revanced/revanced-cli/compare/v2.21.2...v2.21.3-dev.1) (2023-06-07)
|
|
||||||
|
|
||||||
## [2.21.2](https://github.com/revanced/revanced-cli/compare/v2.21.1...v2.21.2) (2023-05-24)
|
|
||||||
|
|
||||||
## [2.21.2-dev.2](https://github.com/revanced/revanced-cli/compare/v2.21.2-dev.1...v2.21.2-dev.2) (2023-05-15)
|
## [2.21.2-dev.2](https://github.com/revanced/revanced-cli/compare/v2.21.2-dev.1...v2.21.2-dev.2) (2023-05-15)
|
||||||
|
|
||||||
## [2.21.2-dev.1](https://github.com/revanced/revanced-cli/compare/v2.21.1...v2.21.2-dev.1) (2023-05-07)
|
## [2.21.2-dev.1](https://github.com/revanced/revanced-cli/compare/v2.21.1...v2.21.2-dev.1) (2023-05-07)
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ repositories {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation("org.jetbrains.kotlin:kotlin-reflect:1.8.20-RC")
|
implementation("org.jetbrains.kotlin:kotlin-reflect:1.8.20-RC")
|
||||||
|
|
||||||
implementation("app.revanced:revanced-patcher:11.0.3")
|
implementation("app.revanced:revanced-patcher:8.0.0")
|
||||||
implementation("info.picocli:picocli:4.7.1")
|
implementation("info.picocli:picocli:4.7.1")
|
||||||
implementation("com.github.revanced:jadb:2531a28109") // updated fork
|
implementation("com.github.revanced:jadb:2531a28109") // updated fork
|
||||||
implementation("com.android.tools.build:apksig:8.1.0-alpha09")
|
implementation("com.android.tools.build:apksig:8.1.0-alpha09")
|
||||||
|
|||||||
@@ -4,9 +4,9 @@ To use ReVanced CLI, you will need to fulfill certain requirements.
|
|||||||
|
|
||||||
## 🤝 Requirements
|
## 🤝 Requirements
|
||||||
|
|
||||||
- Java SDK 11 (Azul JDK or OpenJDK)
|
|
||||||
- [Android Debug Bridge (adb)](https://developer.android.com/studio/command-line/adb) if you want to deploy the patched APK file on your device
|
- [Android Debug Bridge (adb)](https://developer.android.com/studio/command-line/adb) if you want to deploy the patched APK file on your device
|
||||||
- An ABI other than ARMv7 such as x86 or x86-64 (or a custom AAPT binary that supports ARMv7)
|
- An ABI other than ARMv7 such as x86 or x86-64 (or a custom AAPT binary that supports ARMv7)
|
||||||
|
- Java SDK 17 or higher (Azul JDK or OpenJDK)
|
||||||
|
|
||||||
## ⏭️ Whats next
|
## ⏭️ Whats next
|
||||||
|
|
||||||
|
|||||||
@@ -2,75 +2,73 @@
|
|||||||
|
|
||||||
Learn how to ReVanced CLI.
|
Learn how to ReVanced CLI.
|
||||||
|
|
||||||
## ⚡ Setup ADB
|
## ⚡ Setup (optional)
|
||||||
|
|
||||||
1. Ensure that ADB is working
|
1. Make sure your device is connected
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
adb shell exit
|
adb shell exit
|
||||||
```
|
```
|
||||||
|
|
||||||
If you want to deploy the patched APK file on your device by mounting it on top of the original APK file, you will need root access. This is optional.
|
If you plan to use the root variant, check if you have root access
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
adb shell su -c exit
|
adb shell su -c exit
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Get the name of your device
|
2. Copy the ADB device name
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
adb devices
|
adb devices
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🔨 Using ReVanced CLI
|
## 🔨 ReVanced CLI Usage
|
||||||
|
|
||||||
- ### ⚙️ Show all available options for ReVanced CLI
|
- ### Show all available options for ReVanced CLI
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
java -jar revanced-cli.jar -h
|
java -jar revanced-cli.jar -h
|
||||||
```
|
```
|
||||||
|
|
||||||
- ### 📃 List all available patches from supplied patch bundles
|
- ### List all available patches from supplied patch bundles
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
java -jar revanced-cli.jar
|
java -jar revanced-cli.jar \
|
||||||
-b revanced-patches.jar \
|
-b revanced-patches.jar \
|
||||||
-l
|
-l
|
||||||
```
|
```
|
||||||
|
|
||||||
- ### 💉 Use ReVanced CLI to patch an APK file but deploy without root permissions
|
- ### Use ReVanced CLI without root permissions
|
||||||
|
|
||||||
This will deploy the patched APK file on your device by installing it.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
java -jar revanced-cli.jar \
|
java -jar revanced-cli.jar \
|
||||||
-a input.apk \
|
-a input.apk \
|
||||||
-o patched-output.apk \
|
-o patched-output.apk \
|
||||||
-b revanced-patches.jar \
|
-b revanced-patches.jar
|
||||||
-d device-name
|
|
||||||
```
|
```
|
||||||
|
|
||||||
- ### 👾 Use ReVanced CLI to patch an APK file but deploy with root permissions
|
- ### Mount the patched application with root permissions over the installed application
|
||||||
|
|
||||||
This will deploy the patched APK file on your device by mounting it on top of the original APK file.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
adb install input.apk
|
adb install input.apk # make sure the same version is installed
|
||||||
java -jar revanced-cli.jar \
|
java -jar revanced-cli.jar \
|
||||||
-a input.apk \
|
-a input.apk \
|
||||||
-o patched-output.apk \
|
-d device-name \
|
||||||
-b revanced-patches.jar \
|
-o patched-output.apk \
|
||||||
-e vanced-microg-support \
|
-b revanced-patches.jar \
|
||||||
-d device-name \
|
-e vanced-microg-support \
|
||||||
--mount
|
--mount
|
||||||
```
|
```
|
||||||
|
|
||||||
> **Note**: Some patches from [ReVanced Patches](https://github.com/revanced/revanced-patches) also require [ReVanced Integrations](https://github.com/revanced/revanced-integrations). Supply them with the option `-m`. ReVanced Patcher will merge ReVanced Integrations automatically, depending on if the supplied patches require them.
|
> **Note**:
|
||||||
|
>
|
||||||
- ### ⚙️ Supply options to patches using ReVanced CLI
|
> - If you want to exclude patches, you can use the option `-e`. In the case of YouTube, you can exclude
|
||||||
|
the `vanced-microg-support` patch from [ReVanced Patches](https://github.com/revanced/revanced-patches) with the
|
||||||
Some patches provide options. Currently, ReVanced CLI will generate and consume an `options.json` file at the location that is specified in `-o`. If the option is not specified, the options file will be generated in the current working directory.
|
option `-e vanced-microg-support` when mounting for example.
|
||||||
|
>
|
||||||
The options file contains all options from supplied patch bundles.
|
> - Some patches from [ReVanced Patches](https://github.com/revanced/revanced-patches) also might require
|
||||||
|
[ReVanced Integrations](https://github.com/revanced/revanced-integrations). Supply them with the option `-m`.
|
||||||
> **Note**: The `options.json` file will be generated at the first time you use ReVanced CLI to patch an APK file for now. This will be changed in the future.
|
> The integrations will be merged, if necessary automatically, if supplied.
|
||||||
|
>
|
||||||
|
> - If you supplied a device with the option `-d`, the patched application will be automatically installed on the
|
||||||
|
device.
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
kotlin.code.style = official
|
kotlin.code.style = official
|
||||||
version = 2.21.5
|
version = 2.21.2-dev.2
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import app.revanced.cli.logging.CliLogger
|
|||||||
import app.revanced.patcher.extensions.PatchExtensions.options
|
import app.revanced.patcher.extensions.PatchExtensions.options
|
||||||
import app.revanced.patcher.extensions.PatchExtensions.patchName
|
import app.revanced.patcher.extensions.PatchExtensions.patchName
|
||||||
import app.revanced.patcher.patch.NoSuchOptionException
|
import app.revanced.patcher.patch.NoSuchOptionException
|
||||||
import app.revanced.utils.Options.PatchOption.Option
|
|
||||||
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
|
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
@@ -26,12 +25,9 @@ internal object Options {
|
|||||||
.map { patch ->
|
.map { patch ->
|
||||||
PatchOption(
|
PatchOption(
|
||||||
patch.patchName,
|
patch.patchName,
|
||||||
patch.options!!.map { option -> Option(option.key, option.value) }
|
patch.options!!.map { option -> PatchOption.Option(option.key, option.value) }
|
||||||
)
|
)
|
||||||
}
|
}.let {
|
||||||
// See https://github.com/revanced/revanced-patches/pull/2434/commits/60e550550b7641705e81aa72acfc4faaebb225e7.
|
|
||||||
.distinctBy { it.patchName }
|
|
||||||
.let {
|
|
||||||
if (prettyPrint)
|
if (prettyPrint)
|
||||||
mapper.writerWithDefaultPrettyPrinter().writeValueAsString(it)
|
mapper.writerWithDefaultPrettyPrinter().writeValueAsString(it)
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user