agregore-mobile
Mobile version of the Agregore browser for Android, based on Chromium and Bromite
WORK IN PROGRESS
Development
This codebase is based on Chromium Android and Bromite.
How it works:
- You’ll need 40 or 50 GB of space on your machine since chromium is so huge.
- Run
./setup.py
to do the initial folder setup.- The build scripts use Python 3, so you’ll need to have it installed on your system.
- Chromium build tools are set up in
./depot_tools
- A Chromium source tree is set up in
./chromium
(this takes huge amounts of space) - A
Bromite
source tree is set up in./bromite
(this doesn’t take much space)
- Chromium build tools are set up in
- The build scripts use Python 3, so you’ll need to have it installed on your system.
- Run
./patch_with_bromite.py
to checkout the correct version of Chromium and to apply the bromite patches to it- Run this whenever bromite gets updated, it will auto-run at setup
- Run
./patch_with_agregore.py
to apply Agregore patches to the Chromium tree- Run this whenever there are new Agregore patches to apply. It will auto-run at setup
- Run
./prebuild.py
to sync dependencies needed to perform a build.- This can be skipped if you’re just adding changes, dependenices can take an extra 30 GB of space
- Run
./build.py
to trigger a new build of the browser- You’ll need to be running Ubuntu 18 in order to do a successful build. Automated builds via a build server are a work in progress.
- The
patches
folder contains Agregore-specific patches on top of Chromium - Run
./generate_patch.py
To generate a new patch based on the latest Commit insideChromium/src
- You can specify
--n
for the number of commits to include in the patch if you want something other than the latest one. - Generally, if you did several commits as part of your change, you’ll want to squash them with
git rebase -i HEAD~<n>
wheren
is the number of commits you want to squash. - Then you’ll want to commit the patches and use
patch_with_agregore.py
to apply them on the build server
- You can specify
Flow for building with the build server
- Checkout a new branch to start
- Make changes inside chromium/src and commit
- Run
generate_patch.py
to generate a pach - Commit your changes to your branch
- Push them to github
- Checkout the branch on the build server
ssh [email protected]
- Apply the patches using
patch_with_agregore.py
- Run
build.py