This is a template for creating a new ReVanced Patches repository.
The repository can have multiple patches, and patches from other repositories can be used together.
For an example repository, see ReVanced Patches.
To start using this template, follow these steps:
- Create a new repository using this template
- Set up the build.gradle.kts file (Specifically, the group of the project, manifest attributes, and the POM)
- Update dependencies in the libs.versions.toml file
- Create a pass-phrased GPG master key and subkey
- Add the private key as a secret named GPG_PRIVATE_KEY to your repository
- Add the passphrase as a secret named GPG_PASSPHRASE to your repository
- Add the fingerprint of the GPG subkey as a secret named GPG_FINGERPRINT to your repository
- Create a PAT with push access
- Add it as a secret named REPOSITORY_PUSH_ACCESS to your repository
- Set up the README.md file1 (e.g, title, description, license, summary of the patches that are included in the repository)
🎉 You are now ready to start creating patches!
You can also add the following things to the repository:
- Issue templates2
- Contribution guidelines3
- Documentation, if you want to publish your patches as a library4
In order to develop and release ReVanced Patches using this template, some things need to be considered:
- Development occurs in feature branches. Once a feature branch is ready, it is squshed and merged into the
dev
branch - The
dev
branch is merged into themain
branch once it is ready for release - Semantic versioning is used for versioning ReVanced Patches. ReVanced Patches have a public API for other patches to use
- Semantic commit messages are used for commits
- Commits on the
dev
branch andmain
branch are automatically released via the release.yml workflow, which is also responsible for generating the changelog and updating the version of ReVanced Patches. It is triggered by pushing to thedev
ormain
branch. The workflow uses thepublish
task to publish the release of ReVanced Patches - In order to build ReVanced Patches, that can be used on Android, the
buildDexJar
task needs to be run. Thepublish
task depends on thebuildDexJar
task, so it will be run automatically when publishing a release.
In order to build ReVanced Patches template, you can follow the ReVanced documentation.
ReVanced Patches template is licensed under the GPLv3 licence. Please see the licence file for more information. tl;dr you may copy, distribute and modify ReVanced Patches template as long as you track changes/dates in source files. Any modifications to ReVanced Patches template must also be made available under the GPL along with build & install instructions.