Compare commits
No commits in common. "master" and "german-language" have entirely different histories.
master
...
german-lan
|
@ -1 +0,0 @@
|
|||
*.js -linguist-detectable
|
|
@ -1,115 +0,0 @@
|
|||
---
|
||||
name: New alternative
|
||||
description: Add a new alternative for a Google service
|
||||
title: "[NEW] Alternative name here"
|
||||
labels:
|
||||
- new
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
## Adding a new alternative to the list
|
||||
|
||||
Fill out to the best of your ability.
|
||||
If an optional item is not applicable, feel free to ignore it.
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: Checklist
|
||||
options:
|
||||
- label: "**I have read the guidelines in [CONTRIBUTING.md](../blob/master/CONTRIBUTING.md)**"
|
||||
required: true
|
||||
- label: Include my name in [CONTRIBUTORS.md](../blob/master/CONTRIBUTORS.md)
|
||||
- label: I am affiliated with this alternative
|
||||
- type: input
|
||||
id: name
|
||||
attributes:
|
||||
label: Alternative name
|
||||
description: Name of the alternative you wish to add
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: section
|
||||
attributes:
|
||||
label: Section
|
||||
description: Please also include the section you feel it belongs best in
|
||||
multiple: true
|
||||
options:
|
||||
- Browser extensions
|
||||
- Web-based products
|
||||
- Operating systems
|
||||
- Desktop applications
|
||||
- Mobile applications
|
||||
- Hardware
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Description
|
||||
description: |
|
||||
Please provide a brief description of the alternative,
|
||||
one to 5 sentences which will be displayed along with the name.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reasoning
|
||||
attributes:
|
||||
label: Reason for adding
|
||||
description: |
|
||||
Why is this alternative necessary? Don't use opinions and try to be objective.
|
||||
- type: input
|
||||
id: url
|
||||
attributes:
|
||||
label: URL
|
||||
description: URL of the alternative you wish to add
|
||||
placeholder: https://example-alternative.org
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: repo
|
||||
attributes:
|
||||
label: Repository
|
||||
description: Source Code repository for the alternative
|
||||
placeholder: https://github.com/example/alternative
|
||||
- type: input
|
||||
id: fdroid
|
||||
attributes:
|
||||
label: F-Droid ID
|
||||
description: If available on F-Droid, the ID of the app
|
||||
placeholder: org.alternative.example
|
||||
- type: textarea
|
||||
id: other_links
|
||||
attributes:
|
||||
label: Other Links
|
||||
description: If applicable or helpful, other links related to the alternative
|
||||
- type: checkboxes
|
||||
id: eyes
|
||||
attributes:
|
||||
label: Is this alternative hosted in a country that performs surveillance?
|
||||
description: |
|
||||
For more info on 5/9/14 eyes, please check here: https://restoreprivacy.com/5-eyes-9-eyes-14-eyes/
|
||||
Usually only one applies, but you may select more than one.
|
||||
options:
|
||||
- label: 5 Eyes
|
||||
- label: 9 Eyes
|
||||
- label: 14 Eyes
|
||||
- type: dropdown
|
||||
id: pricing
|
||||
attributes:
|
||||
label: Is there a cost to use this alternative?
|
||||
options:
|
||||
- Free
|
||||
- Paid
|
||||
- Freemium (Free tier but paid upgrades)
|
||||
- type: dropdown
|
||||
id: self-hosting
|
||||
attributes:
|
||||
label: Please indicate if self-hosting is possible, not possible, or the only option
|
||||
options:
|
||||
- Possible
|
||||
- Not possible
|
||||
- Only self-hosted
|
||||
- type: textarea
|
||||
id: additional_details
|
||||
attributes:
|
||||
label: Additional Details
|
||||
description: Use this space to add any other relevant information about the alternative
|
|
@ -1,43 +0,0 @@
|
|||
---
|
||||
name: Fix/update alternative
|
||||
description: Fix or update an existing alternative.
|
||||
title: "[FIX] Alternative name here"
|
||||
labels:
|
||||
- fix
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
## Fixing details about an alternative in the list
|
||||
|
||||
Fill out to the best of your ability.
|
||||
If an item is not applicable, feel free to ignore it.
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: Checklist
|
||||
options:
|
||||
- label: "**I have read the guidelines in [CONTRIBUTING.md](../blob/master/CONTRIBUTING.md)**"
|
||||
required: true
|
||||
- label: Include my name in [CONTRIBUTORS.md](../blob/master/CONTRIBUTORS.md)
|
||||
- label: I am affiliated with this alternative
|
||||
- type: input
|
||||
id: alternative_name
|
||||
attributes:
|
||||
label: Alternative name
|
||||
description: Which alternative needs to be fixed or updated?
|
||||
- type: textarea
|
||||
id: error
|
||||
attributes:
|
||||
label: Error
|
||||
description: What might be wrong or what should be updated?
|
||||
- type: textarea
|
||||
id: proposed_changes
|
||||
attributes:
|
||||
label: Proposed changes
|
||||
description: What do you suggest be changed?
|
||||
- type: textarea
|
||||
id: additional_details
|
||||
attributes:
|
||||
label: Additional details
|
||||
description: Add any additional details here.
|
|
@ -1,36 +0,0 @@
|
|||
---
|
||||
name: Remove alternative
|
||||
description: Provide details on why an existing alternative should be removed.
|
||||
title: "[REMOVE] Alternative name here"
|
||||
labels:
|
||||
- remove
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
## Removing an existing alternative from the list
|
||||
|
||||
Fill out to the best of your ability.
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: Checklist
|
||||
options:
|
||||
- label: "**I have read the guidelines in [CONTRIBUTING.md](../blob/master/CONTRIBUTING.md)**"
|
||||
required: true
|
||||
- label: Include my name in [CONTRIBUTORS.md](../blob/master/CONTRIBUTORS.md)
|
||||
- label: I am affiliated with this alternative
|
||||
- type: input
|
||||
id: alternative_name
|
||||
attributes:
|
||||
label: Alternative name
|
||||
description: Which alternative needs to be removed?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reason
|
||||
attributes:
|
||||
label: Reason
|
||||
description: Why should this alternative be removed?
|
||||
validations:
|
||||
required: true
|
|
@ -1,7 +0,0 @@
|
|||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Other
|
||||
url: https://github.com/tycrek/degoogle/discussions
|
||||
about: >
|
||||
Have a question or other topic of discussion that isn't adding/removing/modifying an alternative?
|
||||
The "Discussions" forum is where you want to start.
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
name: Fix/update alternative
|
||||
about: Fix or update an exsting alternative.
|
||||
title: "[FIX] Fix/update alternative"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Service name**: *enter name here. Required.*
|
||||
|
||||
**Error**: *enter what might be wrong or what should be updated.*
|
||||
|
||||
**Proposed changes**: *enter what you suggest should be added.*
|
||||
|
||||
**Additional details**: *any additional details*
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
name: New alternative
|
||||
about: Add a new alternative for a Google service
|
||||
title: "[NEW] New alternative"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Service name**: *enter service name here. Required*
|
||||
|
||||
**Service URL**: *service URL here. Required*
|
||||
|
||||
**5/9/14 eyes?**: yes/no/unknown
|
||||
|
||||
**Description**: *detail why this service should be added. Include details such as pricing and privacy.*
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
name: Other
|
||||
about: Anything else that does not fit the other templates. Blank issues are also
|
||||
permitted.
|
||||
title: "[OTHER]"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
name: Remove alternative
|
||||
about: Provide details on why an existing alternative should be removed.
|
||||
title: "[REMOVE] Remove alternative"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Service name**: *enter service name here. Required*
|
||||
|
||||
**Reason**: *detail why this service should be removed. Include any relevant links. **This is not the place for personal opinions**.*
|
|
@ -1,15 +0,0 @@
|
|||
<!-- If your Pull Request is related to an alternative, make sure there is a corresponding Issue for discussion. -->
|
||||
|
||||
| Checklist | |
|
||||
| --------- | - |
|
||||
| **I have read the guidelines in [CONTRIBUTING.md]** | yes/no |
|
||||
| Include my name in [CONTRIBUTORS.md] | yes/no |
|
||||
| I am affiliated with this alternative (if applicable) | yes/no |
|
||||
|
||||
|
||||
### Details
|
||||
<!-- Optional if details exist in a linked Issue. If that is the case, link to the Issue here. -->
|
||||
|
||||
|
||||
[CONTRIBUTING.md]: ../blob/master/CONTRIBUTING.md
|
||||
[CONTRIBUTORS.md]: ../blob/master/CONTRIBUTORS.md
|
|
@ -1,40 +0,0 @@
|
|||
name: Build
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- yaml/*.yml
|
||||
- md/*.md
|
||||
- _build.js
|
||||
- _wiki.js
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 13.x
|
||||
- name: Install dependencies
|
||||
run: npm i
|
||||
- name: Build
|
||||
run: node _build.js
|
||||
- name: Commit
|
||||
run: |
|
||||
git add README.md
|
||||
git config --local user.email "action@github.com"
|
||||
git config --local user.name "GitHub Action"
|
||||
git commit --allow-empty -m "Generated README.md"
|
||||
- name: Push
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
branch: master
|
||||
- name: Wiki
|
||||
run: node _wiki.js
|
||||
env:
|
||||
REDDIT_USER: ${{ secrets.REDDIT_USER}}
|
||||
REDDIT_PASS: ${{ secrets.REDDIT_PASS}}
|
||||
REDDIT_CLIENT_ID: ${{ secrets.REDDIT_CLIENT_ID}}
|
||||
REDDIT_CLIENT_SECRET: ${{ secrets.REDDIT_CLIENT_SECRET}}
|
|
@ -1,116 +0,0 @@
|
|||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
|
@ -1,35 +1,34 @@
|
|||
# Contributing
|
||||
|
||||
###### Last revised: August 9th, 2021
|
||||
Contributing is simple enough, just make sure to try and follow these guidelines:
|
||||
|
||||
###### Templates revised: August 9th, 2021
|
||||
1. English only for Issues & Pull Requests.
|
||||
2. Try to fill out as much info as you can. This makes it easier for me to quickly approve changes.
|
||||
3. No personal opinions on why a service should be removed. Links to articles with details is much more helpful.
|
||||
4. Try to use the Issue templates if possible, but they are not necessary.
|
||||
5. Try to limit yourself to ONE alternative per Issue. Pull Requests are OK to have multiple additions.
|
||||
6. Check to see if the alternative you want added already exists in the guide.
|
||||
|
||||
## General rules
|
||||
If you submitted a change that made it into the guide but don't have your Reddit or GitHub username on the [CONTRIBUTORS.md](https://github.com/tycrek/degoogle/blob/master/CONTRIBUTORS.md) list, let me know! Sometimes I forget. Alternatively, if your username is on the list and you do *not* want it there, let me know.
|
||||
|
||||
1. **English only** for issues & pull requests.
|
||||
2. **Do not edit `README.md`!** This file is automatically generated.
|
||||
3. Personal opinions will **not** be considered when adding or removing an alternative. Instead, provide links to articles with details.
|
||||
4. **Use the templates** when submitting an Issue or Pull Request. Blank Issues/PRs are not allowed.
|
||||
## Formatting
|
||||
|
||||
## How to submit a change
|
||||
To keep the guide consistent & clean, try to follow these formatting rules:
|
||||
|
||||
### A: I am not familiar with GitHub or Pull Requests
|
||||
1. The alternative entry must be **indented with two spaces** before the hyphen.
|
||||
2. Use `[square brackets](regular brackets)` for links instead of referenced links `[square brackets][1]`
|
||||
3. Separate the link and the description with **space, hypen, space**.
|
||||
4. If applicable, add an "eyes" disclaimer. Eyes disclaimers must be in bold. The number and "eyes" are connected with a hyphen.
|
||||
5. Try to avoid spelling mistakes. If they show up I can always fix them.
|
||||
|
||||
1. Open a [new Issue].
|
||||
2. Select a template to use. If in doubt, use **Other**.
|
||||
3. Fill out the information to the best of your ability.
|
||||
4. When you are finished, click **Submit new issue**.
|
||||
**Sample**
|
||||
|
||||
### B: I have used GitHub Pull Requests
|
||||
```markdown
|
||||
- Google Service
|
||||
- [Alternative Name](https://example.org) - A brief description of the alternative.
|
||||
- [Another one](https://example.com) - **9-eyes** - If applicable, mention paid plans.
|
||||
```
|
||||
|
||||
1. Create your Pull Request with your changes.
|
||||
- Remember to **not** edit `README.md`!
|
||||
- As with Issues, fill out the template as best you can.
|
||||
2. For PR's relating to alternatives, please follow the steps above to also create an Issue for discussion. Simple PR's that are unrelated to a specific alternative may not require an Issue. If in doubt, create an **Other** Issue.
|
||||
|
||||
## I contributed but I am not in the list (or) I do not want to be in the list anymore
|
||||
|
||||
If you submitted a change that made it into the guide but don't have your Reddit or GitHub username in the [CONTRIBUTORS.md] list, open an issue or pull request so I can fix it. Alternatively, if your username is on the list and you do *not* want it there, feel free to request this as well.
|
||||
|
||||
[new Issue]: https://github.com/tycrek/degoogle/issues/new/choose
|
||||
[CONTRIBUTORS.md]: https://github.com/tycrek/degoogle/blob/master/CONTRIBUTORS.md
|
||||
- Google Service
|
||||
- [Alternative Name](https://alternative.link) - A brief description of the alternative.
|
||||
- [Another one](https://example.com) - **9-eyes** - If applicable, mention paid plans.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Thanks to everyone here for contributing in some way! (usernames are in no particular order).
|
||||
|
||||
### GitHub:
|
||||
GitHub:
|
||||
|
||||
- [Fabian Cook](https://github.com/fabiancook)
|
||||
- [Alexander Schaap](https://github.com/aschaap)
|
||||
|
@ -19,6 +19,7 @@ Thanks to everyone here for contributing in some way! (usernames are in no parti
|
|||
- [@okias](https://github.com/okias)
|
||||
- [@flubberding](https://github.com/flubberding)
|
||||
- [@je-vv](https://github.com/je-vv)
|
||||
- [@RefexHD](https://github.com/RefexHD)
|
||||
- [@chribre](https://github.com/chribre)
|
||||
- [@jankapunkt](https://github.com/jankapunkt)
|
||||
- [@jeanofthedead](https://github.com/jeanofthedead)
|
||||
|
@ -37,57 +38,8 @@ Thanks to everyone here for contributing in some way! (usernames are in no parti
|
|||
- [@notpushkin](https://github.com/notpushkin)
|
||||
- [@FultonBrowne](https://github.com/FultonBrowne)
|
||||
- [@GreyLivesMatter](https://github.com/GreyLivesMatter)
|
||||
- [@notpushkin](https://github.com/notpushkin)
|
||||
- [@onlyjob](https://github.com/onlyjob)
|
||||
- [@marco3mt](https://github.com/marco3mt)
|
||||
- [@E5dZEUpc3BKaJrHnQVZd5zE](https://github.com/E5dZEUpc3BKaJrHnQVZd5zE)
|
||||
- [@woutfeys](https://github.com/woutfeys)
|
||||
- [@virtadpt](https://github.com/virtadpt)
|
||||
- [@compressstudio](https://github.com/compressstudio)
|
||||
- [@PalmoliveDev](https://github.com/PalmoliveDev)
|
||||
- [@mahdi1234](https://github.com/mahdi1234)
|
||||
- [@kdkasad](https://github.com/kdkasad)
|
||||
- [@resto1231](https://githgithub.com/resto1231)
|
||||
- [@kdrag0n](https://github.com/kdrag0n)
|
||||
- [@ianschmitz](https://github.com/ianschmitz)
|
||||
- [@mythmakerseven](https://github.com/mythmakerseven)
|
||||
- [@SuperSandro2000](https://github.com/superSandro2000)
|
||||
- [@honorsea](https://github.com/honorsea)
|
||||
- [@chanana](https://github.com/chanana)
|
||||
- [@m0yP](https://github.com/m0yP)
|
||||
- [@mceachen](https://github.com/mceachen)
|
||||
- [@adam-sroka](https://github.com/adam-sroka)
|
||||
- [@freddy-m](https://github.com/freddy-m)
|
||||
- [@Cristy94](https://github.com/Cristy94)
|
||||
- [@rkingett](https://github.com/rkingett)
|
||||
- [@komape](https://github.com/komape)
|
||||
- [@jefersonralmeida](https://github.com/jefersonralmeida)
|
||||
- [@codedust](https://github.com/codedust)
|
||||
- [@shivasagarrao](https://github.com/shivasagarrao)
|
||||
- [@0xflotus](https://github.com/0xflotus)
|
||||
- [@J053Fabi0](https://github.com/J053Fabi0)
|
||||
- [@trexx](https://github.com/trexx)
|
||||
- [@anthonynsimon](https://github.com/anthonynsimon)
|
||||
- [@timbuening](https://github.com/timbuening)
|
||||
- [@infectormp](https://github.com/infectormp)
|
||||
- [@vivekmiyani](https://github.com/vivekmiyani)
|
||||
- [@evrifaessa](https://github.com/evrifaessa)
|
||||
- [@MahbodHastam](https://github.com/MahbodHastam)
|
||||
- [@aa1874](https://github.com/aa1874)
|
||||
- [@bgrgndzz](https://github.com/bgrgndzz)
|
||||
- [@samcross021](https://github.com/samcross021)
|
||||
- [@Shahin-rmz](https://github.com/Shahin-rmz)
|
||||
- [@vishnukvmd](https://github.com/vishnukvmd)
|
||||
- [@Joshuasony](https://github.com/Joshuasony)
|
||||
- [@BobIsMyManager](https://github.com/BobIsMyManager)
|
||||
- [@itforweb666](https://github.com/itforweb666)
|
||||
- [@seanking2919](https://github.com/seanking2919)
|
||||
- [@FireMasterK](https://github.com/FireMasterK)
|
||||
- [@julianfairfax](https://github.com/julianfairfax)
|
||||
- [@ACK-J](https://github.com/ACK-J)
|
||||
- [@joebudi](https://github.com/joebudi)
|
||||
|
||||
### Reddit:
|
||||
Reddit:
|
||||
|
||||
- u/SheepKid12
|
||||
- u/yieldingTemporarily
|
||||
|
@ -121,4 +73,3 @@ Thanks to everyone here for contributing in some way! (usernames are in no parti
|
|||
- u/masao77
|
||||
- u/-Choose-A-User-
|
||||
- u/EbonixCo
|
||||
- u/TheCy-FiJuggernaut
|
||||
|
|
|
@ -8,15 +8,14 @@ Official mirrors are the main sources and are maintained by me (@tycrek). Commun
|
|||
|
||||
- [GitHub repo](https://github.com/tycrek/degoogle)
|
||||
- [GitHub Pages](https://degoogle.jmoore.dev) (I am using my personal domain as some firewalls block GitHub)
|
||||
- [r/Privacy wiki](https://old.reddit.com/r/privacy/wiki/de-google) (automatically updated using GitHub Actions)
|
||||
- [r/Privacy wiki](https://old.reddit.com/r/privacy/wiki/de-google) (Manually maintained by me, @tycrek. Message me on Reddit or open an Issue if it is not up-to-date)
|
||||
|
||||
## Community mirrors
|
||||
|
||||
- [GitLab mirror](https://gitlab.com/SheepKid12/degoogle) from u/SheepKid12
|
||||
- [Gitea mirror](https://git.xerbo.net/Xerbo/degoogle) from [@Xerbo](https://github.com/Xerbo)
|
||||
- [Gitea mirror](https://git.mirkodi.tech/mirk0dex/degoogle) from [@mirk0dex (Gitea)](https://git.mirkodi.tech/mirk0dex)
|
||||
- [BookRefine Publishing](https://bookrefine.com/degoogle/) (thanks @GreyLivesMatter for the updated link)
|
||||
|
||||
## Non-english mirrors
|
||||
|
||||
- [Turkish/Türk](https://github.com/melikechan/degoogle-turkish) from [@melikechan](https://github.com/melikechan)
|
||||
- [Italian/Italiano](https://gitea.it/devol/degooglizzazione) from [@devol (Gitea)](https://gitea.it/devol)
|
||||
- [German/Deutsch](https://github.com/arentro/degoogle_german) from [@arentro](https://github.com/arentro)
|
||||
|
|
178
_build.js
178
_build.js
|
@ -1,178 +0,0 @@
|
|||
// Build tool for generating README.md
|
||||
|
||||
const { EOL } = require('os');
|
||||
const path = require('path');
|
||||
const fs = require('fs-extra');
|
||||
const moment = require('moment');
|
||||
const YAML = require('yaml');
|
||||
|
||||
const BUILD_SECTION = {
|
||||
header: () => readFile('md/_header.md').replace('{{DATE}}', moment().format('MMMM Do YYYY').replace(/ /g, '%20')),
|
||||
index: () => readFile('md/_index.md'),
|
||||
contributing: () => readFile('md/_contributing.md'),
|
||||
browserExtensions: () => generateBrowserExtensions(),
|
||||
disclaimer: () => readFile('md/_disclaimer.md'),
|
||||
webBasedProducts: () => generateCategorySection('Web-based products', readYaml()['web based products']),
|
||||
operatingSystems: () => generateCategorySection('Operating systems', readYaml()['operating systems']),
|
||||
desktopApps: () => generateCategorySection('Desktop apps', readYaml()['desktop applications']),
|
||||
mobileApps: () => generateCategorySection('Mobile apps', readYaml()['mobile applications']),
|
||||
hardware: () => generateCategorySection('Hardware', readYaml()['hardware']),
|
||||
useful: () => '# Useful links, tools, and advice',
|
||||
resources: () => readFile('md/_resources.md'),
|
||||
books: () => generatePublications('Books', 'books'),
|
||||
blogs: () => generatePublications('Blog posts', 'blogs'),
|
||||
news: () => generatePublications('News articles', 'news'),
|
||||
lighterSide: () => readFile('md/_lighterSide.md'),
|
||||
closingRemarks: () => readFile('md/_closingRemarks.md')
|
||||
};
|
||||
|
||||
// Button that brings the user to the top of the page
|
||||
const BACK_TO_TOP = '[![Back to top](https://img.shields.io/badge/Back%20to%20top-lightgrey?style=flat-square)](#index)';
|
||||
|
||||
/**
|
||||
* Synchronously reads a file using fs-extra and path.join()
|
||||
* @param {String} filename The file to read
|
||||
*/
|
||||
function readFile(filename) {
|
||||
return fs.readFileSync(path.join(__dirname, filename)).toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Reads degoogle.yml
|
||||
*/
|
||||
function readYaml() {
|
||||
return YAML.parse(fs.readFileSync(path.join(__dirname, 'yaml/degoogle.yml')).toString());
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a major section or "category" such as Mobile Apps
|
||||
* @param {String} header Title for section
|
||||
* @param {Object} data Object of data to populate README.md with
|
||||
*/
|
||||
function generateCategorySection(header, data) {
|
||||
if (!data) return '';
|
||||
return `## ${header}${EOL}${BACK_TO_TOP}${EOL}${EOL}`.concat(Object.values(data).map((value) => `${generateServiceSection(value)}${EOL}${EOL}`).join(''))
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a service (such as Gmail) section to be placed under a category section
|
||||
* @param {Array} data
|
||||
*/
|
||||
function generateServiceSection(data) {
|
||||
// Start the section with an <h4> header
|
||||
let serviceSection = `#### ${data[0].title + EOL + EOL}`;
|
||||
|
||||
// Prep section notes
|
||||
let notes = EOL + '';
|
||||
|
||||
// If there is data to be displayed, add the start of a Markdown table
|
||||
const tableHeader = (data.filter((d) => 'name' in d).length === 0)
|
||||
? `No known alternatives.${EOL}`
|
||||
: `| Name | Eyes | Description |${EOL}| ---- | ---- | ----------- |${EOL}`;
|
||||
|
||||
// Add the header to the section body
|
||||
serviceSection = serviceSection.concat(tableHeader);
|
||||
|
||||
// Iterate over each alternative service and add it to the table
|
||||
data.forEach((item) => {
|
||||
|
||||
// If the object has length one, it's either title or note
|
||||
if (Object.keys(item).length == 1) {
|
||||
if (!item.notes) return;
|
||||
else item.notes.forEach((note) => notes = notes.concat(`- *${note.trim()}*${EOL}`));
|
||||
} else {
|
||||
|
||||
// Build the cells for the table
|
||||
let name = `[${item.name}](${item.url})`;
|
||||
let eyes = item.eyes ? `**${item.eyes}-eyes**` : '';
|
||||
let text = item.text.trim();
|
||||
|
||||
// Append the F-Droid badge to the name
|
||||
if (item.fdroid) name = name.concat('<br/>', fdroidLink(item.fdroid));
|
||||
|
||||
// Append the Repo badge to the name
|
||||
if (item.repo) name = name.concat('<br/>', repoLink(item.repo));
|
||||
|
||||
// Append the Star badge to the name
|
||||
if (item.repo) name = name.concat('<br/>', starBadge(item.repo));
|
||||
|
||||
// Build the row
|
||||
const tableItem = `| ${name} | ${eyes} | ${text} |${EOL}`;
|
||||
|
||||
// Add the row to the table
|
||||
serviceSection = serviceSection.concat(tableItem);
|
||||
}
|
||||
});
|
||||
return `${serviceSection}${notes}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a badge acting as a link to an F-Droid page for an app.
|
||||
* @param {String} appId The package identifier on F-Droid
|
||||
*/
|
||||
function fdroidLink(appId) {
|
||||
return `[![F-Droid](https://img.shields.io/f-droid/v/${appId}?style=flat-square&logo=f-droid)](https://f-droid.org/en/packages/${appId}/)`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a badge acting as a link to a source repository for an app.
|
||||
* @param {String} repo The repository url
|
||||
*/
|
||||
function repoLink(repo) {
|
||||
const repoURL = new URL(repo);
|
||||
let repoHost = path.basename(repoURL.hostname, path.extname(repoURL.hostname));
|
||||
if (repoHost.includes(".")) repoHost = path.extname(repoHost).replace(".", "");
|
||||
return `[![Repo](https://img.shields.io/badge/open-source-3DA639?style=flat-square&logo=${repoHost})](${repo})`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a badge displaying the number of GitHub Stars for a repository.
|
||||
* @param {String} repo The repository url
|
||||
*/
|
||||
function starBadge(repo) {
|
||||
if (repo.startsWith('https://github.com/')) {
|
||||
const [user, repoName] = repo.split('github.com/')[1].split('/');
|
||||
if (!repoName || repoName === '') return '';
|
||||
return `![GitHub Repo stars](https://img.shields.io/github/stars/${user}/${repoName}?logo=github&style=flat-square)`;
|
||||
} else return '';
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a badge displaying user for a Firefox addon/extension
|
||||
* @param {String} link URL to extension WITHOUT trailing slash
|
||||
*/
|
||||
function addonLink(link) {
|
||||
return (link.includes('addons.mozilla.org')) ? `![Mozilla Add-on](https://img.shields.io/amo/users/${link.split('/').pop()}?style=flat-square)` : '';
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a badge with the date of publication
|
||||
* @param {String|Number} date Date of publication
|
||||
*/
|
||||
function dateBadge(date) {
|
||||
return `![Published](https://img.shields.io/badge/${date.toString().replace(/\-/g, '--')}-informational?style=flat-square)`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a table with browser extensions and their descriptions
|
||||
*/
|
||||
function generateBrowserExtensions() {
|
||||
return `# Browser extensions${EOL + EOL}| Name | Description |${EOL}| ---- | ----------- |${EOL}`
|
||||
.concat(YAML.parse(fs.readFileSync(path.join(__dirname, 'yaml/browserExtensions.yml')).toString())
|
||||
.map(({ name, text, url }) => `| [${name}](${url}) ${addonLink(url)} | ${text.trim()} |${EOL}`).join(''));
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates sections for Books, Blogs, and News
|
||||
* @param {String} pubTitle
|
||||
* @param {String} filename
|
||||
*/
|
||||
function generatePublications(pubTitle, filename) {
|
||||
return `## ${pubTitle} ${EOL + BACK_TO_TOP + EOL + EOL}| Title | Published | Author |${EOL}| ----- | --------- | ------ |${EOL}`
|
||||
.concat(YAML.parse(fs.readFileSync(path.join(__dirname, `yaml/${filename}.yml`)).toString())
|
||||
.map(({ title, url, date, author }) => `| [${title}](${url}) | ${dateBadge(date)} | ${author.trim()} |${EOL}`).join(''));
|
||||
}
|
||||
|
||||
// ! Generate README.md
|
||||
fs.writeFileSync(path.join(__dirname, 'README.md'), Object.values(BUILD_SECTION).map((section) => section()).join(`${EOL}${EOL}`));
|
||||
console.log('Done!');
|
|
@ -1,3 +0,0 @@
|
|||
theme: jekyll-theme-minimal
|
||||
logo: https://repository-images.githubusercontent.com/191201679/10394d00-968c-11ea-8879-4f06b3e59af5
|
||||
show_downloads: false
|
107
_wiki.js
107
_wiki.js
|
@ -1,107 +0,0 @@
|
|||
const fs = require('fs-extra'); // Reading README.md
|
||||
const path = require('path'); // Get the correct path for README.md
|
||||
const fetch = require('node-fetch'); // Make calls to Reddit from Node.js
|
||||
const qs = require('qs'); // Properly build a query for node-fetch POST
|
||||
const moment = require('moment'); // Time-related functions
|
||||
|
||||
//#region constants
|
||||
|
||||
// REDDIT_: For authentication with Reddit API. Oauth MUST be used. ID and Secret come from a "script" app type.
|
||||
const REDDIT_USER = process.env.REDDIT_USER || 'username';
|
||||
const REDDIT_PASS = process.env.REDDIT_PASS || 'password';
|
||||
const REDDIT_CLIENT_ID = process.env.REDDIT_CLIENT_ID || 'clientid';
|
||||
const REDDIT_CLIENT_SECRET = process.env.REDDIT_CLIENT_SECRET || 'clientsecret';
|
||||
|
||||
// Initial basic authorization for getting the Oauth token
|
||||
const BASIC_AUTH = `Basic ${Buffer.from(REDDIT_CLIENT_ID + ':' + REDDIT_CLIENT_SECRET).toString('base64')}`;
|
||||
|
||||
// WIKI_: For the Reddit Wiki
|
||||
const WIKI_SUBREDDIT = 'privacy';
|
||||
const WIKI_PAGE = 'de-google';
|
||||
const WIKI_REASON = 'Automated edit from GitHub repo: https://github.com/tycrek/degoogle';
|
||||
|
||||
// Endpoints for each of our fetches to Reddit
|
||||
const ENDPOINTS = {
|
||||
revisions: `https://old.reddit.com/r/${WIKI_SUBREDDIT}/wiki/revisions/${WIKI_PAGE}.json`,
|
||||
token: 'https://www.reddit.com/api/v1/access_token',
|
||||
edit: `https://oauth.reddit.com/r/${WIKI_SUBREDDIT}/api/wiki/edit`
|
||||
};
|
||||
|
||||
// Helps POST data be submitted properly
|
||||
const CONTENT_TYPE = 'application/x-www-form-urlencoded';
|
||||
//#endregion
|
||||
|
||||
// Update the wiki
|
||||
Promise.all([getLastRevision(), getToken()])
|
||||
.then(([lastId, token]) => putWiki(lastId, token))
|
||||
.catch((err) => (console.error(err), process.exit(1)));
|
||||
|
||||
//#region functions
|
||||
|
||||
/**
|
||||
* Get the last revision ID on the Wiki. Required otherwise editing the wiki fails
|
||||
*/
|
||||
function getLastRevision() {
|
||||
return new Promise((resolve, reject) =>
|
||||
fetch(ENDPOINTS.revisions)
|
||||
.then((response) => response.json())
|
||||
.then((json) => json.data.children[0].id) // children[0] is the most recent edit
|
||||
.then(resolve)
|
||||
.catch(reject));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an Oauth token used to edit the Wiki
|
||||
*/
|
||||
function getToken() {
|
||||
return new Promise((resolve, reject) =>
|
||||
fetch(ENDPOINTS.token, {
|
||||
method: 'POST',
|
||||
headers: { 'Authorization': BASIC_AUTH, 'Content-Type': CONTENT_TYPE },
|
||||
body: qs.stringify({ grant_type: 'password', username: REDDIT_USER, password: REDDIT_PASS })
|
||||
})
|
||||
.then((response) => response.json())
|
||||
.then(({ access_token }) => resolve(access_token))
|
||||
.catch(reject));
|
||||
}
|
||||
|
||||
/**
|
||||
* Post the contents from the README into the wiki
|
||||
* @param {String} lastId Revision ID for the Wiki
|
||||
* @param {String} token Oauth token for authenticating with the Reddit API
|
||||
*/
|
||||
function putWiki(lastId, token) {
|
||||
return new Promise((resolve, reject) =>
|
||||
fetch(ENDPOINTS.edit, {
|
||||
method: 'POST',
|
||||
headers: { 'Authorization': `bearer ${token}`, 'Content-Type': CONTENT_TYPE },
|
||||
body: qs.stringify({
|
||||
content: fixContent(fs.readFileSync(path.join(__dirname, 'README.md')).toString()),
|
||||
page: WIKI_PAGE,
|
||||
reason: WIKI_REASON,
|
||||
previous: lastId
|
||||
})
|
||||
})
|
||||
.then((response) => response.json())
|
||||
.then((json) => {
|
||||
if (Object.keys(json).length === 0) resolve();
|
||||
else throw Error(json);
|
||||
})
|
||||
.catch(reject));
|
||||
}
|
||||
|
||||
/**
|
||||
* Fixes certain images to only show text on the Reddit wiki
|
||||
* @param {String} content The content in README.md
|
||||
*/
|
||||
function fixContent(content) {
|
||||
// Fix updated timestamp
|
||||
content = content.replace(/\!\[Updated\](.*?)square\)/g, `#### Updated: ${moment().format('MMMM Do YYYY')}`);
|
||||
|
||||
// Fix published timestamps
|
||||
content = content.replace(/\!\[Published\]\(https\:\/\/img\.shields\.io\/badge\//g, '**');
|
||||
content = content.replace(/-informational\?style=flat-square\)/g, '**');
|
||||
|
||||
return content;
|
||||
} // * If this is highlighted weirdly, it's because of the 'updated timestamp' regex, don't worry about it
|
||||
//#endregion
|
|
@ -1,11 +0,0 @@
|
|||
# Closing remarks
|
||||
|
||||
It's a shame that Google, with their immense resources, power, and influence, don't see the benefits of helping people secure themselves online. Instead, they force people like us to scour the web for alternatives and convince our friends and family to do the same, while they sell off our data to the highest bidder.
|
||||
|
||||
Hopefully this guide can serve as a starting point for those new to privacy, or be a good refresher for the experts.
|
||||
|
||||
Good luck and stay safe!
|
||||
|
||||
## Stargazers over time
|
||||
|
||||
[![Stargazers over time](https://starchart.cc/tycrek/degoogle.svg)](https://starchart.cc/tycrek/degoogle)
|
|
@ -1,12 +0,0 @@
|
|||
# Contributing
|
||||
|
||||
If you want to help out with the project, here are some ideas (submit **Issues** & **Pull Requests** on the [GitHub page](https://github.com/tycrek/degoogle)):
|
||||
|
||||
- **iOS app alternatives!** I don't have an iOS device to find alternatives with. I would highly appreciate any help with this.
|
||||
- Clean up/improve the Markdown.
|
||||
- Provide more information on services with little info or where *help requested!* is shown.
|
||||
- Suggest new services or provide info for removing existing services.
|
||||
- Host a mirror or clone the [repo](https://github.com/tycrek/degoogle). If you host a mirror, let me know and I can add it to the mirrors list.
|
||||
- Anything else relating to any part of this guide, whether it's Google related or not.
|
||||
|
||||
When contributing, **please follow the rules outlined in [CONTRIBUTING.md](https://github.com/tycrek/degoogle/blob/master/CONTRIBUTING.md)**.
|
|
@ -1,18 +0,0 @@
|
|||
# Replacements/alternatives
|
||||
|
||||
### *Disclaimer*
|
||||
|
||||
1. Only **privacy/security** focused alternatives will be suggested.
|
||||
2. Many replacements are based off [this Wikipedia article (List of Google products)][wiki]
|
||||
3. Products from companies such as Microsoft, Apple, Yahoo, Amazon, etc. will *not* be recommended unless there is a very good reason to. This includes companies/apps/services they own.
|
||||
4. Controversial services will have a disclaimer attached if needed.
|
||||
5. [5-eyes, 9-eyes, and 14-eyes][eyes] services will be listed and marked as such. Both the location the company is registered and the server IP are taken into consideration.
|
||||
|
||||
| Eyes | Countries |
|
||||
| :--: | :---------: |
|
||||
| **5** | Australia, Canada, New Zealand, UK, USA |
|
||||
| **9** | Denmark, France, Netherlands, Norway |
|
||||
| **14** | Germany, Belgium, Italy, Sweden, Spain |
|
||||
|
||||
[wiki]: https://en.wikipedia.org/wiki/List_of_Google_products
|
||||
[eyes]: https://restoreprivacy.com/5-eyes-9-eyes-14-eyes/#h-five-eyes
|
|
@ -1,28 +0,0 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[//]: # (NOTE: Please do NOT directly edit this file! Instead, edit)
|
||||
[//]: # (either degoogle.yml or any Markdown file in the md/ directory)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Cutting Google out of your life
|
||||
|
||||
### *I don't have anything to hide, but I don't have anything to show you either.*
|
||||
|
||||
![Updated](https://img.shields.io/static/v1?label=updated&message={{DATE}}&color=388E3C&style=flat-square)
|
||||
|
||||
![GitHub](https://img.shields.io/github/license/tycrek/degoogle?style=flat-square)
|
||||
![GitHub stars](https://img.shields.io/github/stars/tycrek/degoogle?style=flat-square)
|
||||
![GitHub issues](https://img.shields.io/github/issues/tycrek/degoogle?style=flat-square)
|
||||
![GitHub pull requests](https://img.shields.io/github/issues-pr/tycrek/degoogle?style=flat-square)
|
18
md/_index.md
18
md/_index.md
|
@ -1,18 +0,0 @@
|
|||
# Index
|
||||
|
||||
1. [Contributing](#contributing)
|
||||
2. [Browser extensions](#browser-extensions)
|
||||
3. **[Replacements/alternatives](#replacementsalternatives)**
|
||||
1. [Disclaimer](#disclaimer)
|
||||
2. [Web-based products](#web-based-products)
|
||||
3. [Operating systems](#operating-systems)
|
||||
4. [Desktop applications](#desktop-apps)
|
||||
5. [Mobile applications](#mobile-apps)
|
||||
6. [Hardware](#hardware)
|
||||
4. [Useful links, tools, and advice](#useful-links-tools-and-advice)
|
||||
1. [Resources](#resources)
|
||||
1. [Books](#books)
|
||||
1. [Blog posts](#blog-posts)
|
||||
1. [News articles](#news-articles)
|
||||
5. [The lighter side](#the-lighter-side)
|
||||
6. [Closing remarks](#closing-remarks)
|
|
@ -1,18 +0,0 @@
|
|||
# The lighter side
|
||||
|
||||
- Movies & TV:
|
||||
- *Snowden (2016)* - Based on the true story of Edward Snowden, the CIA/NSA/etc whistleblower. Directed by Oliver Stone.
|
||||
- *Deep Web (2015)* - Documentary (narrated by Keanu Reeves) about Ross Ulbricht aka. Dread Pirate Roberts and the infamous "Silk Road" dark market. Directed by Alex Winter.
|
||||
- *The Great Hack (2019)* - Documentary about the Facebook–Cambridge Analytica data scandal. Thanks @woutfeys
|
||||
- *Mr. Robot* - Hacker-drama starring Rami Malek. Producers hired actual hackers as consultants to ensure the show is as accurate as possible; real-world tools used in the show.
|
||||
- *Silicon Valley* - Satirical tech comedy about a compression startup struggling to take off in Silicon Valley, California.
|
||||
- *Shoshana Zuboff on surveillance capitalism | VPRO Documentary* - [Invidious instance](https://yewtu.be/watch?v=hIXhnWUmMvw) and [Hooktube](https://hooktube.com/watch?v=hIXhnWUmMvw)
|
||||
- Podcasts:
|
||||
- [Darknet Diaries](https://darknetdiaries.com/) (by Jack Rhysider) - Highlights real-life hackers and their stories. Covers privacy topics a fair bit.
|
||||
- [The WAN Show](https://youtube.com/playlist?list=PL8mG-RkN2uTw7PhlnAr4pZZz2QubIbujH) (Linus Tech Tips) - Not specifically privacy, but they cover all sorts of tech news.
|
||||
- [The Privacy, Security, & OSINT Show](https://inteltechniques.com/podcast.html) - "This weekly podcast presents ideas to help you become digitally invisible, stay secure from cyber threats, and make you a better online investigator."
|
||||
- [Security Now!](https://www.grc.com/SecurityNow.htm) - "TechTV's Leo Laporte and I spend somewhat shy of two hours each week to discuss important issues of personal computer security." (Thanks u/Abaddon182)
|
||||
- [Surveillance Report](https://surveillancereport.tech/) - "Weekly security and privacy news - Presented by Techlore & The New Oil "
|
||||
- Other:
|
||||
- [xkcd](https://xkcd.com/) - They have comics for *everything*.
|
||||
- System32 Comics [Instagram](https://www.instagram.com/system32comics/) and [Reddit](https://www.reddit.com/r/System32Comics/) - Comedic computer comics.
|
|
@ -1,58 +0,0 @@
|
|||
## Resources
|
||||
|
||||
Everything you need to become a privacy wizard. This section has two subsections: The first has links with self-explanatory titles, the second has more detailed descriptions.
|
||||
|
||||
#### Subsection 1
|
||||
|
||||
- [Android Privacy Guide - Take Control Of Your Data (GitLab)](https://gitlab.com/Attedz/AndroidPrivacyGuide)
|
||||
- [DuckDuckGo's privacy newsletter](https://duckduckgo.com/newsletter)
|
||||
- [EFF's Surveillance Self-Defense (eff.org)](https://ssd.eff.org/)
|
||||
- [Everything You Need to Know About Password Managers](https://outline.com/NC69FD)
|
||||
- [Firefox: Privacy Related "about:config" Tweaks](https://privacyguides.org/browsers/#about_config)
|
||||
- [Four Methods to Create a Secure Password You'll Actually Remember](https://outline.com/XuMTFA)
|
||||
- [How to create a strong password (and remember it)](https://outline.com/dqfuqL)
|
||||
- [How to delete remembered passwords (WikiHow)](http://www.wikihow.com/Delete-Remembered-Passwords)
|
||||
- [How to disable Telemetry and Data Collection in Windows 10 (Winaero)](https://winaero.com/blog/how-to-disable-telemetry-and-data-collection-in-windows-10/)
|
||||
- [How to permanently delete a Facebook account (Delete Facebook)](https://deletefacebook.com/).
|
||||
- [How to permanently delete a Facebook account (WikiHow)](https://www.wikihow.com/Permanently-Delete-a-Facebook-Account)
|
||||
- [HTTP vs. HTTPS: What's the Difference and Why Should You Care? (Entrepreneur)](https://www.entrepreneur.com/article/281633)
|
||||
- [Linux workstation security checklist (GitHub)](https://github.com/lfit/itpol/blob/master/linux-workstation-security.md)
|
||||
- [Manage Windows 10 Telemetry and Data Collection settings (The Windows Club)](https://www.thewindowsclub.com/windows-10-telemetry)
|
||||
- [Multi-factor authentication (Wikipedia)](https://en.wikipedia.org/wiki/Multi-factor_authentication)
|
||||
- [Remove bloatware from Android without root (XDA)](https://www.xda-developers.com/uninstall-carrier-oem-bloatware-without-root-access/)
|
||||
- [Spread Privacy - The Official DuckDuckGo Blog](https://spreadprivacy.com/)
|
||||
- [The what, why, and when of multi-factor authentication (MFA)](https://outline.com/8gL8ZG)
|
||||
- [They Track You: A website to raise awareness of online privacy (TheyTrackYou.com)](https://theytrackyou.com/)
|
||||
- [user.js - Firefox configuration hardening (GitHub)](https://github.com/pyllyukko/user.js)
|
||||
- [What are 5-eyes, 9-eyes, and 14-eyes? (RestorePrivacy)](https://restoreprivacy.com/5-eyes-9-eyes-14-eyes/)
|
||||
- [What is GDPR and how will it affect you? (Outline/The Guardian)](https://outline.com/exmSpf)
|
||||
- [What is GDPR? Everything you need to know about the new EU data laws (Outline/TechRadar)](https://outline.com/6sjd76)
|
||||
- [What is Tor and should I use it?](https://outline.com/JRCscH)
|
||||
- [Why You Really Should Put Tape Over Your Webcam](https://outline.com/fYCu98)
|
||||
- [Windows 10 Privacy Guide (fdossena.com)](https://fdossena.com/?p=w10debotnet/index_1903.frag)
|
||||
- [7 Reasons to Use a Third-Party DNS Service](https://outline.com/8jsWXw)
|
||||
- Use [DNSPerf](https://www.dnsperf.com/#!dns-resolvers) to see which one is fastest for you.
|
||||
|
||||
#### Subsection 2
|
||||
|
||||
- [AlternativeTo](https://alternativeto.net/) is a free service that helps you find better alternatives to the products you love and hate. Used extensively to build this guide.
|
||||
- [block-all-google.sh](https://github.com/wesaphzt/block-all-google) is a script for blocking everything Google at the network level. This can and probably will break other alternatives that rely on Google to serve content.
|
||||
- [Databunker](https://databunker.org/) is a network-based, self-hosted, GDPR compliant, secure database for personal data or PII.
|
||||
- [ethical.net](https://ethical.net/) is a not-for-profit project building a collaborative, online directory of ethical companies of all kinds.
|
||||
- [Firefox Profilemaker](https://ffprofile.com/) is a tool to help you create a Firefox profile with the defaults you like.
|
||||
- [Fix Windows Privacy](https://modzero.github.io/fix-windows-privacy/) is a tool to disable privacy breaches on Windows 10.
|
||||
- [Framasoft](https://framasoft.org/en/) is a collection of alternative software. Too many to fit elsewhere in the list.
|
||||
- [Go Incognito](https://techlore.tech/goincognito.html) A guide to security, privacy, and anominity.
|
||||
- [Go FOSS](https://www.gofoss.today/) is a guide on ditching big-tech, with a focus on seven core areas.
|
||||
- [Hybrid Analysis](https://www.hybrid-analysis.com/) a free malware analysis service for the community that detects and analyzes unknown threats using a unique Hybrid Analysis technology. Powered by [Falcon Sandbox](https://www.crowdstrike.com/endpoint-security-products/falcon-sandbox-malware-analysis/), which is developed by [CrowdStrike](https://www.crowdstrike.com/).
|
||||
- [Outline](https://outline.com/) is an awesome tool for getting all the junk out of news articles (I've used it a few times in this guide already). Sometimes it can get around paywalls for "premium" news sites.
|
||||
- [Plexus](https://plexus.techlore.tech/) Plexus is a website where you can check andriod app compatibility with microg or no google services. It is a crowdsourced project where people test an app's compatibility in those environments and then sumbit it to the database.
|
||||
- [PRISM Break](https://prism-break.org/en/) is a guide on how to opt out of global data surveillance programs like PRISM, XKeyscore and Tempora.
|
||||
- [Privacy Guides](https://privacyguides.org/) provides services, tools and knowledge to protect your privacy against global mass surveillance.
|
||||
- [retiolus/privacysec](https://github.com/retiolus/privacysec) is a collective guide built off the data of other guides, including this one, whose aim is to be translated into as many languages as possible.
|
||||
- [r/Privacy wiki](https://old.reddit.com/r/privacy/wiki/index) has a lot of useful information. This guide also automatically mirrors itself to the wiki!
|
||||
- [r/VPN wiki](https://old.reddit.com/r/VPN/wiki/index) to learn more about why you should consider using a VPN.
|
||||
- [Switching.software](https://switching.software/) is a collection of ethical, easy-to-use and privacy-conscious alternatives to well-known software.
|
||||
- [VirusTotal](https://www.virustotal.com/) lets you upload files and scans them against multiple antivirus programs at once. Very helpful for checking false negatives. Be aware that Alphabet Inc owns VirusTotal.
|
||||
- [VPN Toolkit](https://techlore.tech/vpn.html) Community driven tools for VPNs. Includes a VPN finder, chart, and other useful imformation.
|
||||
- [WindowsSpyBlocker (GitHub)](https://github.com/crazy-max/WindowsSpyBlocker) is a tool to block spying and tracking on Windows.
|
|
@ -1,288 +0,0 @@
|
|||
{
|
||||
"name": "degoogle",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"fs-extra": "^9.0.0",
|
||||
"moment": "^2.26.0",
|
||||
"node-fetch": "^2.6.1",
|
||||
"qs": "^6.9.4",
|
||||
"yaml": "^1.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/at-least-node": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
|
||||
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
|
||||
"engines": {
|
||||
"node": ">= 4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/call-bind": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
|
||||
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.1",
|
||||
"get-intrinsic": "^1.0.2"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/fs-extra": {
|
||||
"version": "9.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
|
||||
"integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
|
||||
"dependencies": {
|
||||
"at-least-node": "^1.0.0",
|
||||
"graceful-fs": "^4.2.0",
|
||||
"jsonfile": "^6.0.1",
|
||||
"universalify": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/function-bind": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
|
||||
},
|
||||
"node_modules/get-intrinsic": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
|
||||
"integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.1",
|
||||
"has": "^1.0.3",
|
||||
"has-symbols": "^1.0.1"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/graceful-fs": {
|
||||
"version": "4.2.8",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
|
||||
"integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg=="
|
||||
},
|
||||
"node_modules/has": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/has-symbols": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
|
||||
"integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/jsonfile": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
|
||||
"integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
|
||||
"dependencies": {
|
||||
"universalify": "^2.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"graceful-fs": "^4.1.6"
|
||||
}
|
||||
},
|
||||
"node_modules/moment": {
|
||||
"version": "2.29.1",
|
||||
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
|
||||
"integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/node-fetch": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
|
||||
"integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
|
||||
"engines": {
|
||||
"node": "4.x || >=6.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/object-inspect": {
|
||||
"version": "1.11.0",
|
||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
|
||||
"integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/qs": {
|
||||
"version": "6.10.1",
|
||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz",
|
||||
"integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==",
|
||||
"dependencies": {
|
||||
"side-channel": "^1.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/side-channel": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
|
||||
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
|
||||
"dependencies": {
|
||||
"call-bind": "^1.0.0",
|
||||
"get-intrinsic": "^1.0.2",
|
||||
"object-inspect": "^1.9.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/universalify": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
|
||||
"integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
|
||||
"engines": {
|
||||
"node": ">= 10.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/yaml": {
|
||||
"version": "1.10.2",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
|
||||
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"at-least-node": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
|
||||
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg=="
|
||||
},
|
||||
"call-bind": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
|
||||
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
|
||||
"requires": {
|
||||
"function-bind": "^1.1.1",
|
||||
"get-intrinsic": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"fs-extra": {
|
||||
"version": "9.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
|
||||
"integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
|
||||
"requires": {
|
||||
"at-least-node": "^1.0.0",
|
||||
"graceful-fs": "^4.2.0",
|
||||
"jsonfile": "^6.0.1",
|
||||
"universalify": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"function-bind": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
|
||||
},
|
||||
"get-intrinsic": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
|
||||
"integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
|
||||
"requires": {
|
||||
"function-bind": "^1.1.1",
|
||||
"has": "^1.0.3",
|
||||
"has-symbols": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"graceful-fs": {
|
||||
"version": "4.2.8",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
|
||||
"integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg=="
|
||||
},
|
||||
"has": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||
"requires": {
|
||||
"function-bind": "^1.1.1"
|
||||
}
|
||||
},
|
||||
"has-symbols": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
|
||||
"integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw=="
|
||||
},
|
||||
"jsonfile": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
|
||||
"integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
|
||||
"requires": {
|
||||
"graceful-fs": "^4.1.6",
|
||||
"universalify": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"moment": {
|
||||
"version": "2.29.1",
|
||||
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
|
||||
"integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ=="
|
||||
},
|
||||
"node-fetch": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
|
||||
"integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw=="
|
||||
},
|
||||
"object-inspect": {
|
||||
"version": "1.11.0",
|
||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
|
||||
"integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg=="
|
||||
},
|
||||
"qs": {
|
||||
"version": "6.10.1",
|
||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz",
|
||||
"integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==",
|
||||
"requires": {
|
||||
"side-channel": "^1.0.4"
|
||||
}
|
||||
},
|
||||
"side-channel": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
|
||||
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
|
||||
"requires": {
|
||||
"call-bind": "^1.0.0",
|
||||
"get-intrinsic": "^1.0.2",
|
||||
"object-inspect": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"universalify": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
|
||||
"integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ=="
|
||||
},
|
||||
"yaml": {
|
||||
"version": "1.10.2",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
|
||||
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
|
||||
}
|
||||
}
|
||||
}
|
21
package.json
21
package.json
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"name": "degoogle",
|
||||
"version": "1.0.0",
|
||||
"description": "A huge list of alternatives to Google products. Privacy tips, tricks, and links.",
|
||||
"main": "_build.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": "github:tycrek/degoogle",
|
||||
"author": "tycrek <t@tycrek.com> (https://tycrek.com/)",
|
||||
"license": "ISC",
|
||||
"bugs": "https://github.com/tycrek/degoogle/issues",
|
||||
"homepage": "https://github.com/tycrek/degoogle#readme",
|
||||
"dependencies": {
|
||||
"fs-extra": "^9.0.0",
|
||||
"moment": "^2.26.0",
|
||||
"node-fetch": "^2.6.1",
|
||||
"qs": "^6.9.4",
|
||||
"yaml": "^1.10.0"
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
- title: Google Chrome’s users take a back seat to its bottom line
|
||||
url: https://www.eff.org/deeplinks/2018/11/google-chromes-users-take-back-seat-its-bottom-line
|
||||
author: Bennett Cyphers and Mitch Stoltz - EFF
|
||||
date: 2018-11-01
|
||||
- title: Quitting Facebook & Google
|
||||
url: https://medium.com/@natematias/https-medium-com-natematias-quitting-facebook-google-aaf8f4c80fbf
|
||||
author: J. Nathan Matias
|
||||
date: 2018-12-08
|
||||
- title: How to fight back against Google AMP as a web user and a web developer
|
||||
url: https://markosaric.com/google-amp/
|
||||
author: Marko Saric
|
||||
date: 2019-12-05
|
|
@ -1,24 +0,0 @@
|
|||
- title: Permanent Record
|
||||
url: https://www.goodreads.com/book/show/46223297-permanent-record
|
||||
author: Edward Snowden
|
||||
date: 2019
|
||||
- title: Ten Arguments for Deleting Your Social Media Accounts Right Now
|
||||
url: http://www.jaronlanier.com/tenarguments.html
|
||||
author: Jaron Lanier
|
||||
date: 2018
|
||||
- title: The Age of Surveillance Capitalism
|
||||
url: https://www.publicaffairsbooks.com/titles/shoshana-zuboff/the-age-of-surveillance-capitalism/9781610395694/
|
||||
author: Shoshana Zuboff
|
||||
date: 2019
|
||||
- title: The Attention Merchants
|
||||
url: http://www.timwu.org/AttentionMerchants.html
|
||||
author: Tim Wu
|
||||
date: 2016
|
||||
- title: Zucked
|
||||
url: https://www.zuckedbook.com/
|
||||
author: Roger McNamee
|
||||
date: 2019
|
||||
- title: Privacy Is Power
|
||||
url: https://www.penguin.co.uk/books/1120394/privacy-is-power/9780552177719.html
|
||||
author: Carissa Véliz
|
||||
date: 2021
|
|
@ -1,88 +0,0 @@
|
|||
- name: uBlock Origin
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/ublock-origin
|
||||
text: |
|
||||
uBlock Origin is not an "ad blocker", it's a wide-spectrum content blocker with CPU and memory efficiency as a primary feature.
|
||||
- name: Privacy Badger
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17
|
||||
text: |
|
||||
Privacy Badger automatically learns to block invisible trackers. Instead of keeping lists of what to block, Privacy Badger learns by watching which domains appear to be tracking you as you browse the Web.
|
||||
- name: HTTPS Everywhere
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/https-everywhere
|
||||
text: |
|
||||
Many sites on the web offer some limited support for encryption over HTTPS, but make it difficult to use. For instance, they may default to unencrypted HTTP, or fill encrypted pages with links that go back to the unencrypted site. The HTTPS Everywhere extension fixes these problems by rewriting all requests to these sites to HTTPS. Note: EFF is preparing to deprecate the HTTPS Everywhere, check out this [blog post](https://www.eff.org/deeplinks/2021/09/https-actually-everywhere).
|
||||
- name: Cookie AutoDelete
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/cookie-autodelete
|
||||
text: |
|
||||
Control your cookies! This WebExtension is inspired by Self Destructing Cookies. When a tab closes, any cookies not being used are automatically deleted. Whitelist the ones you trust while deleting the rest. Support for Container Tabs.
|
||||
- name: DDG Privacy Essentials
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/duckduckgo-for-firefox
|
||||
text: |
|
||||
Privacy, simplified. Our add-on provides the privacy essentials you need to seamlessly take control of your personal information, no matter where the internet takes you: tracker blocking, smarter encryption, DuckDuckGo private search, and more.
|
||||
- name: I don't care about cookies
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/i-dont-care-about-cookies
|
||||
text: |
|
||||
This add-on will remove cookie warnings from almost all websites! You can report any website which still warns you about cookies: make a right click and choose 'Report a cookie warning' from the menu.
|
||||
- name: minerBlock
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/minerblock-origin
|
||||
text: |
|
||||
MinerBlock is an efficient browser extension that focuses on blocking browser-based cryptocurrency miners all over the web. This extension uses two different approaches to block miners. The first one is based on blocking requests/scripts loaded from a blacklist, this is the traditional approach adopted by most ad-blockers and other mining blockers. The other approach which makes MinerBlock more efficient against cryptojacking is detecting potential mining behavior inside loaded scripts and kills them immediately. This makes the extension able to block inline scripts as well as miners running through proxies. Source code available on [GitHub](https://github.com/xd4rker/MinerBlock).
|
||||
- name: ClearURLS
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/clearurls
|
||||
text: |
|
||||
This extension will automatically remove tracking elements from URLs to help protect your privacy when browse through the Internet.
|
||||
- name: Cloud Firewall
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/cloud-firewall
|
||||
text: |
|
||||
Block connections to pages and web resources hosted in major cloud services if the user wishes to do so. Supports blocking Google, Amazon, Facebook, Apple, Microsoft and Cloudflare.
|
||||
- name: CSS Exfil Protection
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/css-exfil-protection
|
||||
text: |
|
||||
CSS Exfil is a method attackers can use to steal data from web pages using Cascading Style Sheets (CSS). This plugin sanitizes and blocks any CSS rules which may be designed to steal data.
|
||||
- name: Disconnect
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/disconnect
|
||||
text: |
|
||||
Visualize and block the otherwise invisible websites that track your search and browsing history.
|
||||
- name: Firefox Multi-Account Containers
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers
|
||||
text: |
|
||||
Firefox Multi-Account Containers lets you keep parts of your online life separated into color-coded tabs that preserve your privacy. Cookies are separated by container, allowing you to use the web with multiple identities or accounts simultaneously.
|
||||
- name: Google search link fix (also Yandex)
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/google-search-link-fix
|
||||
text: |
|
||||
This extension prevents Google and Yandex search pages from modifying search result links when you click them. This is useful when copying links but it also helps privacy by preventing the search engines from recording your clicks.
|
||||
- name: HTTPZ
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/httpz
|
||||
text: |
|
||||
HTTPZ is meant to be unobtrusive and lightweight, it respects your privacy, and is free of trans fats. Additionally, it is very configurable, and should be slightly more secure than some of the alternatives out there, since it has a couple of built-in defenses against SSL-stripping attacks.
|
||||
- name: Link Cleaner
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/link-cleaner
|
||||
text: |
|
||||
Clean URLs that are about to be visited: removes utm_* parameters; on item pages of aliexpress and amazon, removes tracking parameters; skip redirect pages of facebook, steam and reddit
|
||||
- name: Privacy-Oriented Origin Policy
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/privacy-oriented-origin-policy
|
||||
text: |
|
||||
Prevent Firefox from sending Origin headers when they are least likely to be necessary, to protect your privacy.
|
||||
- name: Skip Redirect
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/skip-redirect
|
||||
text: |
|
||||
Some web pages use intermediary pages before redirecting to a final page. This add-on tries to extract the final url from the intermediary url and goes there straight away if successful.
|
||||
- name: Temporary Containers
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/temporary-containers
|
||||
text: |
|
||||
Open tabs, websites, and links in automatically managed disposable containers. Containers isolate data websites store (cookies, storage, and more) from each other, enhancing your privacy and security while you browse.
|
||||
- name: TrackMeNot
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/trackmenot
|
||||
text: |
|
||||
An artware browser add-on to protect privacy in web-search. By issuing randomized queries to common search-engines, TrackMeNot obfuscates your search profile and registers your discontent with surreptitious tracking.
|
||||
- name: Redirect AMP to HTML
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/amp2html
|
||||
text: |
|
||||
This web extension enables users to choose to opt-out of using Accelerated Mobile Pages (AMP) and choose to use the standard web instead.
|
||||
- name: user.js
|
||||
url: https://github.com/arkenfox/user.js
|
||||
text: |
|
||||
This is not an extension, instead it is a Firefox `user.js` config file. This file is a template which aims to provide as much privacy and enhanced security as possible, and to reduce tracking and fingerprinting as much as possible - while minimizing any loss of functionality and breakage (but it will happen).
|
||||
- name: Port Authority
|
||||
url: https://addons.mozilla.org/en-US/firefox/addon/port-authority/
|
||||
text: |
|
||||
Blocks websites from using javascript to port scan your computer/network and dynamically blocks all LexisNexis endpoints from running their invasive data collection scripts. [Website](https://www.g666gle.me/Port-Authority/), [Source Code](https://github.com/ACK-J/Port_Authority)
|
2248
yaml/degoogle.yml
2248
yaml/degoogle.yml
File diff suppressed because it is too large
Load Diff
|
@ -1,80 +0,0 @@
|
|||
- title: Google Can Survive Too Much Innovation. You Can't.
|
||||
url: https://outline.com/pwWc6B
|
||||
author: Robert Sher - Forbes
|
||||
date: 2012-05-15
|
||||
- title: The truth about Google's famous '20% time' policy
|
||||
url: https://outline.com/SmyHJW
|
||||
author: Jillian D'Onfro - Business Insider
|
||||
date: 2015-04-17
|
||||
- title: The Binge Breaker
|
||||
url: https://outline.com/EmHWna
|
||||
author: Bianca Bosker - The Atlantic
|
||||
date: 2016-11-01
|
||||
- title: How Malware Keeps Sneaking Past Google Play’s Defenses
|
||||
url: https://outline.com/2mAwU7
|
||||
author: Lily Hay Newman - WIRED
|
||||
date: 2017-09-22
|
||||
- title: Forget Killer Robots — Bias Is the Real AI Danger
|
||||
url: https://outline.com/VqaaUD
|
||||
author: Will Knight - MIT Technology Review
|
||||
date: 2017-10-03
|
||||
- title: Google managers kept blacklists of conservative employees and one manager considered holding 'trials,' a new lawsuit alleges
|
||||
url: https://outline.com/NMrzg2
|
||||
author: Julie Bort - Business Insider
|
||||
date: 2018-01-08
|
||||
- title: A longtime Google engineer quits, saying the company is ’100% competitor-focused’ and ‘can no longer innovate’
|
||||
url: https://outline.com/WfF8DP
|
||||
author: Jillian D'Onfro - CNBC
|
||||
date: 2018-01-24
|
||||
- title: Facebook and Google are doomed, George Soros says
|
||||
url: https://outline.com/GTMKNM
|
||||
author: Hamza Shaban - Washington Post
|
||||
date: 2018-01-26
|
||||
- title: Google Isn't Listening, So Its Employees Are Suing
|
||||
url: https://outline.com/9awE8Z
|
||||
author: Kate Conger - Gizmodo
|
||||
date: 2018-03-26
|
||||
- title: Google sees major claims of harassment and discrimination as lawsuits proceed
|
||||
url: https://outline.com/NcxRr3
|
||||
author: Sam Levin - The Guardian
|
||||
date: 2018-03-28
|
||||
- title: How to stop Google from tracking everything you do online
|
||||
url: https://outline.com/uez3G5
|
||||
author: Todd Haselton - CNBC
|
||||
date: 2018-05-11
|
||||
- title: Google will always do evil
|
||||
url: https://outline.com/YhAP7C
|
||||
author: Jessica Conditt - Engadget
|
||||
date: 2018-05-24
|
||||
- title: Google’s new ‘AI principles’ forbid its use in weapons and human rights violations
|
||||
url: https://outline.com/NjBrf9
|
||||
author: Devin Coldewey - TechCrunch
|
||||
date: 2018-06-07
|
||||
- title: Google Plans to Launch Censored Search Engine in China, Leaked Documents Reveal
|
||||
url: https://outline.com/dXrdLr
|
||||
author: Ryan Gallagher - The Intercept
|
||||
date: 2018-08-01
|
||||
- title: Google’s China plan isn’t just evil — it’s bad for business
|
||||
url: https://outline.com/VRAxTZ
|
||||
author: Josh Rogin - Washington Post
|
||||
date: 2018-08-09
|
||||
- title: How Google Protected Andy Rubin, the ‘Father of Android’
|
||||
url: https://outline.com/4Ua6SY
|
||||
author: Daisuke Wakabayashi and Katie Benner - New York Times
|
||||
date: 2018-10-25
|
||||
- title: A New Google+ Blunder Exposed Data From 52.5 Million Users
|
||||
url: https://outline.com/w7Gxux
|
||||
author: Lily Hay Newman - WIRED
|
||||
date: 2018-12-10
|
||||
- title: Three Years of Misery Inside Google, the Happiest Company in Tech
|
||||
url: https://outline.com/XUCRBr
|
||||
author: Nitasha Tiku - WIRED
|
||||
date: 2019-08-13
|
||||
- title: Google’s latest user-hostile design change makes ads and search results look identical
|
||||
url: https://outline.com/utGbnh
|
||||
author: Natasha Lomas - TechCrunch
|
||||
date: 2020-01-23
|
||||
- title: You Are Now Remotely Controlled
|
||||
url: https://outline.com/uzKKcq
|
||||
author: Shoshana Zuboff - New York Times
|
||||
date: 2020-01-24
|
Loading…
Reference in New Issue