{"id":25129560,"url":"https://github.com/xarantolus/bromite-build","last_synced_at":"2025-04-02T21:44:05.524Z","repository":{"id":65738321,"uuid":"567369562","full_name":"xarantolus/bromite-build","owner":"xarantolus","description":"My Bromite dev environment, build scripts and custom Bromite distribution (Potassium)","archived":false,"fork":false,"pushed_at":"2023-04-09T11:56:29.000Z","size":12444,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-08T12:17:59.086Z","etag":null,"topics":["bromite","dev-container","docker","potassium"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xarantolus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-11-17T16:37:26.000Z","updated_at":"2023-12-11T03:59:43.000Z","dependencies_parsed_at":"2023-02-19T16:46:08.431Z","dependency_job_id":null,"html_url":"https://github.com/xarantolus/bromite-build","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xarantolus%2Fbromite-build","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xarantolus%2Fbromite-build/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xarantolus%2Fbromite-build/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xarantolus%2Fbromite-build/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xarantolus","download_url":"https://codeload.github.com/xarantolus/bromite-build/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246899636,"owners_count":20851894,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bromite","dev-container","docker","potassium"],"created_at":"2025-02-08T12:18:03.789Z","updated_at":"2025-04-02T21:44:05.508Z","avatar_url":"https://github.com/xarantolus.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bromite-build\nThis repository contains scripts to build and edit [Bromite](https://github.com/bromite/bromite) from source. Since I couldn't get a normal build to work, the build happens inside a Docker container.\n\nCurrently only a build for `arm64` is compiled. To [build for other architectures](https://chromium.googlesource.com/chromium/src/+/master/docs/android_build_instructions.md#figuring-out-target_cpu) one has to adjust the `target_cpu` flag passed to `gn` in the [build config](patches/potassium.gn_args).\n\nThis repository also contains my own patches for Bromite, of which there currently aren't many.\n\nThere's also a [dev container](https://code.visualstudio.com/docs/devcontainers/containers) configuration for VSCode, which makes it very easy to set up the dev environment.\n\n### Usage\nFirst you should make sure you have a machine that is powerful enough to run this build. I recommend having at least 16GB of RAM and a powerful processor.\n\nThen make sure you have `make` installed. On Ubuntu, you can install it with `sudo apt install make`.\n\nThen you can take a look at the [`Makefile`](Makefile) to see what targets are available. The most commonly used targets while developing are `current` (also available via the `bake` command in the container) and `patch`.\n* `bromite`: downloads Chromium and Bromite code, applies the patches and builds Bromite (the `chrome_public_apk` target). Note that the default bromite distribution does not contain branding, so it looks like normal Chromium\n* `chromium`: downloads Chromium code and Bromite code and builds Chromium patched with some patches from Bromite (same as the official Bromite Chromium release)\n* `current`: Does *not* update the Chromium and Bromite code, but rather just builds what is there. This assumes you want to build Potassium, my own browser variant (it uses the `out/Potassium` directory)\n* `patch-bromite`, `patch-chromium`: Downloads \u0026 patches the code, but doesn't run the build\n* `patch`: Extracts commits you made to the current branch to patch files in the `patches` directory (the branch *must* start with `xarantolus-` and must not end with `-base`; these branches are created by the build script to know where your changes started)\n* `repatch`: Resets the checkout to the Bromite base version and then re-applies the Potassium patches. Useful for testing if the generated patches still apply cleanly\n* `container`: Builds the Docker container. Do this if you don't want to use the pre-built container from the GitHub registry or there were changes to the Dockerfile. This container is the base container for the VSCode dev container\n* `gc`: Runs `git gc` on the Chromium repository within Docker\n* `install`: Assumes you're on Windows and uses `adb` to install a built Bromite APK\n* `upgrade`: Updates the chromium checkout to the latest tag specified by Bromite, applies all Bromite patches to the code and applies all patches from this repo to the code. The last step will probably fail, so you'll have to fix the patches manually. See [my notes on this](docs/How-to-upgrade-to-latest-Bromite-version.md) to see how to continue in case of failure\n* `shell`: Allows you to run commands inside the Docker container\n* `apks`: Copies built APKs from the chromium output directory to an `apks` directory, this is useful for keeping all app versions you have built\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxarantolus%2Fbromite-build","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxarantolus%2Fbromite-build","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxarantolus%2Fbromite-build/lists"}