Skip to content

πŸ‘‹πŸ”Œ Template repository for ReVanced Manager downloader

License

Notifications You must be signed in to change notification settings

ReVanced/revanced-manager-downloader-template

Repository files navigation


Β Β Β  Β Β Β  Β Β Β  Β Β Β  Β Β Β  Β Β Β 

Continuing the legacy of Vanced

πŸ‘‹πŸ”Œ ReVanced Manager downloader template

GitHub Workflow Status (with event) GPLv3 License

Template repository for ReVanced Manager downloader plugins.

❓ About

This is a template to create a new ReVanced Manager downloader repository. An example implementation is included.

πŸš€ Get started

To start using this template, follow these steps:

  1. Create a new repository using this template
  2. Set up the build.gradle.kts file (Specifically, the package nme.
  3. Update dependencies in the libs.versions.toml file
  4. Create a pass-phrased GPG master key and subkey
    1. Add the private key as a secret named GPG_PRIVATE_KEY to your repository
    2. Add the passphrase as a secret named GPG_PASSPHRASE to your repository
    3. Add the fingerprint of the GPG subkey as a secret named GPG_FINGERPRINT to your repository
  5. Generate a keystore
    1. Add the Base64 encoded key store as a secret named KEYSTORE to your repository
    2. Add the keystore password as a secret named KEYSTORE_PASSWORD to your repository
    3. Add the keystore entry alias as a secret named KEYSTORE_ENTRY_ALIAS to your repository
    4. Add the keystore entry password as a secret named KEYSTORE_ENTRY_PASSWORD to your repository
  6. Set up the README.md file1 (e.g, title, description, license, summary), the issue templates2 and the contribution guidelines3

πŸŽ‰ You are now ready to develop and release a ReVanced Manager downloader!

πŸ§‘β€πŸ’» Usage

To develop and release ReVanced Manager downloader using this template, some things need to be considered:

  • Development starts in feature branches. Once a feature branch is ready, it is squashed and merged into the dev branch
  • The dev branch is merged into the main branch once it is ready for release
  • Semantic versioning is used to version ReVanced Manager downloader.
  • Semantic commit messages are used for commits
  • Commits on the dev branch and main branch are automatically released via the release.yml workflow, which is also responsible for generating the changelog and updating the version of ReVanced Manager downloader. It is triggered by pushing to the dev or main branch. The workflow uses the publish task to publish the release.
  • The publish task depends on the assembleRelease task, so it will be run automatically when publishing a release.

πŸ“š Everything else

πŸ“™ Contributing

Thank you for considering contributing to ReVanced Manager downloader.
You can find the contribution guidelines here.

πŸ› οΈ Building

To build ReVanced Manager downloader template, a Java Development Kit (JDK) and Git must be installed.
Follow the steps below to build ReVanced Manager downloader template:

  1. Run git clone [email protected]:ReVanced/revanced-manager-downloader-template.git to clone the repository
  2. Run gradlew assembleRelease to build the project

Note

If the build fails due to authentication, you may need to authenticate to GitHub Packages. Create a PAT with the scope read:packages here and add your token to ~/.gradle/gradle.properties.

Example gradle.properties file:

gpr.user = user
gpr.key = key

πŸ“œ Licence

ReVanced Manager downloader template is licensed under the GPLv3 licence. Please see the license file for more information. tl;dr you may copy, distribute and modify ReVanced Manager downloader template as long as you track changes/dates in source files. Any modifications to ReVanced Manager downloader template must also be made available under the GPL, along with build & install instructions.

Footnotes

  1. Example README.md file ↩

  2. Example issue templates ↩

  3. Example contribution guidelines ↩