emtee40 / cromite

Cromite a Bromite fork with ad blocking and privacy enhancements; take back your browser!
https://github.com/uazo/cromite
GNU General Public License v3.0
131 stars 2 forks source link
android-application

current Cromite release


Build Cromite

Cromite (a Bromite fork) - Take back your browser

Bromite


Work in progess

Cromite is a Chromium fork based on Bromite with built-in support for ad blocking and an eye for privacy.

Cromite is available for Android Marshmallow and above (v6.0, API level 23) and Windows.

For the Frequently Asked Questions see F.A.Q..

For documentation see the wiki.

Goals

Cromite's goal is to

In addition, Cromite would like to promote greater integration with other non-profit, open source browsers, encouraging closer collaboration with others, and attempt to integrate them directly into Chromium once they have reached an appropriate level of maturity.

Features

Derived from Bromite

Cromite-specific features

Windows Cromite-specific features

Features not related to privacy

Derived da Bromite

Cromite-specific features

(TODO) You can inspect all functionality/privacy changes by reading the patches and/or the CHANGELOG.

Flags

Flags which have been retired from upstream Chromium but are still available in Bromite.

New flags:

Site settings

Privacy limitations

Cromite's privacy features, including anti-fingerprinting mitigations (which are not comprehensive), are not to be considered useful for journalists and people living in countries with freedom limitations, please look at Tor Browser in such cases. Please note that this project is not free of bugs and that changing the behaviour of a browser can be risky and not without problems.

Releases

All built versions are available as releases.

Cromite is currently built for ARM64, ~x86~ (Android SDK version 23+) and Windows x64.

You will automatically receive notifications about new updates (and be able to install them) via the auto updater functionality (enabled by default), see related wiki page.

For F-droid: work in progress https://github.com/uazo/cromite/issues/64

Auto-update setup for windows

  1. Download https://github.com/henrypp/chrlauncher/releases
  2. Create a chrlauncher.ini
[chrlauncher]

# Custom Chromium update URL (string):
ChromiumUpdateUrl=https://github.com/uazo/cromite/releases/latest/download/updateurl.txt

# Command line for Chromium (string):
# note --user-data-dir= works better if path is absolute
# See here: http://peter.sh/experiments/chromium-command-line-switches/
ChromiumCommandLine=--user-data-dir=".\User Data" --no-default-browser-check

# to enable full logging in c:\temp\log.txt (daily rotate, no automatic deletion)
# ChromiumCommandLine=--enable-logging --v=0 --log-file=C:\temp\log.txt --user-data-dir=".\User Data" --no-default-browser-check

# Chromium executable file name (string):
ChromiumBinary=chrome.exe

# Chromium binaries directory (string):
# Relative (to chrlauncher directory) or full path (env. variables supported).
ChromiumDirectory=.\bin

Enable network process sandbox in windows

I don't include any setups because I don't like the experience of not knowing what they do, so you must manually run this command on first installation:

cd <where_is_the_exe>
icacls . /grant "*S-1-15-2-2:(OI)(CI)(RX)"

see https://github.com/uazo/bromite-buildtools/issues/51

(TODO) Integrity and authenticity

You can verify the integrity of a downloaded APK file from this project with any sha256sum-compatible tool by downloading the corresponding brm_X.Y.Z.sha256.txt or chr_X.Y.Z.sha256.txt file, where X.Y.Z is the release version number. Example:

$ sha256sum --check brm_68.0.3440.54.sha256.txt
arm64_SystemWebView.apk: OK
arm64_ChromePublic.apk: OK
arm64_ChromeModernPublic.apk: OK

You can verify authenticity, e.g. that the author (csagan5) released the file, by using gpg2:

$ gpg2 --quiet --verify brm_68.0.3440.54.sha256.txt.asc
gpg: assuming signed data in 'brm_68.0.3440.54.sha256.txt'
gpg: Signature made Sun 08 Jul 2018 04:22:52 PM CEST using RSA key ID D85DC0C5
gpg: Good signature from "csagan5 <32685696+csagan5@users.noreply.github.com>"

You can download csagan5's public GnuPG key from here: csagan5.asc.

(TODO) How to build

The Bromite main repository contains tags for each corresponding Chromium release (see https://chromium.googlesource.com/chromium/src.git).

Please refer to official Chromium build documentation to get started on how to build Chromium; if you can build Chromium for Android, you can build Bromite.

The Chromium version tag used as base for the patches is available here: RELEASE; this is always corresponding to the git tag for every release. The GN args used to build Bromite are available here: bromite.gn_args. The patches are to be applied second the order specified in the bromite_patches_list.txt file (you can use git am).

(TODO) Contributing

Please submit issues following the issue template; beware that GitHub does not display the templates from mobile.

Patches are welcome and accepted if they match the project goals.

For any usage or development discussion please use GitHub Discussions: https://github.com/bromite/bromite/discussions

Credits

(TODO) License

The patches published as part of the Bromite project are released under GNU GPL v3.