13 Commits

Author SHA1 Message Date
894ae0d78b Bumps to v78-beta4 2020-11-08 17:49:56 +01:00
a6a674ad37 Prevent access to emails until the master password is entered 2020-11-08 17:49:33 +01:00
700f90e954 Improves consistency across some preferences default set values 2020-11-08 16:18:57 +01:00
352394a62f Specifies that mail.collect_* could be changed from settings 2020-11-08 16:10:32 +01:00
fc6ea5582f TorBirdy is not compatible against Thunderbird v78, removing advice 2020-11-08 16:10:32 +01:00
428fa861b9 Prevents pages refresh or reload when tab/window is inactive or idle 2020-11-08 15:15:50 +01:00
148bfac882 Definitely removes link to CHEF-KOCH/TBCK in "related projects" list
> See: <https://github.com/arkenfox/user.js/issues/323>
2020-11-08 15:15:32 +01:00
13b544b208 These UX features actually do not exist anymore 2020-11-07 23:06:39 +01:00
667189eedb Specifies that calendar.timezone.local could be changed from settings 2020-11-07 19:19:32 +01:00
b4a7a771ec Improves addr collect. doc + Explains how it could be done with CardBook 2020-11-07 19:05:58 +01:00
e859c40916 [CARDBOOK] Prevent contacts display names leakages in recipients list 2020-11-07 19:00:33 +01:00
b36710a76e Replaces Acorn over Travis CI by ESLint over (Microsoft) GitHub Actions
> See #11, Acorn was great but not sufficient for Mozilla's libPref syntax...
2020-11-05 16:11:13 +01:00
ba65d33451 Bumps version field in sources according to latest tag
[skip ci]
2020-11-04 21:18:13 +01:00
5 changed files with 92 additions and 23 deletions

45
.eslintrc.yml Normal file
View File

@ -0,0 +1,45 @@
%YAML 1.2
---
root: true
extends: 'eslint:recommended'
globals:
# From <https://searchfox.org/mozilla-central/rev/c938c7416c633639a5c8ce4412be586eefb48005/modules/libpref/parser/src/lib.rs#296>
pref: true
user_pref: true
sticky: true
locked: true
sticky_pref: true
rules:
# Expect a semicolon after each statement.
semi:
- "error"
- "always"
-
omitLastInOneLineBlock: false
# As internal code style, don't allow tabulation.
no-tabs: "error"
# ... nor trailing spaces !
no-trailing-spaces: "error"
# Expect only double-quoted strings.
quotes:
- "error"
- "double"
# 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

17
.github/workflows/linting.yml vendored Normal file
View 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@v2
- uses: actions/setup-node@v1
- run: npm install -g eslint
- run: eslint user.js

View File

@ -1,8 +0,0 @@
language: node_js
node_js:
- 'node'
before_script:
- npm install -g acorn
script:
- acorn --silent user.js

View File

@ -35,6 +35,6 @@ Also be aware that this `user.js` is made specifically for Thunderbird and has o
### :blue_square: Related Projects
* [~~CHEF-KOCH/TBCK~~](https://github.com/CHEF-KOCH/TBCK)
* [Privacy Handbuch](https://www.privacy-handbuch.de/handbuch_31p.htm)
* [Privacy Haters](http://r-36.net/scm/privacy-haters/file/README.md.html)
* ~~CHEF-KOCH/TBCK~~

43
user.js
View File

@ -1,15 +1,14 @@
/******
* name: thunderbird user.js
* date: 1 November 2020
* version: v78-beta1
* version: v78-beta4
* authors: v52+ github | v51- www.ghacks.net
* url: https://github.com/HorlogeSkynet/thunderbird-user.js
* license: MIT (https://github.com/HorlogeSkynet/thunderbird-user.js/blob/master/LICENSE)
* releases: https://github.com/HorlogeSkynet/thunderbird-user.js/releases
* README:
0. Consider using Tor, use TorBirdy as well.
* https://addons.thunderbird.net/addon/torbirdy
0. Consider using Tor
1. READ the full README
* https://github.com/HorlogeSkynet/thunderbird-user.js/blob/master/README.md
2. READ this
@ -326,6 +325,9 @@ user_pref("network.http.speculative-parallel-limit", 0);
* [1] https://www.bleepingcomputer.com/news/software/major-browsers-to-prevent-disabling-of-click-tracking-privacy-risk/ ***/
user_pref("browser.send_pings", false); // [DEFAULT: false]
user_pref("browser.send_pings.require_same_host", true);
/* 0610: don't refresh nor reload pages when tab/window is not active or in idle state
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=518805 ***/
user_pref("browser.meta_refresh_when_inactive.disabled", true);
/*** [SECTION 0700]: HTTP* / TCP/IP / DNS / PROXY / SOCKS etc ***/
user_pref("_user.js.parrot", "0700 syntax error: the parrot's given up the ghost!");
@ -1407,9 +1409,6 @@ user_pref("_user.js.parrot", "5000 syntax error: this is an ex-parrot!");
/* UX BEHAVIOR ***/
// user_pref("general.autoScroll", false); // middle-click enabling auto-scrolling [DEFAULT: false on Linux]
// user_pref("ui.key.menuAccessKey", 0); // disable alt key toggling the menu bar [RESTART]
/* UX FEATURES: disable and hide the icons and menus ***/
// user_pref("browser.messaging-system.whatsNewPanel.enabled", false); // What's New [FF69+]
// user_pref("extensions.pocket.enabled", false); // Pocket Account [FF46+]
/* OTHER ***/
// user_pref("network.manage-offline-status", false); // see bugzilla 620472
// user_pref("xpinstall.signatures.required", false); // enforced extension signing (Nightly/ESR)
@ -1462,6 +1461,14 @@ user_pref("mail.cloud_files.inserted_urls.footer.link", "");
user_pref("pref.privacy.disable_button.view_cookies", false);
user_pref("pref.privacy.disable_button.cookie_exceptions", false);
user_pref("pref.privacy.disable_button.view_passwords", false);
/* 6014: Prevent access to emails until the master password is entered
* If a master password has been set, Thunderbird will prevent access to locally available emails
* until the secret is provided.
* This preference MAY mitigate risk due to intimate relationship threat in some cases (see [2])...
* [WARNING] This DOES NOT encrypt locally cached emails anyhow (poor man's application security)
* [1] https://support.mozilla.org/en-US/kb/protect-your-thunderbird-passwords-master-password
* [2] https://www.schneier.com/wp-content/uploads/2020/06/Privacy_Threats_in_Intimate_Relationships-1.pdf ***/
user_pref("mail.password_protect_local_cache", true); // [HIDDEN PREF]
/** HEADERS ***/
/* 6020:
@ -1500,11 +1507,18 @@ user_pref("mailnews.display.date_senders_timezone", false);
// user_pref("mailnews.use_received_date", true);
/** ADDRESS BOOK ***/
/* 6030: Address book collection
* [SETUP-FEATURE] Disable address book email collection
* Consider using https://addons.thunderbird.net/addon/cardbook instead ***/
/* 6030: Address book collection [SETUP-FEATURE]
* Disable Thunderbird internal address book email collection
* Consider using CardBook extension instead (https://addons.thunderbird.net/addon/cardbook/)
* [SETTING] Preferences>Composition>Addressing>Automatically add outgoing e-mail addresses...
* [SETTING][CARDBOOK] CardBook>Preferences>Email>Collect Outgoing Email ***/
user_pref("mail.collect_addressbook", ""); // [DEFAULT: "jsaddrbook://history.sqlite"]
user_pref("mail.collect_email_address_outgoing", false);
/* 6031: Only use email addresses, without their Display Names [CARDBOOK] [SETUP-FEATURE]
* By default, CardBook extension incorporates contacts display names in addresses fields.
* This could leak sensitive information to all recipients.
* [SETTING][CARDBOOK] CardBook>Preferences>Email>Sending Emails>Only use email addresses... ***/
user_pref("extensions.cardbook.useOnlyEmail", true);
/*** [SECTION 6100]: EMAIL COMPOSITION (ENCODING / FORMAT / VIEW)
Options that relate to composition, formatting and viewing email
@ -1591,7 +1605,7 @@ user_pref("mail.inline_attachments", false);
* [2] http://forums.mozillazine.org/viewtopic.php?f=39&t=2949521 */
user_pref("mail.compose.big_attachments.notify", true); // [DEFAULT: true]
/* 6119: Set big attachment size to warn at */
// user_pref("mailnews.message_warning_size", 20971520); // DEFAULT size
// user_pref("mailnews.message_warning_size", 20971520); // [DEFAULT: 20971520]
/** VIEW ***/
/* 6130: Disable JavaScript
@ -1647,7 +1661,8 @@ user_pref("calendar.useragent.extra", "");
/* 6212: Set calendar timezone to avoid system detection [SETUP-INSTALL]
* By default, extensive system detection would be performed to find user's current timezone.
* Setting this preference to "UTC" should disable it.
* You may also directly set it to your timezone, i.e. "Pacific/Fakaofo" ***/
* You may also directly set it to your timezone, i.e. "Pacific/Fakaofo"
* [SETTING] Edit>Preferences>Calendar>Calendar>Timezone ***/
user_pref("calendar.timezone.local", "UTC"); // [DEFAULT: ""]
/** RSS ***/
@ -1701,9 +1716,9 @@ user_pref("_user.js.parrot", "6300 syntax error: this parrot is talking in codes
/* These used to be inversed, however it seems upstream has changed this behavior
* [1] https://www.privacy-handbuch.de/handbuch_31f.htm ***/
/* 6301: Silence the Enigmail version header ***/
user_pref("extensions.enigmail.addHeaders", false); // Default
user_pref("extensions.enigmail.addHeaders", false); // [DEFAULT: false]
/* 6302: Silence the Enigmail comment ***/
user_pref("extensions.enigmail.useDefaultComment", true); // Default
user_pref("extensions.enigmail.useDefaultComment", true); // [DEFAULT: true]
/* 6303: Silence the version ***/
user_pref("extensions.enigmail.agentAdditionalParam", "--no-emit-version --no-comments");
/* 6304: Specifies the hash algorithm used by GnuPG for its cryptographic operations:
@ -1723,7 +1738,7 @@ user_pref("extensions.enigmail.protectedHeaders", 2);
/* 6306: Text to use as replacement for the subject, following the Memory Hole
* standard. If nothing is defined, then "Encrypted Message" is used.
***/
user_pref("extensions.enigmail.protectedSubjectText", "Encrypted Message"); // Default
user_pref("extensions.enigmail.protectedSubjectText", "Encrypted Message"); // [DEFAULT: "Encrypted Message"]
/** AUTOCRYPT ***/
/* 6307: Choose whether to enable AutoCrypt