mirror of
https://github.com/HorlogeSkynet/thunderbird-user.js.git
synced 2025-09-01 09:28:32 +02:00
Compare commits
134 Commits
v68.0
...
version/11
Author | SHA1 | Date | |
---|---|---|---|
824edabe63 | |||
48529d1963 | |||
c6fef1356e | |||
ebeb8cf3fb | |||
ee7649a8b4 | |||
7390a8056c | |||
e6c5df30f2 | |||
ad0cac10b2 | |||
d6b18302e4 | |||
ee80afc278 | |||
3996c279fd | |||
088da14f7e | |||
87b0d325e2 | |||
5a59c1b7e7 | |||
167ddc02be | |||
8bd612fd82 | |||
fc144d3cb1 | |||
ac8a715b06 | |||
439e5b5e7d | |||
07d26c7881 | |||
d2283b8c91 | |||
32afc0b38d | |||
32663905d0 | |||
4f5cde426c | |||
cc6cab6525 | |||
eba6bc4dea | |||
d8d79d6c84 | |||
494f684d74 | |||
8970a6fda1 | |||
08713b3ea9 | |||
a3a5c4ad86 | |||
6798bda078 | |||
c1e6a54f75 | |||
0dcc49687f | |||
0ccd0c0e99 | |||
d778e6d7b6 | |||
902231ecf0 | |||
ea3c48a7a9 | |||
f885b50de5 | |||
255ccd84ae | |||
0abbda8e39 | |||
03c86462d8 | |||
838529ffbd | |||
5387c41c91 | |||
22efe76834 | |||
fdcaf8570b | |||
5caedc08de | |||
5a787eb8ce | |||
39aaee7fa3 | |||
4dc99eb87f | |||
e95dc540c9 | |||
6c5d84bc89 | |||
db12db282f | |||
f8466f15dd | |||
68628a397a | |||
fb31ebb304 | |||
50afdb9a57 | |||
5c59028af9 | |||
e5fdab03ee | |||
f45c0a3d75 | |||
c4172ac672 | |||
e8f584b901 | |||
9b7b22420d | |||
8719ad5a37 | |||
7ffec7ed57 | |||
2d82b7cc0c | |||
c41232b1c3 | |||
c96eed17c0 | |||
616c2b1553 | |||
fc22408d19 | |||
1196a9ce4f | |||
714fd1898f | |||
dcf351aa96 | |||
de8048fea6 | |||
3580cfd3c4 | |||
c54c059011 | |||
a492b510df | |||
f7788b2c8a | |||
ac43ee758d | |||
74735518be | |||
881a339584 | |||
efe11df8e4 | |||
5a1ff8ddfa | |||
57073e7516 | |||
68b3e25656 | |||
e639a79445 | |||
3b2afdd532 | |||
5342ec1619 | |||
f675a006d5 | |||
d3308d2f5f | |||
7c8504b6d0 | |||
d169ad4ba8 | |||
d35ac2f330 | |||
3c70f08468 | |||
7f3b35ca64 | |||
b8ef724bb0 | |||
5f8cb09775 | |||
0ca3d51157 | |||
aa773053bf | |||
d751f49340 | |||
b600990f30 | |||
6d624b759e | |||
e7086e6b5f | |||
894ae0d78b | |||
a6a674ad37 | |||
700f90e954 | |||
352394a62f | |||
fc6ea5582f | |||
428fa861b9 | |||
148bfac882 | |||
13b544b208 | |||
667189eedb | |||
b4a7a771ec | |||
e859c40916 | |||
b36710a76e | |||
ba65d33451 | |||
accbfcc009 | |||
5ee06c6d89 | |||
8591d9b2c8 | |||
ac6137d6f4 | |||
7bc7c89ac7 | |||
52d0864e41 | |||
37066f8c06 | |||
787ca411fb | |||
68d36833f7 | |||
f9413919b5 | |||
b58655a422 | |||
08b2bf9467 | |||
bc1a74afa7 | |||
8c2ef50da0 | |||
3cd96847ca | |||
10b1bb2b7c | |||
1692de442c | |||
a9b0166323 |
36
.eslint.config.mjs
Normal file
36
.eslint.config.mjs
Normal file
@ -0,0 +1,36 @@
|
||||
// Thunderbird User.JS ESLint configuration file
|
||||
|
||||
import js from "@eslint/js";
|
||||
|
||||
export default [
|
||||
js.configs.recommended,
|
||||
{
|
||||
rules: {
|
||||
// Expect only double-quoted strings.
|
||||
quotes: ["error", "double"],
|
||||
|
||||
// Expect a semicolon after each statement.
|
||||
semi: ["error", "always", {"omitLastInOneLineBlock": false}],
|
||||
|
||||
// As project code style, don't allow tabulation nor trailing whitespaces.
|
||||
"no-tabs": "error",
|
||||
"no-trailing-spaces": "error",
|
||||
|
||||
// Don't allow whitespace before semicolons.
|
||||
"semi-spacing": ["error", {"before": false}],
|
||||
|
||||
// Don't allow irregular whitespace characters in our sheet.
|
||||
"no-irregular-whitespace": ["error", {"skipStrings": false, "skipComments": false}],
|
||||
},
|
||||
languageOptions: {
|
||||
// From <https://searchfox.org/mozilla-central/rev/c938c7416c633639a5c8ce4412be586eefb48005/modules/libpref/parser/src/lib.rs#296>
|
||||
globals: {
|
||||
pref: "readonly",
|
||||
user_pref: "readonly",
|
||||
sticky: "readonly",
|
||||
locked: "readonly",
|
||||
sticky_pref: "readonly",
|
||||
},
|
||||
},
|
||||
},
|
||||
];
|
4
.github/FUNDING.yml
vendored
Normal file
4
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
# repo: HorlogeSkynet/thunderbird-user.js
|
||||
# filename: FUNDING.YML
|
||||
|
||||
liberapay: HorlogeSkynet
|
38
.github/ISSUE_TEMPLATE/bug.md
vendored
Normal file
38
.github/ISSUE_TEMPLATE/bug.md
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve Thunderbird User.JS
|
||||
title: "[BUG] "
|
||||
labels: 'bug'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
<!-- A clear and concise description of what the bug is. -->
|
||||
|
||||
|
||||
**Expected behavior**
|
||||
<!-- A clear and concise description of what you expected to happen. -->
|
||||
|
||||
|
||||
**Screenshots**
|
||||
<!-- If applicable (i.e. graphical glitch), add screenshots to help explain your problem. -->
|
||||
|
||||
|
||||
**Environment**
|
||||
<!-- Please complete the following information: -->
|
||||
- Thunderbird version used (X.Y.Z) :
|
||||
- `thunderbird user.js` template version used (X.Y or commit SHA) :
|
||||
- Operating system and version :
|
||||
- \[IF RELEVANT\] Graphical environment name and version :
|
||||
|
||||
|
||||
**Additional context**
|
||||
<!-- If applicable, add any other context about the problem here. -->
|
||||
|
||||
|
||||
**Checklist**
|
||||
<!--- Put an `X` in all the boxes that apply : -->
|
||||
- [ ] I can confirm the bug is due to `thunderbird user.js` **template** and not an overridden preference nor an add-on ;
|
||||
- [ ] I have searched for `[SETUP-*]` tags and read them up ;
|
||||
- [ ] I have searched the GitHub project (issues and Wiki) for my issue.
|
30
.github/ISSUE_TEMPLATE/change_request.md
vendored
Normal file
30
.github/ISSUE_TEMPLATE/change_request.md
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
---
|
||||
name: Change request
|
||||
about: Suggest a change for Thunderbird User.JS
|
||||
title: "[RFC] "
|
||||
labels: 'enhancement'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
|
||||
|
||||
|
||||
**List the concerned preferences**
|
||||
<!-- A clear and concise list of the preferences you want to add/remove/change. -->
|
||||
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
|
||||
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context (Thunderbird version, OS, etc.) or screenshots about the feature request here. -->
|
||||
|
||||
|
||||
**Checklist**
|
||||
<!--- Put an `X` in all the boxes that apply : -->
|
||||
- [ ] I know `thunderbird user.js` is a **template** and personal preferences should be stored elsewhere ;
|
||||
- [ ] The change I want to propose should globally improve the `usability / ( privacy + security + anti-fingerprinting )` ratio ;
|
||||
- [ ] I agree that subsequent modifications to my change scope may occur in the future.
|
28
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
28
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
<!--- Provide a general summary of your changes in the title above -->
|
||||
|
||||
|
||||
## Description
|
||||
<!--- Describe your changes in detail -->
|
||||
|
||||
|
||||
## Reason and / or context
|
||||
<!--- Why is this change required ? What problem does it solve ? -->
|
||||
<!--- If it fixes an open issue, please link to the issue here -->
|
||||
|
||||
|
||||
## How has this been tested ?
|
||||
<!--- Include details of your testing environment here -->
|
||||
|
||||
|
||||
## Types of changes :
|
||||
<!--- What types of changes does your code introduce ? Put an `X` in all the boxes that apply : -->
|
||||
- [ ] Bug fix (non-breaking change which fixes an issue)
|
||||
- [ ] Typo / style fix (non-breaking change which improves readability)
|
||||
- [ ] New feature (non-breaking change which adds functionality)
|
||||
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
|
||||
|
||||
## Checklist :
|
||||
<!--- Put an `X` in all the boxes that apply : -->
|
||||
- [ ] My changes looks good ;
|
||||
- [ ] I agree that my code may be modified in the future ;
|
||||
- [ ] My code follows the code style of this project (see `.eslintrc.yml`).
|
17
.github/workflows/linting.yml
vendored
Normal file
17
.github/workflows/linting.yml
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
name: Linting
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Run ESLint on user.js
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-node@v4
|
||||
|
||||
- run: npm install eslint @eslint/js
|
||||
- run: npx eslint -c .eslint.config.mjs user.js
|
@ -1,8 +0,0 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- 'node'
|
||||
|
||||
before_script:
|
||||
- npm install -g acorn
|
||||
script:
|
||||
- acorn --silent user.js
|
4
LICENSE
4
LICENSE
@ -1,8 +1,8 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2019-2020 HorlogeSkynet
|
||||
Copyright (c) 2019-2024 HorlogeSkynet
|
||||
Copyright (c) 2019 dngray
|
||||
Copyright (c) 2019 ghacksuserjs
|
||||
Copyright (c) 2019 arkenfox [prev. ghacksuserjs]
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
48
README.md
48
README.md
@ -1,32 +1,42 @@
|
||||
# Thunderbird User.JS
|
||||
|
||||
> An ongoing comprehensive user.js template for configuring and hardening Thunderbird privacy, security and anti-fingerprinting
|
||||
> Thunderbird privacy, security and anti-fingerprinting: a comprehensive user.js template for configuration and hardening
|
||||
|
||||
### :large_blue_diamond: user.js
|
||||
### 🟪 user.js
|
||||
|
||||
An `user.js` is a configuration file that can control hundreds of Thunderbird settings.
|
||||
For a more technical breakdown and explanation, you can read more on the [overview](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/1.1-Overview) Wiki page.
|
||||
An `user.js` is a configuration file that can control Thunderbird settings - for a more technical breakdown and explanation, you can read more in the [wiki](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/1.1-Overview).
|
||||
|
||||
### :large_blue_diamond: thunderbird user.js
|
||||
### 🟩 Thunderbird user.js
|
||||
|
||||
The Thunderbird `user.js` is a **template** which aims to provide as much privacy and enhanced security as possible.
|
||||
It differs from the `arkenfox user.js` in that the focus is to keep Thunderbird as an **email client** and disable as many web browsing features as possible. We believe web browsing should be done in a web browser, and not an email client.
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
|
||||
- If you're using Thunderbird with Tor we suggest that you install the [TorBirdy](https://addons.thunderbird.net/addon/torbirdy) add-on. If you are using Tor, you should also consider using [Tails](https://tails.boum.org/) or [Whonix](https://www.whonix.org/).
|
||||
- If you're a **Gmail** user see [this article about OAuth2](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/3.1-OAuth2-Users).
|
||||
- For information about [extensions](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/4.1-Extensions), see the Wiki. **Calendar** users should [see this page](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/4.1.1-Calendar).
|
||||
The `thunderbird user.js` 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).
|
||||
|
||||
Also be aware that this `user.js` is made specifically for Thunderbird and has only been tested in the latest stable release.
|
||||
Everyone, experts included, should at least read the [wiki](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki), as it contains important information regarding a few `user.js` settings.
|
||||
|
||||
### :large_blue_diamond: Acknowledgments
|
||||
It differs from the `arkenfox user.js` in that the focus is to keep Thunderbird as an **e-mail client** and disable as many web browsing features as possible. We believe web browsing should be done in a web browser, and not an email client.
|
||||
|
||||
* [tya99](https://github.com/tya99) most of the ground work and initial port from the Firefox version of [arkenfox user.js](https://github.com/arkenfox/user.js)
|
||||
* [dngray](https://github.com/dngray) continual maintenance and Wiki
|
||||
* [HorlogeSkynet](https://github.com/HorlogeSkynet) continual maintenance
|
||||
- If you're using Thunderbird (< 68) with Tor we suggest that you install the [TorBirdy](https://addons.thunderbird.net/addon/torbirdy) add-on. If you are using Tor, you should also consider using [Tails](https://tails.boum.org/) or [Whonix](https://www.whonix.org/).
|
||||
- If you're using **Gmail**, please check [this article about OAuth2](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/3.1-OAuth2-Users).
|
||||
- For information about [extensions](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/4.1-Extensions), see the Wiki.
|
||||
- **Calendar** users should [see this page](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki/4.1.1-Calendar).
|
||||
|
||||
### :large_blue_diamond: Related Projects
|
||||
Also be aware that this `user.js` is made specifically for Thunderbird and is only being tested against releases with extended support (ESR).
|
||||
|
||||
* [CHEF-KOCH/TBCK](https://github.com/CHEF-KOCH/TBCK)
|
||||
* [Privacy Handbuch](https://www.privacy-handbuch.de/handbuch_31d.htm)
|
||||
### 🟧 Sitemap
|
||||
|
||||
### :large_blue_diamond: [](https://opensource.org/licenses/MIT)
|
||||
- [Releases](https://github.com/HorlogeSkynet/thunderbird-user.js/releases)
|
||||
- [Issues](https://github.com/HorlogeSkynet/thunderbird-user.js/issues)
|
||||
- [Wiki](https://github.com/HorlogeSkynet/thunderbird-user.js/wiki)
|
||||
|
||||
### 🟥 Acknowledgments
|
||||
|
||||
* @tya99 most of the ground work and initial port from the Firefox version of [arkenfox user.js](https://github.com/arkenfox/user.js)
|
||||
* [@dngray](https://github.com/dngray) continual maintenance and Wiki
|
||||
* [@HorlogeSkynet](https://github.com/HorlogeSkynet) continual maintenance
|
||||
|
||||
### 🟦 Related Projects
|
||||
|
||||
* [Privacy Handbuch](https://www.privacy-handbuch.de/handbuch_31p.htm)
|
||||
* [Privacy Haters](http://r-36.net/scm/privacy-haters/file/README.md.html)
|
||||
* [12bytes's user-overrides.js](https://codeberg.org/12bytes/thunderbird-user.js-supplement)
|
||||
|
Reference in New Issue
Block a user