1
0
mirror of https://github.com/privacyguides/privacyguides.org.git synced 2025-07-06 11:32:42 +00:00

Compare commits

...

10 Commits
v2.19 ... v2.20

Author SHA1 Message Date
b5205aee77 Password manager corrections (#1703) 2022-08-30 14:06:36 -05:00
f85803d5c1 Add 1Password (#1666)
Signed-off-by: Daniel Gray <dng@disroot.org>
2022-08-29 19:52:51 +09:30
b3c976b694 Mirror to sourcehut 2022-08-28 22:32:48 -05:00
41f785b0fd Small fixes to Data Redaction page (#1702) 2022-08-28 22:25:33 -05:00
3803bdd72d Fix link about profiles (#1690)
Co-authored-by: Jonah Aragon <github@aragon.science>
Signed-off-by: Daniel Gray <dng@disroot.org>
2022-08-28 23:43:45 +09:30
b373e23429 Move Bitwarden Send to Bitwarden card (#1700)
Signed-off-by: Daniel Gray <dng@disroot.org>
2022-08-28 23:27:49 +09:30
ba7b53aceb Enable automatic GitHub Release generation 2022-08-24 20:30:40 -05:00
f255d49760 Create release workflow (#1693) 2022-08-24 20:24:49 -05:00
88bb0721eb Enable social cards (#1691) 2022-08-24 20:18:26 -05:00
7a594bbf27 Correct color scheme with JS disabled
Fixes #1684
2022-08-24 13:02:51 -05:00
15 changed files with 117 additions and 48 deletions

View File

@ -29,3 +29,15 @@ jobs:
with: with:
source-repo: "git@github.com:privacyguides/privacyguides.org.git" source-repo: "git@github.com:privacyguides/privacyguides.org.git"
destination-repo: "git@codeberg.org:privacyguides/privacyguides.org.git" destination-repo: "git@codeberg.org:privacyguides/privacyguides.org.git"
- name: Cleanup
run: |
sudo rm -rf privacyguides.org.git
- name: Mirror to SourceHut
uses: wearerequired/git-mirror-action@v1
env:
SSH_PRIVATE_KEY: ${{ secrets.ACTIONS_SSH_KEY }}
with:
source-repo: "git@github.com:privacyguides/privacyguides.org.git"
destination-repo: "git@git.sr.ht:~jonaharagon/privacyguides.org"

View File

@ -34,7 +34,7 @@ jobs:
- name: Python setup - name: Python setup
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: '3.7' python-version: '3.10'
- name: Cache files - name: Cache files
uses: actions/cache@v3.0.8 uses: actions/cache@v3.0.8
@ -50,6 +50,7 @@ jobs:
- name: Build website - name: Build website
env: env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARDS: true
run: | run: |
pipenv run mkdocs build --config-file mkdocs.production.yml pipenv run mkdocs build --config-file mkdocs.production.yml
mv .well-known site/ mv .well-known site/
@ -66,8 +67,6 @@ jobs:
with: with:
path: site path: site
deploy: deploy:
name: Deploy name: Deploy
needs: build needs: build

View File

@ -29,12 +29,13 @@ jobs:
- name: Set up Python runtime - name: Set up Python runtime
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: '3.7' python-version: '3.10'
- name: Deploy to surge.sh - name: Deploy to surge.sh
uses: afc163/surge-preview@v1 uses: afc163/surge-preview@v1
env: env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARDS: true
with: with:
surge_token: ${{ secrets.SURGE_TOKEN }} surge_token: ${{ secrets.SURGE_TOKEN }}
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}

19
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,19 @@
name: 📦 Releases
on:
push:
tags:
- '*'
jobs:
release:
name: Create Release
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v2
- uses: ncipollo/release-action@v1
with:
generateReleaseNotes: true
token: ${{ secrets.REPO_TOKEN }}

View File

@ -17,4 +17,4 @@ mkdocs-git-committers-plugin-2 = "*"
scour = "*" scour = "*"
[requires] [requires]
python_version = "3.7" python_version = "3.10"

18
Pipfile.lock generated
View File

@ -1,11 +1,11 @@
{ {
"_meta": { "_meta": {
"hash": { "hash": {
"sha256": "ce2630991a262d8ca83cfc13f70347f8fdd9f9d07c281ea753f5fc52f3aebbd6" "sha256": "d3a92aec93d430ec2770963ae2dc2f72ad9f0dd042170dc90ab7a0c07b6dcda6"
}, },
"pipfile-spec": 6, "pipfile-spec": 6,
"requires": { "requires": {
"python_version": "3.7" "python_version": "3.10"
}, },
"sources": [ "sources": [
{ {
@ -118,11 +118,11 @@
}, },
"charset-normalizer": { "charset-normalizer": {
"hashes": [ "hashes": [
"sha256:5189b6f22b01957427f35b6a08d9a0bc45b46d3788ef5a92e978433c7a35f8a5", "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845",
"sha256:575e708016ff3a5e3681541cb9d79312c416835686d054a23accb873b254f413" "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"
], ],
"markers": "python_version >= '3.6'", "markers": "python_version >= '3.6'",
"version": "==2.1.0" "version": "==2.1.1"
}, },
"click": { "click": {
"hashes": [ "hashes": [
@ -196,7 +196,7 @@
"sha256:637245b8bab2b6502fcbc752cc4b7a6f6243bb02b31c5c26156ad103d3d45670", "sha256:637245b8bab2b6502fcbc752cc4b7a6f6243bb02b31c5c26156ad103d3d45670",
"sha256:7401a975809ea1fdc658c3aa4f78cc2195a0e019c5cbc4c06122884e9ae80c23" "sha256:7401a975809ea1fdc658c3aa4f78cc2195a0e019c5cbc4c06122884e9ae80c23"
], ],
"markers": "python_version < '3.10'", "markers": "python_version >= '3.7'",
"version": "==4.12.0" "version": "==4.12.0"
}, },
"jinja2": { "jinja2": {
@ -697,11 +697,11 @@
}, },
"urllib3": { "urllib3": {
"hashes": [ "hashes": [
"sha256:c33ccba33c819596124764c23a97d25f32b28433ba0dedeb77d873a38722c9bc", "sha256:3fa96cf423e6987997fc326ae8df396db2a8b7c667747d47ddd8ecba91f4a74e",
"sha256:ea6e8fb210b19d950fab93b60c9009226c63a28808bc8386e05301e25883ac0a" "sha256:b930dd878d5a8afb066a637fbb35144fe7901e3b209d1cd4f524bd0e9deee997"
], ],
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' and python_version < '4'", "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' and python_version < '4'",
"version": "==1.26.11" "version": "==1.26.12"
}, },
"watchdog": { "watchdog": {
"hashes": [ "hashes": [

View File

@ -72,6 +72,7 @@ Submit stories or requests to: `freddy@privacyguides.org`
[![Gitea](https://img.shields.io/static/v1?logo=gitea&label=&message=Gitea&color=000&style=for-the-badge)](https://code.privacyguides.dev/privacyguides/privacyguides.org) [![Gitea](https://img.shields.io/static/v1?logo=gitea&label=&message=Gitea&color=000&style=for-the-badge)](https://code.privacyguides.dev/privacyguides/privacyguides.org)
[![GitLab](https://img.shields.io/static/v1?logo=gitlab&label=&message=GitLab&color=000&style=for-the-badge)](https://gitlab.com/privacyguides/privacyguides.org) [![GitLab](https://img.shields.io/static/v1?logo=gitlab&label=&message=GitLab&color=000&style=for-the-badge)](https://gitlab.com/privacyguides/privacyguides.org)
[![Codeberg](https://img.shields.io/static/v1?logo=codeberg&label=&message=Codeberg&color=000&style=for-the-badge)](https://codeberg.org/privacyguides/privacyguides.org) [![Codeberg](https://img.shields.io/static/v1?logo=codeberg&label=&message=Codeberg&color=000&style=for-the-badge)](https://codeberg.org/privacyguides/privacyguides.org)
[![SourceHut](https://img.shields.io/static/v1?logo=git&label=&message=SourceHut&color=000&style=for-the-badge)](https://git.sr.ht/~jonaharagon/privacyguides.org)
## Developing ## Developing
@ -84,7 +85,7 @@ This website uses [`mkdocs-material-insiders`](https://squidfunk.github.io/mkdoc
- `git submodule init` - `git submodule init`
- `git submodule update docs/assets/brand` - `git submodule update docs/assets/brand`
- `git config gpg.ssh.allowedSignersFile .allowed_signers` - `git config gpg.ssh.allowedSignersFile .allowed_signers`
2. Install [Python 3.6+](https://www.python.org/downloads/) 2. Install [Python 3.6+](https://www.python.org/downloads/) (currently only tested with 3.10)
3. Install [dependencies](/Pipfile): `pip install mkdocs mkdocs-material mkdocs-static-i18n typing-extensions` 3. Install [dependencies](/Pipfile): `pip install mkdocs mkdocs-material mkdocs-static-i18n typing-extensions`
4. Serve the site locally: `mkdocs serve` 4. Serve the site locally: `mkdocs serve`
- The site will be available at `http://localhost:8000` - The site will be available at `http://localhost:8000`
@ -95,10 +96,10 @@ This website uses [`mkdocs-material-insiders`](https://squidfunk.github.io/mkdoc
1. Clone this repository and submodules: `git clone --recurse-submodules https://github.com/privacyguides/privacyguides.org.git` 1. Clone this repository and submodules: `git clone --recurse-submodules https://github.com/privacyguides/privacyguides.org.git`
2. Enable SSH commit verification with our local [`.allowed_signers`](/.allowed_signers) file: `git config gpg.ssh.allowedSignersFile .allowed_signers` 2. Enable SSH commit verification with our local [`.allowed_signers`](/.allowed_signers) file: `git config gpg.ssh.allowedSignersFile .allowed_signers`
3. Install Python **3.7** 3. Install Python **3.10**
4. Install **pipenv**: `pip install pipenv` 4. Install **pipenv**: `pip install pipenv`
5. Install dependencies: `pipenv install --dev` 5. Install dependencies: `pipenv install --dev` (install [Pillow and CairoSVG](https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#dependencies) as well to generate social cards)
6. Serve the site locally: `pipenv run mkdocs serve --config-file mkdocs.production.yml` 6. Serve the site locally: `pipenv run mkdocs serve --config-file mkdocs.production.yml` (set `CARDS=true` to generate social cards)
- The site will be available at `http://localhost:8000` - The site will be available at `http://localhost:8000`
- You can build the site locally with `pipenv run mkdocs build` - You can build the site locally with `pipenv run mkdocs build`
- This version of the site should be identical to the live, production version - This version of the site should be identical to the live, production version
@ -110,11 +111,7 @@ If you commit to `main` with commits signed with your SSH key, you should add yo
1. Create a new tag: `git tag -s v2.X.X -m 'Some message'` 1. Create a new tag: `git tag -s v2.X.X -m 'Some message'`
- [View existing tags](https://github.com/privacyguides/privacyguides.org/tags) - [View existing tags](https://github.com/privacyguides/privacyguides.org/tags)
- Tag [numbering](https://semver.org/): Increment the MINOR (2nd) number when making significant changes (adding/deleting pages, etc.), increment the PATCH (3rd) number when making minor changes (typos, bug fixes). Probably leave the MAJOR number at 2 until a massive revamp (v1 -> v2 was the Jekyll to MkDocs transition). - Tag [numbering](https://semver.org/): Increment the MINOR (2nd) number when making significant changes (adding/deleting pages, etc.), increment the PATCH (3rd) number when making minor changes (typos, bug fixes). Probably leave the MAJOR number at 2 until a massive revamp (v1 -> v2 was the Jekyll to MkDocs transition).
- Consider enabling GPG tag signing by default (`git config tag.gpgSign true`) to avoid missing signatures
2. Push the tag to GitHub: `git push --tags` 2. Push the tag to GitHub: `git push --tags`
3. [Create a new release](https://github.com/privacyguides/privacyguides.org/releases/new) selecting the new tag 3. A GitHub Release will be automatically created and deployed to the live site.
- Title the release the same as the tag version number, i.e. `v2.X.X` - You may wish to manually check or edit the release changelog/title after it is published for accuracy.
- For more significant releases, add a **short** title, for example [v2.3.0 - Localization Support](https://github.com/privacyguides/privacyguides.org/releases/tag/v2.3.0) or [v2.2.0 - Removing Social Networks](https://github.com/privacyguides/privacyguides.org/releases/tag/v2.2.0)
- GitHub should let you auto-generate release notes based on PR titles
- Mark more significant changes in bold, see [v2.12.0](https://github.com/privacyguides/privacyguides.org/releases/tag/v2.12.0) for example
4. Publish release, it will be deployed to the live site automatically
- When publishing more significant releases (generally any with a MINOR version increment) check the "Create a discussion for this release" box to post an announcement

View File

@ -33,7 +33,7 @@ We recommend installing one of these custom Android operating systems on your de
[:octicons-code-16:](https://grapheneos.org/source){ .card-link title="Source Code" } [:octicons-code-16:](https://grapheneos.org/source){ .card-link title="Source Code" }
[:octicons-heart-16:](https://grapheneos.org/donate){ .card-link title=Contribute } [:octicons-heart-16:](https://grapheneos.org/donate){ .card-link title=Contribute }
GrapheneOS supports [Sandboxed Google Play](https://grapheneos.org/usage#sandboxed-google-play), which runs [Google Play Services](https://en.wikipedia.org/wiki/Google_Play_Services) fully sandboxed like any other regular app. This means you can take advantage of most Google Play Services, such as [push notifications](https://firebase.google.com/docs/cloud-messaging/), while giving you full control over their permissions and access, and while containing them to a specific work profile or user [profile](android/overview.md#user-profiles) of your choice. GrapheneOS supports [Sandboxed Google Play](https://grapheneos.org/usage#sandboxed-google-play), which runs [Google Play Services](https://en.wikipedia.org/wiki/Google_Play_Services) fully sandboxed like any other regular app. This means you can take advantage of most Google Play Services, such as [push notifications](https://firebase.google.com/docs/cloud-messaging/), while giving you full control over their permissions and access, and while containing them to a specific [work profile](android/overview.md#work-profile) or [user profile](android/overview.md#user-profiles) of your choice.
Google Pixel phones are the only devices that currently meet GrapheneOS's [hardware security requirements](https://grapheneos.org/faq#device-support). Google Pixel phones are the only devices that currently meet GrapheneOS's [hardware security requirements](https://grapheneos.org/faq#device-support).

View File

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 128 128" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g transform="matrix(1.10345,0,0,1.10345,0,0)">
<path d="M2,58C2,88.929 27.072,114 58,114C88.928,114 114,88.929 114,58C114,27.072 88.928,2 58,2C27.072,2 2,27.072 2,58Z" style="fill:white;"/>
<path d="M58,14C82.3,14 102,33.7 102,58C102,82.301 82.3,102 58,102C33.7,102 14,82.301 14,58C14,33.7 33.7,14 58,14" style="fill:rgb(26,140,255);"/>
<path d="M0,58C0,90.034 25.967,116 58,116C90.033,116 116,90.034 116,58C116,25.967 90.033,0 58,0C25.967,0 0,25.967 0,58ZM2,58C2,27.075 27.069,2 58,2C88.931,2 114,27.075 114,58C114,88.925 88.932,114 58,114C27.068,114 2,88.925 2,58Z" style="fill-opacity:0.5;fill-rule:nonzero;"/>
<path d="M113.921,55C113.973,55.993 114,56.994 114,58C114,88.928 88.928,114 58,114C27.072,114 2,88.928 2,58C2,56.994 2.027,55.993 2.079,55C3.638,84.533 28.079,108 58,108C87.69,108 111.985,84.894 113.88,55.682L113.921,55ZM58,8C85.062,8 107,29.938 107,57C107,72.13 100.143,85.657 89.368,94.646C98.37,86.249 104,74.282 104,61C104,35.595 83.405,15 58,15C32.595,15 12,35.595 12,61C12,74.282 17.629,86.249 26.631,94.646C15.857,85.657 9,72.129 9,57C9,29.938 30.938,8 58,8Z" style="fill-opacity:0.05;"/>
<path d="M58,14C82.304,14 102,33.703 102,58C102,82.298 82.304,102 58,102C33.94,102 14.394,82.69 14.006,58.728L14,58C14,33.703 33.696,14 58,14ZM58,16C34.804,16 16,34.804 16,58C16,81.197 34.804,100 58,100C81.196,100 100,81.197 100,58C100,34.804 81.196,16 58,16Z" style="fill-opacity:0.26;fill-rule:nonzero;"/>
<path d="M58.223,23C58.181,23 58.138,23 58.096,23C38.843,23 23,38.843 23,58.096C23,58.138 23,58.181 23,58.223C23,77.403 38.743,93 58.223,93C77.33,93 93,77.33 93,58.223C93,38.743 77.402,23 58.223,23ZM58.221,25C76.225,25 91,39.775 91,58.221C91,76.226 76.225,91 58.221,91C39.775,91 25,76.226 25,58.221C25,58.179 25,58.138 25,58.096C25,39.94 39.94,25 58.096,25C58.138,25 58.179,25 58.221,25Z" style="fill-opacity:0.25;fill-rule:nonzero;"/>
<path d="M58.221,25C76.225,25 91,39.775 91,58.221C91,76.226 76.225,91 58.221,91C39.775,91 25,76.226 25,58.221C25,58.179 25,58.138 25,58.096C25,39.94 39.94,25 58.096,25C58.138,25 58.179,25 58.221,25Z" style="fill:rgb(247,247,247);"/>
<g>
<path d="M73,58C73,66.284 66.284,73 58,73C49.716,73 43,66.284 43,58C43,49.716 49.716,43 58,43C66.284,43 73,49.716 73,58Z" style="fill-opacity:0.05;"/>
<path d="M58,41C48.611,41 41,48.611 41,58C41,67.389 48.611,75 58,75C67.389,75 75,67.389 75,58C75,48.611 67.389,41 58,41ZM58,43C66.284,43 73,49.716 73,58C73,66.284 66.284,73 58,73C49.716,73 43,66.284 43,58C43,49.716 49.716,43 58,43Z" style="fill:white;fill-rule:nonzero;"/>
<path d="M58,43C66.284,43 73,49.716 73,58C73,66.284 66.284,73 58,73C49.716,73 43,66.284 43,58C43,49.716 49.716,43 58,43ZM58,45C50.82,45 45,50.82 45,58C45,65.18 50.82,71 58,71C65.18,71 71,65.18 71,58C71,50.82 65.18,45 58,45Z" style="fill-opacity:0.15;fill-rule:nonzero;"/>
</g>
<g>
<path d="M63.577,32L52.423,32C49.951,32 48,34.165 48,36.772L48,47.564C48,48.546 48.354,49.494 48.996,50.206L50.636,52.025C50.673,52.067 50.673,52.186 50.636,52.229L48.996,54.047C48.35,54.775 47.995,55.717 48,56.69L48,79.229C48,81.835 49.951,84 52.423,84L63.577,84C66.049,84 68,81.835 68,79.228L68,68.436C68.005,67.463 67.65,66.522 67.004,65.794L65.364,63.975C65.327,63.933 65.327,63.814 65.364,63.771L67.004,61.953C67.65,61.225 68.005,60.283 68,59.31L68,36.772C68,34.165 66.049,32 63.577,32ZM63.45,34.038C64.858,34.038 66,35.332 66,36.928L66,59.302C66,59.812 65.82,60.302 65.502,60.664L63.908,62.47C63.244,63.222 63.244,64.442 63.908,65.195L65.502,67C65.821,67.361 66,67.851 66,68.362L66,79.072C66,80.667 64.858,81.962 63.45,81.962L52.55,81.962C51.142,81.962 50,80.667 50,79.072L50,56.697C50,56.187 50.18,55.697 50.498,55.335L52.092,53.529C52.756,52.777 52.756,51.557 52.092,50.804L50.498,49C50.173,48.621 49.996,48.137 50,47.637L50,36.927C50,35.332 51.142,34.037 52.55,34.037L63.45,34.037L63.45,34.038Z" style="fill:white;fill-rule:nonzero;"/>
<path d="M50,47.621L50,36.895C50,35.296 51.142,34 52.55,34L63.45,34C64.858,34 66,35.296 66,36.894L66,59.304C66.004,59.804 65.827,60.288 65.502,60.668L63.908,62.478C63.244,63.231 63.244,64.452 63.908,65.206L65.502,67.015C65.821,67.377 66,67.868 66,68.379L66,79.106C66,80.704 64.858,82 63.45,82L52.55,82C51.142,82 50,80.704 50,79.106L50,56.696C50,56.185 50.18,55.694 50.498,55.332L52.092,53.522C52.756,52.769 52.756,51.548 52.092,50.794L50.498,48.985C50.173,48.605 49.996,48.121 50,47.621Z" style="fill:rgb(10,45,77);"/>
<path d="M63.45,34C64.858,34 66,35.296 66,36.894L66,59.304C66.004,59.804 65.827,60.288 65.502,60.668L63.908,62.478C63.244,63.231 63.244,64.452 63.908,65.206L65.502,67.015C65.821,67.377 66,67.868 66,68.379L66,79.106C66,80.704 64.858,82 63.45,82L52.55,82C51.142,82 50,80.704 50,79.106L50,56.696C50,56.185 50.18,55.694 50.498,55.332L52.092,53.522C52.756,52.769 52.756,51.548 52.092,50.794L50.498,48.985C50.173,48.605 49.996,48.121 50,47.621L50,36.894C50,35.296 51.142,34 52.55,34L63.45,34ZM63.162,36.054L52.838,36.041C52.434,36.041 52.054,36.421 52.005,36.957L52,37.075L52,47.705C52,47.737 52.007,47.764 52.015,47.783L52.029,47.806L53.7,49.6C55.006,51.003 55.05,53.201 53.835,54.659L53.7,54.812L52.03,56.606C52.02,56.616 52.01,56.637 52.005,56.664L52.001,56.707L52.001,78.925C52.001,79.484 52.354,79.9 52.753,79.953L52.839,79.959L63.163,79.972C63.567,79.972 63.947,79.593 63.996,79.056L64.001,78.939L64.001,68.308C64.001,68.281 63.996,68.255 63.986,68.23L63.972,68.207L62.302,66.413C60.996,65.01 60.952,62.813 62.167,61.355L62.302,61.201L63.972,59.407C63.982,59.397 63.992,59.377 63.997,59.35L64.001,59.306L64.001,37.088C64.001,36.53 63.648,36.113 63.249,36.06L63.163,36.054L63.162,36.054Z" style="fill-opacity:0.4;fill-rule:nonzero;"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@ -91,8 +91,6 @@ The app offers multiple ways to erase metadata from images. Namely:
Metapho is a simple and clean viewer for photo metadata such as date, file name, size, camera model, shutter speed, and location. Metapho is a simple and clean viewer for photo metadata such as date, file name, size, camera model, shutter speed, and location.
Metapho is closed-source, however we recommend it due to the few choices there are for iOS.
[:octicons-home-16: Homepage](https://zininworks.com/metapho){ .md-button .md-button--primary } [:octicons-home-16: Homepage](https://zininworks.com/metapho){ .md-button .md-button--primary }
[:octicons-eye-16:](https://zininworks.com/privacy/){ .card-link title="Privacy Policy" } [:octicons-eye-16:](https://zininworks.com/privacy/){ .card-link title="Privacy Policy" }
@ -120,7 +118,7 @@ The app offers multiple ways to erase metadata from images. Namely:
!!! warning !!! warning
You should **never** use blur to redact [text in images](https://bishopfox.com/blog/unredacter-tool-never-pixelation). If you want to redact text in an image, draw a box over the text. For this we suggest [Pocket Paint](https://github.com/Catrobat/Paintroid) or [Imagepipe](https://codeberg.org/Starfish/Imagepipe). You should **never** use blur to redact [text in images](https://bishopfox.com/blog/unredacter-tool-never-pixelation). If you want to redact text in an image, draw a box over the text. For this, we suggest apps like [Pocket Paint](https://github.com/Catrobat/Paintroid).
## Command-line ## Command-line

View File

@ -6,20 +6,6 @@ Discover how to privately share your files between your devices, with your frien
## File Sharing ## File Sharing
### Bitwarden Send
!!! recommendation
![Bitwarden logo](assets/img/file-sharing-sync/bitwarden.svg){ align=right }
**Bitwarden Send** is a tool provided by the [Bitwarden](passwords.md#bitwarden) password manager. It allows you to share text and files securely with [end-to-end encryption](https://bitwarden.com/help/send-encryption). A [password](https://bitwarden.com/help/send-privacy/#send-passwords) can be required along with the send link. Bitwarden Send also features [automatic deletion](https://bitwarden.com/help/send-lifespan).
You need the [Premium Plan](https://bitwarden.com/help/about-bitwarden-plans/#compare-personal-plans) to be able to share files. Free plan only allows text sharing.
[:octicons-home-16: Homepage](https://bitwarden.com/products/send/){ .md-button .md-button--primary }
[:octicons-info-16:](https://bitwarden.com/help/about-send/){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/bitwarden/clients){ .card-link title="Source Code" }
### OnionShare ### OnionShare
!!! recommendation !!! recommendation

View File

@ -60,7 +60,7 @@ KeePassXC stores its export data as [CSV](https://en.wikipedia.org/wiki/Comma-se
## Cloud Sync ## Cloud Sync
These password managers sync your passwords to a cloud server for easy accessibility from all your devices. Our recommendations have open-source server-side code which is optionally self-hostable. These password managers sync your passwords to a cloud server for easy accessibility from all your devices and safety against device loss.
### Bitwarden ### Bitwarden
@ -68,7 +68,7 @@ These password managers sync your passwords to a cloud server for easy accessibi
![Bitwarden logo](assets/img/password-management/bitwarden.svg){ align=right } ![Bitwarden logo](assets/img/password-management/bitwarden.svg){ align=right }
**Bitwarden** is a free and open-source password manager. It aims to solve password management problems for individuals, teams, and business organizations. Bitwarden is among the easiest and safest solutions to store all of your logins and passwords while conveniently keeping them synced between all of your devices. **Bitwarden** is a free and open-source password manager. It aims to solve password management problems for individuals, teams, and business organizations. Bitwarden is among the best and safest solutions to store all of your logins and passwords while conveniently keeping them synced between all of your devices.
[:octicons-home-16: Homepage](https://bitwarden.com){ .md-button .md-button--primary } [:octicons-home-16: Homepage](https://bitwarden.com){ .md-button .md-button--primary }
[:octicons-eye-16:](https://bitwarden.com/privacy){ .card-link title="Privacy Policy" } [:octicons-eye-16:](https://bitwarden.com/privacy){ .card-link title="Privacy Policy" }
@ -88,15 +88,39 @@ These password managers sync your passwords to a cloud server for easy accessibi
- [:fontawesome-brands-chrome: Chrome](https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb) - [:fontawesome-brands-chrome: Chrome](https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb)
- [:fontawesome-brands-edge: Edge](https://microsoftedge.microsoft.com/addons/detail/jbkfoedolllekgbhcbcoahefnbanhhlh) - [:fontawesome-brands-edge: Edge](https://microsoftedge.microsoft.com/addons/detail/jbkfoedolllekgbhcbcoahefnbanhhlh)
Bitwarden also features [Bitwarden Send](https://bitwarden.com/products/send/), which allows you to share text and files securely with [end-to-end encryption](https://bitwarden.com/help/send-encryption). A [password](https://bitwarden.com/help/send-privacy/#send-passwords) can be required along with the send link. Bitwarden Send also features [automatic deletion](https://bitwarden.com/help/send-lifespan).
You need the [Premium Plan](https://bitwarden.com/help/about-bitwarden-plans/#compare-personal-plans) to be able to share files. The free plan only allows text sharing.
Bitwarden's server-side code is [open-source](https://github.com/bitwarden/server), so if you don't want to use the Bitwarden cloud, you can easily host your own Bitwarden sync server. Bitwarden's server-side code is [open-source](https://github.com/bitwarden/server), so if you don't want to use the Bitwarden cloud, you can easily host your own Bitwarden sync server.
**Vaultwarden** is an alternative implementation of the Bitwarden server API written in Rust and compatible with upstream Bitwarden clients, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal. **Vaultwarden** is an alternative implementation of Bitwarden's sync server written in Rust and compatible with official Bitwarden clients, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal. If you are looking to self-host Bitwarden on your own server, you almost certainly want to use Vaultwarden over Bitwarden's official server code.
[:octicons-repo-16: Vaultwarden Repository](https://github.com/dani-garcia/vaultwarden){ .md-button } [:octicons-repo-16: Vaultwarden Repository](https://github.com/dani-garcia/vaultwarden){ .md-button }
[:octicons-info-16:](https://github.com/dani-garcia/vaultwarden/wiki){ .card-link title=Documentation} [:octicons-info-16:](https://github.com/dani-garcia/vaultwarden/wiki){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/dani-garcia/vaultwarden){ .card-link title="Source Code" } [:octicons-code-16:](https://github.com/dani-garcia/vaultwarden){ .card-link title="Source Code" }
[:octicons-heart-16:](https://github.com/sponsors/dani-garcia){ .card-link title=Contribute } [:octicons-heart-16:](https://github.com/sponsors/dani-garcia){ .card-link title=Contribute }
### 1Password
1Password is a very capable, paid password manager with many features geared towards families and less technical people, as well as advanced functionality. Traditionally, 1Password has offered the best password manager user experience for people using macOS and iOS, however it has now achieved feature-parity across all platforms.
!!! recommendation
![1Password logo](assets/img/password-management/1password.svg){ align=right }
**1Password** is a password manager with a strong focus on security and ease-of-use, which allows you to store passwords, credit cards, software licenses, and any other sensitive information in a secure digital vault. Your vault is hosted on 1Password's servers for a monthly fee. 1Password is [audited](https://support.1password.com/security-assessments/) on a regular basis and provides exceptional customer support. 1Password is closed source, however the security of the product is thoroughly documented in their [security white paper](https://1passwordstatic.com/files/security/1password-white-paper.pdf).
[:octicons-home-16: Homepage](https://1password.com/){ .md-button .md-button--primary }
[:octicons-eye-16:](https://support.1password.com/1password-privacy/){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://support.1password.com/){ .card-link title=Documentation}
Your 1Password vault is secured with both your master password and a randomized 34-character security key to encrypt your data on their servers. This security key adds a layer of protection to your data because your data is secured with high entropy regardless of your master password. Many other password manager solutions are entirely reliant on the strength of your master password to secure your data.
One advantage 1Password has over Bitwarden is its first-class support for native clients. While Bitwarden relegates many duties to their web vault interface, especially account management features, 1Password makes nearly every feature available within its native mobile or desktop clients. 1Password's clients also have a more intuitive UI, which makes them easier to use and navigate.
Another consideration we made with this recommendation was 1Password's track record of customer support, available in a wide variety of channels including over the phone. For some less technical people or family members, being able to call and talk to a real person can make the difference between using a password manager and giving up. The best password manager is the one you use, and you virtually can't go wrong with any of the options on this page.
### Psono ### Psono
!!! recommendation !!! recommendation

View File

@ -313,7 +313,6 @@ We [recommend](dns.md#recommended-providers) a number of encrypted DNS servers b
<div class="grid cards" markdown> <div class="grid cards" markdown>
- ![Bitwarden logo](assets/img/file-sharing-sync/bitwarden.svg){ .twemoji } [Bitwarden](file-sharing.md#bitwarden-send)
- ![OnionShare logo](assets/img/file-sharing-sync/onionshare.svg){ .twemoji } [OnionShare](file-sharing.md#onionshare) - ![OnionShare logo](assets/img/file-sharing-sync/onionshare.svg){ .twemoji } [OnionShare](file-sharing.md#onionshare)
- ![FreedomBox logo](assets/img/file-sharing-sync/freedombox.svg){ .twemoji } [FreedomBox](file-sharing.md#freedombox) - ![FreedomBox logo](assets/img/file-sharing-sync/freedombox.svg){ .twemoji } [FreedomBox](file-sharing.md#freedombox)
- ![Syncthing logo](assets/img/file-sharing-sync/syncthing.svg){ .twemoji } [Syncthing](file-sharing.md#syncthing) - ![Syncthing logo](assets/img/file-sharing-sync/syncthing.svg){ .twemoji } [Syncthing](file-sharing.md#syncthing)
@ -357,6 +356,7 @@ We [recommend](dns.md#recommended-providers) a number of encrypted DNS servers b
- ![KeePassDX logo](assets/img/password-management/keepassdx.svg){ .twemoji } [KeePassDX (Android)](passwords.md#keepassdx) - ![KeePassDX logo](assets/img/password-management/keepassdx.svg){ .twemoji } [KeePassDX (Android)](passwords.md#keepassdx)
- ![KeePassXC logo](assets/img/password-management/keepassxc.svg){ .twemoji } [KeePassXC](passwords.md#keepassxc) - ![KeePassXC logo](assets/img/password-management/keepassxc.svg){ .twemoji } [KeePassXC](passwords.md#keepassxc)
- ![Bitwarden logo](assets/img/password-management/bitwarden.svg){ .twemoji } [Bitwarden](passwords.md#bitwarden) - ![Bitwarden logo](assets/img/password-management/bitwarden.svg){ .twemoji } [Bitwarden](passwords.md#bitwarden)
- ![1Password logo](assets/img/password-management/1password.svg){ .twemoji } [1Password](passwords.md#1password)
- ![Psono logo](assets/img/password-management/psono.svg){ .twemoji } [Psono](passwords.md#psono) - ![Psono logo](assets/img/password-management/psono.svg){ .twemoji } [Psono](passwords.md#psono)
- ![gopass logo](assets/img/password-management/gopass.svg){ .twemoji } [gopass](passwords.md#gopass) - ![gopass logo](assets/img/password-management/gopass.svg){ .twemoji } [gopass](passwords.md#gopass)

View File

@ -22,6 +22,13 @@ plugins:
date_from_meta: date_from_meta:
as_creation: "created" as_creation: "created"
datetime_format: "%Y-%m-%d" datetime_format: "%Y-%m-%d"
social:
cards: !ENV [CARDS, false]
cards_color:
fill: "#FFD06F"
text: "#2d2d2d"
cards_dir: assets/img/social
cards_font: 'Public Sans'
extra: extra:
generator: false generator: false
@ -48,6 +55,8 @@ theme:
- content.tooltips - content.tooltips
palette: palette:
- media: "(prefers-color-scheme)" - media: "(prefers-color-scheme)"
scheme: default
accent: deep purple
toggle: toggle:
icon: hero/sparkles icon: hero/sparkles
name: Switch to light mode name: Switch to light mode

View File

@ -4,7 +4,7 @@ site_dir: 'site'
site_name: Privacy Guides site_name: Privacy Guides
site_description: | site_description: |
Massive organizations are monitoring your online activities. Privacy Guides is your central privacy and security resource to protect yourself online. Privacy Guides is your central privacy and security resource to protect yourself online.
copyright: | copyright: |
<b>Privacy Guides</b> is a non-profit, socially motivated website that provides information for protecting your data security and privacy.<br> <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> We do not make money from recommending certain products, and we do not utilize affiliate links.<br>
@ -34,6 +34,7 @@ edit_uri: edit/main/docs/
theme: theme:
name: material name: material
custom_dir: theme custom_dir: theme
logo: assets/brand/SVG/Logo/privacy-guides-logo-notext-colorbg.svg
favicon: assets/brand/PNG/Favicon/favicon-32x32.png favicon: assets/brand/PNG/Favicon/favicon-32x32.png
icon: icon:
repo: fontawesome/brands/github repo: fontawesome/brands/github