Repository containing website for ungoogled-chromium binaries.
IMPORTANT: These binaries are provided by anyone who are willing to build and submit them. Because these binaries are not necessarily reproducible, authenticity cannot be guaranteed.
For problems, suggestions, and questions, please use the Issue tracker.
There are two kinds of binaries:
- Development - Binaries needing testing
- Release - Binaries ready for general use
Development binaries are currently promoted to release binaries if they have gone for at least two weeks with no issues.
- If a bug occurs during the two weeks, the development build will never be promoted to a release build.
- If a severe bug occurs after two weeks, the build can be demoted to a development build.
When creating new pages or adding new versions, use an existing version as a template to follow. If you have questions or suggestions, please create an Issue.
Changing the binary classification
status key in the corresponding platform ini to either
Publishing new binaries
- Python 3 for all scripts under
- Python-Markdown for
Steps to publish a new binary. An example of these steps is in the next section.
- Fork the main binaries repository (ungoogled-software/ungoogled-chromium-binaries)
- If this has been done before, pull in new changes from this one if necessary.
- Create a new Release (i.e. using GitHub's Release feature) in the fork and upload binaries to it. The tag name used must be unique for each Release; it normally matches the ungoogled-chromium version.
- Upload binaries to the new Release
utilities/platform_ini_generator.pyto generate an INI file with the correct URLs to binaries. It requires paths to a locally stored copy of the binaries for computing hashes. Redirect the standard output to an
.inifile in the
config/platformsdirectory with the corresponding version as the name. Use the
--helpargument for more details.
- If a directory structure in
config/platformsdoesn't exist for the binary's target platform and version, create the necessary directories with the associated
display_namefiles in the same manner as existing platforms.
- If a directory structure in
- If necessary, update
config/valid_versions. If you are uploading the first build for a new version of ungoogled-chromium, this needs to be updated.
utilities/site_generator.pyto generate the new HTML files. There are no arguments. It must be run from the root of the repository.
- Push the resulting changes in the repository. Make a pull request against the main repository.
- This can be bypassed if one is part of the Binaries Team.
platform_ini_generator.pyis currently restricted to generating INI files with URLs to binaries in GitHub releases. If binaries are uploaded elsewhere, then the INI must be created by other means.
- Additional changes can be made to the website configuration before step 5 as necessary.
Example command-line steps (with comments, denoted by a hash
# symbol). Replace
YOURNAME in the steps with your GitHub username.
# In GitHub, fork ungoogled-software/ungoogled-chromium-binaries to YOURNAME/ungoogled-chromium-binaries git clone https://github.com/YOURNAME/ungoogled-chromium-binaries.git cd ungoogled-chromium-binaries git remote add upstream https://github.com/ungoogled-software/ungoogled-chromium-binaries.git git config branch.master.remote upstream git config branch.master.pushRemote origin
The following example demonstrates publishing Debian 9 (stretch) amd64 packages located in
/home/user/ungoogled-chromium/buildspace/ (which is assumed to be the shell expanded form of
~/ungoogled-chromium/buildspace/) for ungoogled-chromium version
# In GitHub, create a new Release on YOURNAME/ungoogled-chromium-binaries with a name "99.0.1234.567-1" (without quotes) and a new tag "99.0.1234.567-1" (without quotes; insert it into the tag field). Upload all necessary files from /home/user/ungoogled-chromium/buildspace/ into the Release. cd ungoogled-chromium-binaries # The same as the one setup above git pull # Edit config/valid_versions and add "99.0.1234.567-1" (without quotes) ONLY if it does not exist. # Create the directories debian/ and debian/stretch_amd64 with corresponding display_name files in config/platforms/ ONLY if they do NOT exist. ./utilities/platform_ini_generator.py 99.0.1234.567-1 YOURNAME ~/ungoogled-chromium/buildspace/*.deb ~/ungoogled-chromium/buildspace/*.changes ~/ungoogled-chromium/buildspace/*.buildinfo > config/platforms/debian/stretch_amd64/99.0.1234.567-1.ini ./utilities/site_generator.py git add * git commit -m 'Add 99.0.1234.567-1 binaries for Debian stretch amd64' git push # In GitHub, create a pull request in ungoogled-software/ungoogled-chromium-binaries with the new change in YOURNAME/ungoogled-chromium-binaries