This is the website for Ceno Browser - a web browser designed to circumvent censorship by routing traffic through intermediate ephemeral nodes (bridges).
Once the content is in the censored zone - and if it's not private - it is then further distributed by those nodes in a BitTorrent-like fashion.
This website is hosted by GitHub Pages and content is authored in HTML.
-
Clone the repository:
git clone git@gitlab.com:censorship-no/ceno-website.git -
Install dependencies for i18n support:
You will need Translate Toolkit and gettext.
On a Debian-based system, install these with:
sudo apt updatesudo apt install translate-toolkit gettext
-
In the
ceno-websitemasterbranch, update HTML files inen.srconly (page-specific content or common head & tail). Never edit files inenor other languages' directories.If you need to check how the English site would look, run
./html-assemble-en.sh, open the pages and then restoreen/*.html.Do not create new Weblate components yet as their translations may get lost after POT extraction and PO update below.
-
If updating only the Ceno download link, use the following command:
./git-update-download.sh VERSION DATEwhere
VERSIONandDATEmatch the latest apk found on the dComms server, e.g. for v2.0.0:./git-update-download.sh 2.0.0 2023-01-26_1701 -
On translation freeze, assemble the i18n files:
./git-assemble.shThis automates the following steps:
no-ff-merge origin/masterintoi18n.- In
i18n, run./html-assemble-en.sh, then./pot-extract.sh, then./po-update.sh; commit each step (if it produces changes)
-
Push to
origin/i18n:git push origin i18n -
(Optional) Create new components in Weblate if any; this will take care of adding new PO files.
-
New translations create a Gitlab merge request to the
i18nbranch. Approve the merge request in Gitlab before the next steps. NOTE: Do not squash commits when merging, as Weblate will not always pick up the changes. -
If adding a new language,
touchitsindex.htmlfile before executing the next step. -
When satisfied with translations, update the html for all languages, commit & push to
origin/i18n:./html-update-all.shgit add -A && git commit -m "updating html with new changes"git push origin i18n
-
No-ff-merge
origin/i18nintomasterand push toorigin/master:git checkout mastergit merge --no-ff origin/i18ngit push origin master
Now the website will be automatically updated by the Github CI/CD located at https://github.com/censorship-no/ceno.github.io!
This source code is subject to the terms of the Creative Commons Attribution-ShareAlike 4.0 International License.
We welcome both positive and negative feedback, bug reports and feature requests, as well as questions at support@censorship.no. Our PGP key fingerprint is: 51BE 600C 2711 926C 865D F93F C7DC C123 F0DD B862
