Add support for localization (#995)

This commit is contained in:
Jonah Aragon 2022-04-13 19:19:13 -05:00 committed by GitHub
parent 7f71093e33
commit e39f063568
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
41 changed files with 113 additions and 150 deletions

View File

@ -1,46 +0,0 @@
name: Build Website
on:
pull_request:
branches:
- main
env:
PYTHON_VERSION: 3.x
jobs:
build:
name: Build website
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Python runtime
uses: actions/setup-python@v3
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Cache files
uses: actions/cache@v3.0.2
with:
key: ${{ github.ref }}
path: .cache
- name: Install Python dependencies
run: |
pip install mkdocs
pip install mkdocs-material
- name: Build website
run: |
mkdocs build
mv .well-known site/
tar cvf site.tar site
mkdocs --version
- name: Package website
uses: actions/upload-artifact@v3
with:
name: generated-site
path: site.tar

View File

@ -29,6 +29,7 @@ jobs:
- name: Install Python dependencies
run: |
pip install 'mkdocs>=1.3.0'
pip install mkdocs-static-i18n
- name: Install mkdocs-material Insiders build
if: github.event.repository.fork == false

View File

@ -6,6 +6,7 @@ name = "pypi"
[packages]
mkdocs = "*"
mkdocs-material = {path = "./mkdocs-material"}
mkdocs-static-i18n = "*"
[dev-packages]
scour = "*"

9
Pipfile.lock generated
View File

@ -1,7 +1,7 @@
{
"_meta": {
"hash": {
"sha256": "18f7bfb9a1d405016b6c63e1253e974e974d3e67b8e8a6b98d132ac1e780c822"
"sha256": "57e0161a7d6dbb050b1a0ab71eaaf145b951010f8a3054dfab1c5f24d4a293cf"
},
"pipfile-spec": 6,
"requires": {
@ -305,6 +305,13 @@
"markers": "python_version >= '3.6'",
"version": "==1.0.3"
},
"mkdocs-static-i18n": {
"hashes": [
"sha256:0d97df64b5be7b34dc112d4ccfba28352b9fccd1b7a3babf229f30d25f6ebb36"
],
"index": "pypi",
"version": "==0.44"
},
"packaging": {
"hashes": [
"sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb",

View File

@ -47,6 +47,7 @@ Our current list of team members can be found [here](https://github.com/orgs/pri
- 💬 [Start a discussion or suggest an idea](https://github.com/privacyguides/privacyguides.org/discussions)
- 💖 [Sponsor the project](https://github.com/sponsors/privacyguides)
- 🈴 [Help translate the site](https://crwd.in/privacyguides) [[Matrix chat](https://matrix.to/#/#pg-i18n:aragon.sh)]
- 📝 Edit the site, everything's accessible in this repo
- Browse our [open issues](https://github.com/privacyguides/privacyguides.org/issues) to see what needs to be updated
- When making more significant (than simple typo fixes, etc.) changes, update the [changelog](/CHANGELOG.md)
@ -54,16 +55,6 @@ Our current list of team members can be found [here](https://github.com/orgs/pri
## Developing
1. Clone this repository: `git clone https://github.com/privacyguides/privacyguides.org`
2. Install [Python 3.6+](https://www.python.org/downloads/)
3. Install [mkdocs-material](https://squidfunk.github.io/mkdocs-material/getting-started/): `pip install mkdocs-material`
4. Serve the site locally: `mkdocs serve`
- The site will be available at `http://localhost:8000/`
Your local site will appear slightly different, because the production version of the website uses a private/custom build of mkdocs-material with additional features.
Team members with access to [mkdocs-material-insiders](https://github.com/privacyguides/mkdocs-material-insiders) should instead:
1. Clone this repository and submodules: `git clone --recurse-submodules https://github.com/privacyguides/privacyguides.org`
2. Install [Python 3.6+](https://www.python.org/downloads/)
3. Install **pipenv**: `pip install pipenv`

12
crowdin.yml Normal file
View File

@ -0,0 +1,12 @@
"preserve_hierarchy": true
files:
- source: "/docs/**/*.en.md"
translation: "/docs/**/%file_name%.%locale_with_underscore%.md"
translation_replace:
"en.": ""
update_option: update_as_unapproved
- source: "/theme/overrides/*.en.html"
translation: "/theme/overrides/%file_name%.%locale_with_underscore%.html"
translation_replace:
"en.": ""
update_option: update_as_unapproved

View File

@ -1,8 +1,5 @@
---
layout: page
permalink: /terms-and-notices/
title: "Notices and Disclaimers"
description: "Privacy Guides is provided with good intentions on an "as-is" basis, without warranty, and disclaiming liability for damages."
icon: material/message-alert
hide:
- toc

View File

@ -1,8 +1,5 @@
---
layout: page
permalink: /privacy-policy/
title: "Privacy Policy"
description: "This Privacy Statement explains what information Privacy Guides and its related entities collect about its users, what we do with that information, and how we handle the content you place in our products and services."
icon: material/file-search
---

View File

@ -1,5 +1,5 @@
---
title: Browser Recommendations
title: "Web Browsers"
icon: octicons/browser-16
---
These are our current web browser recommendations and settings. We recommend keeping extensions to a minimum: they have privileged access within your browser, require you to trust the developer, can make you [stand out](https://en.wikipedia.org/wiki/Device_fingerprint#Browser_fingerprint), and [weaken](https://groups.google.com/a/chromium.org/g/chromium-extensions/c/0ei-UCHNm34/m/lDaXwQhzBAAJ) site isolation.

View File

@ -1,5 +1,5 @@
---
title: Calendar and Contact Sync Tools
title: "Calendar and Contact Sync"
icon: material/calendar
---
Calendaring and contacts are some of the most sensitive data posess. Use only products that use end-to-end encryption (E2EE) at rest. This prevents a provider from reading your data.

View File

@ -1,5 +1,5 @@
---
title: Cloud Storage
title: "Cloud Storage"
icon: material/file-cloud
---
If you are currently using a Cloud Storage Service like Dropbox, Google Drive, Microsoft OneDrive or Apple iCloud, you are putting complete trust in your service provider to not look at your files.

View File

@ -1,5 +1,5 @@
---
title: Email Clients
title: "Email Clients"
icon: material/email-open
---
Our recommendation list contains email clients that support both [OpenPGP](/encryption/#openpgp) and strong authentication such as [Open Authorization (OAuth)](https://en.wikipedia.org/wiki/OAuth). OAuth allows you to use [Multi-Factor Authentication](/multi-factor-authentication) and prevent account theft.

View File

@ -1,5 +1,5 @@
---
title: Private Email Providers
title: "Private Email Providers"
icon: material/email
---

View File

@ -1,5 +1,5 @@
---
title: Encryption Software
title: "Encryption Software"
icon: material/file-lock
---
Encryption of data is the only way to control who can access it. If you are currently not using encryption software for your hard disk, emails, or files, you should pick an option here.

View File

@ -1,5 +1,5 @@
---
title: File Sharing and Sync
title: "File Sharing and Sync"
icon: material/share-variant
---
Discover how to privately share your files between your devices, with your friends and family, or anonymously online.

View File

@ -1,5 +1,5 @@
---
template: overrides/home.html
template: overrides/home.en.html
hide:
- navigation
- toc

View File

@ -1,5 +1,5 @@
---
title: Linux
title: "Linux"
icon: fontawesome/brands/linux
---
Linux distributions are commonly recommended for privacy protection and user freedom. Below are some suggestions with some general privacy and security improvements.

View File

@ -1,5 +1,5 @@
---
title: Metadata Removal Tools
title: "Metadata Removal Tools"
icon: material/tag-remove
---
When sharing files, be sure to remove associated metadata. Image files commonly include [EXIF](https://en.wikipedia.org/wiki/Exif) data. Photos sometimes even include [GPS](https://en.wikipedia.org/wiki/Global_Positioning_System) coordinates in the file metadata.

View File

@ -1,5 +1,5 @@
---
title: Multi-Factor Authenticator Recommendations
title: "Multi-Factor Authenticators"
icon: 'material/two-factor-authentication'
---
## Hardware Security Keys

View File

@ -1,5 +1,5 @@
---
title: News Aggregators
title: "News Aggregators"
icon: octicons/rss-24
---

View File

@ -1,5 +1,5 @@
---
title: Notebooks
title: "Notebooks"
icon: material/notebook-edit-outline
---

View File

@ -1,5 +1,5 @@
---
title: Password Managers
title: "Password Managers"
icon: material/form-textbox-password
---
Stay safe and secure online with an encrypted and open-source password manager.

View File

@ -1,5 +1,5 @@
---
title: Productivity Tools
title: "Productivity Tools"
icon: material/file-sign
---
Get working and collaborating without sharing your documents with a middleman or trusting a cloud provider.

View File

@ -1,5 +1,5 @@
---
title: Qubes OS
title: "Qubes OS"
icon: pg/qubes-os
---
Qubes OS is a distribution of Linux that uses [Xen](https://en.wikipedia.org/wiki/Xen) to provide app isolation.

View File

@ -1,5 +1,5 @@
---
title: Real-Time Communication Tools
title: "Real-Time Communication"
icon: material/chat-processing
---
## Encrypted Instant Messengers

View File

@ -1,5 +1,5 @@
---
title: Router Firmware
title: "Router Firmware"
icon: material/router-wireless
---
Below are a few alternative operating systems, that can be used on routers, Wi-Fi access points etc.

View File

@ -1,5 +1,5 @@
---
title: Search Engines
title: "Search Engines"
icon: material/search-web
---
Use a search engine that doesn't build an advertising profile based on your searches.

View File

@ -1,6 +1,5 @@
---
title: Multi-factor Authentication
description: "Using strong MFA can stop over 99% of unauthorized account accesses, and it's easy to set up on the services you already use."
title: "Multi-factor Authentication"
icon: 'material/two-factor-authentication'
---
**Multi-factor authentication** (MFA, or 2FA) is a security mechanism that requires additional steps beyond entering your username (or email) and password. The most common method are time limited codes you might receive from an SMS or app.

View File

@ -1,5 +1,5 @@
---
title: Self-Contained Networks
title: "Self-Contained Networks"
icon: material/security-network
---
If you are currently browsing clearnet and want to access the dark web, this section is for you.

View File

@ -1,6 +1,5 @@
---
title: Integrating Metadata Removal
description: "Guides for integrating metadata removal solutions in a native fashion."
title: "Integrating Metadata Removal"
icon: 'material/data-matrix-remove'
---

View File

@ -1,6 +1,5 @@
---
layout: evergreen
title: What are threat models?
title: "What are threat models?"
icon: 'material/target-account'
---

View File

@ -1,5 +1,5 @@
---
title: Recommended Privacy Tools
title: "Privacy Tools"
icon: material/tools
hide:
- toc

View File

@ -1,5 +1,5 @@
---
title: Video Streaming
title: "Video Streaming"
icon: material/video-wireless
---
The primary threat when using a video streaming platform is that your streaming habits and subscription lists could be used to profile you. You should combine these tools with a [VPN](/vpn) or [Tor](https://www.torproject.org/) to make it harder to profile your usage.

View File

@ -1,5 +1,5 @@
---
title: VPN Services
title: "VPN Services"
icon: material/vpn
---

View File

@ -1,10 +0,0 @@
INHERIT: mkdocs.yml
site_url: "https://www.privacyguides.org/"
watch:
- theme
- mkdocs.yml
plugins:
- search
- privacy:
externals_exclude:
- cdn.jsdelivr.net/npm/mathjax@3/*

View File

@ -1,3 +1,7 @@
docs_dir: 'docs'
site_url: "https://www.privacyguides.org/"
site_dir: 'site'
site_name: Privacy Guides
site_description: |
Massive organizations are monitoring your online activities. Privacy Guides is your central privacy and security resource to protect yourself online.
@ -5,6 +9,7 @@ copyright: |
<b>Privacy Guides</b> is a non-profit, socially motivated website that provides information for protecting your data security and privacy.<br>
We do not make money from recommending certain products, and we do not utilize affiliate links.<br>
This content was made available by the Privacy Guides team and contributors. <a href="https://github.com/privacyguides/privacyguides">Get involved</a>!
extra:
generator: false
social:
@ -20,52 +25,6 @@ repo_url: https://github.com/privacyguides/privacyguides.org
repo_name: privacyguides.org
edit_uri: edit/main/docs/
nav:
- Home: 'index.md'
- 'Privacy Introduction':
- 'Threat Modeling': 'threat-modeling.md'
- 'Technology Basics':
- 'DNS': 'technology/dns.md'
- 'Security Basics':
- 'Multi-Factor Authentication': 'security/multi-factor-authentication.md'
- 'Setup Guides':
- 'Integrating Metadata Removal': 'setup/integrating-metadata-removal.md'
- 'Recommendations':
- 'Privacy Tools': 'tools.md'
- 'Browsers':
- 'Web Browsers': 'browsers.md'
- 'Operating Systems':
- 'Android': 'android.md'
- 'Linux Desktop': 'linux-desktop.md'
- 'Qubes OS': 'qubes.md'
- 'Router Firmware': 'router.md'
- 'Providers':
- 'Cloud Storage': 'cloud.md'
- 'DNS Servers': 'dns.md'
- 'Email Providers': 'email.md'
- 'Search Engines': 'search-engines.md'
- 'VPN Providers': 'vpn.md'
- 'Software':
- 'Calendar/Contacts Sync': 'calendar-contacts.md'
- 'Digital Notebooks': 'notebooks.md'
- 'Email Clients': 'email-clients.md'
- 'Encryption Tools': 'encryption.md'
- 'File Sharing/Sync': 'file-sharing.md'
- 'Metadata Removal Tools': 'metadata-removal-tools.md'
- 'Multi-Factor Authenticators': 'multi-factor-authentication.md'
- 'Password Managers': 'passwords.md'
- 'Productivity Tools': 'productivity.md'
- 'Real-Time Communication': 'real-time-communication.md'
- 'News Aggregators': 'news-aggregators.md'
- 'Self-Contained Networks': 'self-contained-networks.md'
- 'Video Streaming': 'video-streaming.md'
- 'About Us':
- 'Privacy Guides': 'about.md'
- 'Notices': 'about/notices.md'
- 'Privacy Policy': 'about/privacy-policy.md'
- 'Discussions': 'https://github.com/orgs/privacyguides/discussions'
- 'Blog': 'https://blog.privacyguides.org/'
theme:
name: material
custom_dir: theme
@ -95,7 +54,18 @@ watch:
- theme
plugins:
- i18n:
default_language: en
material_alternate: true
languages:
en:
name: English
build: false
- tags
- search
- privacy:
externals_exclude:
- cdn.jsdelivr.net/npm/mathjax@3/*
extra_css:
- stylesheets/extra.css
markdown_extensions:
@ -129,3 +99,49 @@ markdown_extensions:
extra_javascript:
- javascripts/mathjax.js
nav:
- Home: 'index.md'
- 'Privacy Introduction':
- 'threat-modeling.md'
- 'Technology Basics':
- 'technology/dns.md'
- 'Security Basics':
- 'security/multi-factor-authentication.md'
- 'Setup Guides':
- 'setup/integrating-metadata-removal.md'
- 'Recommendations':
- 'tools.md'
- 'Browsers':
- 'browsers.md'
- 'Operating Systems':
- 'android.md'
- 'linux-desktop.md'
- 'qubes.md'
- 'router.md'
- 'Providers':
- 'cloud.md'
- 'dns.md'
- 'email.md'
- 'search-engines.md'
- 'vpn.md'
- 'Software':
- 'calendar-contacts.md'
- 'notebooks.md'
- 'email-clients.md'
- 'encryption.md'
- 'file-sharing.md'
- 'metadata-removal-tools.md'
- 'multi-factor-authentication.md'
- 'passwords.md'
- 'productivity.md'
- 'real-time-communication.md'
- 'news-aggregators.md'
- 'self-contained-networks.md'
- 'video-streaming.md'
- 'About Us':
- 'about.md'
- 'about/notices.md'
- 'about/privacy-policy.md'
- 'Discussions': 'https://github.com/orgs/privacyguides/discussions'
- 'Blog': 'https://blog.privacyguides.org/'

View File

@ -10,8 +10,8 @@
<div class="mdx-hero">
<div class="mdx-hero__content">
<h1>The guide to restoring your online privacy.</h1>
<p>{{ config.site_description }}</p>
<a href="{{ 'tools/' | url }}" title="Recommended privacy tools, services, and knowledge" class="md-button md-button--primary">
<p>Massive organizations are monitoring your online activities. Privacy Guides is your central privacy and security resource to protect yourself online.</p>
<a href="tools/" title="Recommended privacy tools, services, and knowledge" class="md-button md-button--primary">
Recommended Tools
</a>
<a href="https://blog.privacyguides.org/" title="Blog posts from Privacy Guides contributors" class="md-button">