mirror of
https://github.com/SinTan1729/ReVancedBuilder.git
synced 2024-12-25 12:18:36 -06:00
A script to automatically build latest releases of ReVanced apps
example_configs | ||
src/ReVancedBuilder | ||
.gitignore | ||
LICENSE | ||
pyproject.toml | ||
README.md |
Revanced Builder
This repo will allow one to build ReVanced apps automatically and send notifications and possibly share the builds with friends. It uses Gotify, ntfy.sh or telegram.sh to send messages. Make sure that Java >=17
is installed and selected as default.
Installation
Recommended way is to use pipx
to install the program.
pipx install git+https://github.com/SinTan1729/ReVancedBuilder
How to use
Just run ReVancedBuilder <working-directory> (force/experimental/checkonly/buildonly)
.
It might be a good idea to set it up to run periodically. There are a few ways of doing it.
- Just drop it inside
/etc/cron.daily/
. - To make it run at a specific time (6AM in the example) using
cron
, put this in yourcrontab
:0 6 * * * <program-full-location> <full-working-directory-location>
- The exact same thing as in 2 can be achieved using
systemd
timers instead. Create the following files./etc/systemd/system/revanced-builder.service --------------------------------------------- [Unit] Description=Automatically build new builds of ReVanced Wants=network-online.target After=network-online.target [Service] Type=oneshot User=<user> Group=<group> Environment="_JAVA_OPTIONS=-Xmx512m" ExecStart=<program-full-location> <full-working-directory-location>
and then enable the timer using/etc/systemd/system/revanced-builder.timer ------------------------------------------- [Unit] Description=Automatically build new builds of ReVanced [Timer] OnCalendar=*-*-* 6:00:00 [Install] WantedBy=timers.target
sudo systemctl enable --now revanced-builder.timer
Notes
- If you installed it using
pipx
, you can figure out the full location of the program by runningwhich ReVancedBuilder
. - This app needs some config files to run. Download all the config files inside
exampl_configs
directory, namelybuild_config
,chosen_patches
(optional), andnotification_config
(optional, needed only if you want to send notifications) and move them to your working directory. Then, you should modify these files to your liking. - The script will download the automatically selected compatible version (unless version is specified in
build_config
) (using compatibility of patches as listed here) of Youtube on APKPure, NOT latest official version on Google Play. - Under NO CIRCUMSTANCES any APKs will be uploaded to this repository to avoid DMCA.
- If you enable telegram notifications, make sure to fill up the config options inside the
build_config
file. For more information about the config, take at look at the repos oftelegram.sh
andtelegram-upload
provided above. - It can also run a post script (if exists), specified in the
build_config
file. Thetimestamp
is passed as$1
. - In the current configuration, the script only builds YouTube ReVanced and YouTube Music ReVanced (both nonroot), but it's easy to add support for any other ReVanced app using the
build_config
file. The config files are self-explanatory. - All the packages are pulled from APKPure and GitHub (the
revanced/*
repos).