# Thunderbird\@Work

This documentation is intended to help deploy and manage many Thunderbird installations at an organization.

## Benefits of using Thunderbird in an organization

Thunderbird comes with a number of key benefits which make it an excellent choice for organizational deployments of any size. Whether you are a small organization, a government institution, or a large enterprise - Thunderbird has been designed to scale to your needs.

* Cross-platform desktop email client packed with features
* Integrated calendar application (PIM)
* Integrated chat client
* Advanced Search and Filter tools
* Inbuilt message encryption (OpenPGP, S/MIME)
* Customizable with a large variety of add-ons
* Built on the latest Mozilla platform technology
* Security, privacy, data ownership
* Designed for efficiency
* Implements accessibility standards
* Open source code - transparency without proprietary mysteries
* Cross-platform policy support and configuration options for large and centralized deployments


# Explore

Learn about Thunderbird\@Work

{% content-ref url="/pages/-MNrs-Bb33U6E0L\_1gJL" %}
[Thunderbird release cycle](/explore/thunderbird-release-cycle)
{% endcontent-ref %}

{% content-ref url="/pages/-MNQKdjDKodRwRVFTvEm" %}
[Best practices for installing and updating Thunderbird](/explore/best-practices-for-installing-and-updating-thunderbird)
{% endcontent-ref %}


# Thunderbird release cycle

Extended Support Releases (ESR) for organizations

## Overview

Thunderbird's regular yearly releases, based on the Mozilla Extended Support Release (ESR) release cycle, are the perfect fit for organizations, including schools, universities, businesses and others who need extended support for mass deployments. Thunderbird combines the best of stability and security so that you can focus on getting your work done instead of worrying about constant changes to your communication system.

## Release cycle details

Thunderbird releases are maintained for more than a year with point releases that coincide with the [rapid releases of the Mozilla platform](https://wiki.mozilla.org/Release_Management/Calendar). These point releases may contain stability, correctness and security upgrades, whereas they will typically *not* introduce new features or design changes.

{% hint style="success" %}
Each Thunderbird release version will also have a three-cycle overlap (at least 12 weeks) between the time of a new release and the end-of-life of the previous release to permit testing and certification before you deploy the new version to your organization.
{% endhint %}

We rely on Thunderbird users to provide feedback for each new release. Especially during the first two cycles, please report any bugs such as regressions and stability issues.

Maintenance of each major release through point releases will provide stability, correctness and security bug fixes, and in rare cases may also include off-schedule releases to fix critical stability or security issues.

At the end of the support period for a Thunderbird version:

* The release will reach its end-of-life.
* No further updates will be offered for that version.
* An update to the next version will be offered through the application update service.

## Upgrade path between major versions

Thunderbird will automatically update itself. System administrators can disable automatic updates through their deployment system. According to the three-cycle overlap described in the info box above, the automatical update from one major version X to the next major Version Y, will occur only with the release of version Y.3.0. For example, users of version 78 will be updated to 91 only with the 91.3 point release, ensuring a smooth transition to an improved version of the new major release.


# Best practices for installing and updating Thunderbird

## Automatic updates <a href="#w_configuration-options" id="w_configuration-options"></a>

By default, automatic updates are enabled in Thunderbird. We recommend you keep this feature so your users can have the latest security patches and features.

You can ensure that automatic updates are installed without user interference by using the [AppAutoUpdate](https://github.com/mozilla/policy-templates#appautoupdate) policy.

If you need to turn off automatic updates, you can do this using the [DisableAppUpdate](https://github.com/thunderbird/policy-templates/blob/master/README.md#disableappupdate) policy.

For more information on policies, see [Managing Thunderbird policies](/manage-updates-policies-and-customization/managing-thunderbird-policies).

## Beta Builds <a href="#w_beta-builds" id="w_beta-builds"></a>

Beta builds of Thunderbird allow you to test features before they are released to the regular version of Thunderbird. They are a good way to identify issues with upcoming features and updates before they are released to the rest of your organization.

To download beta builds or daily test builds of Thunderbird, see [The future of Thunderbird (Beta channel / Nightly channel)](https://www.thunderbird.net/#channel).


# Deploy

Large-scale deployment of Thunderbird\@Work


# Deploy Thunderbird with MSI installers

IT admins can pre-configure Thunderbird installations for automated deployment on Windows using the MSI installers provided by Thunderbird.

## MSI Installers

Thunderbird offers MSI installers per locale and per release channel for 64bit Windows systems to help system administrators customize and deploy Thunderbird in their environments. The MSI installer is a wrapper of the full *installer.exe* that allows customizations e. g. through the use of an MST file prior to deploying through standard Windows deployment tools such as Active Directory or Microsoft System Center Configuration Manager.

Visit our [Systems and Languages](https://www.thunderbird.net/en-US/thunderbird/all/) download page and choose your preferred language to download a `Windows MSI 64-bit` installer for the [Thunderbird release](https://www.thunderbird.net/en-US/thunderbird/all/) update channel. We also offer localized MSI installers for the [Thunderbird Beta](https://www.thunderbird.net/en-US/thunderbird/beta/all/) and [Thunderbird Daily](http://ftp.mozilla.org/pub/thunderbird/nightly/latest-comm-central-l10n/) update channels (note that *Thunderbird Daily* is an unstable testing and development platform not intended for production environments; make sure to back up important data regularly!).

## MSI configuration options for automated deployment

MSI transforms (MSTs) for the Thunderbird MSI installers can be created or edited using the tool of your choice ([MS Orca](https://docs.microsoft.com/en-us/windows/desktop/msi/orca-exe) or other) to customize the installation. This article describes the options available.

## Thunderbird custom MSI options

Thunderbird provides a number of custom MSI options for convenient automated installation. These options can be used alongside the *msiexec* common options supported by Thunderbird MSI installers. There are several ways of applying Thunderbird custom MSI options for automated deployment, for example via direct MSI editing, creating transform configurations (.mst), or command line. More details on these methods can be found below. Here's the list of Thunderbird custom MSI options:

* **Set an application folder path: `INSTALL_DIRECTORY_PATH="path"`**\
  *path* (quoted string): Absolute folder path specifying the complete install location. This folder does not need to exist already (but it can). If INSTALL\_DIRECTORY\_NAME is set, then this setting will be ignored.
* **Set an application folder name: `INSTALL_DIRECTORY_NAME="name"`**\
  *name* (quoted string): Name of the installation directory to create within *Program Files* folder. For example, if INSTALL\_DIRECTORY\_NAME is set to "Thunderbird Release", then the installation path will be something like "C:\Program Files\Thunderbird Release". The *Program Files* path used will be the correct one for the architecture of the application being installed and the locale/configuration of the machine; this setting is mainly useful to keep you from having to worry about those differences. If this is set, then INSTALL\_DIRECTORY\_PATH will be ignored.
* **Create a taskbar shortcut: `TASKBAR_SHORTCUT=true|false`**

  Set to *false* to disable pinning a shortcut to the taskbar. *true* by default. This feature only works on Windows 7 and 8; it isn’t possible to create taskbar pins from the installer on later Windows versions.
* **Create a desktop shortcut: `DESKTOP_SHORTCUT=true|false`** \
  Set to *false* to disable creating a shortcut on the desktop. *true* by default.
* **Create a start menu shortcut: `START_MENU_SHORTCUT=true|false`** \
  Set to *false* to disable creating a Start menu shortcut. *true* by default.
* **Disable the maintenance service: `INSTALL_MAINTENANCE_SERVICE=true|false`** \
  Set to *false* to disable installing the Mozilla Maintenance Service. This will effectively prevent users from installing Thunderbird updates if they do not have write permissions to the installation directory. *true* by default.
* **Disable removing&#x20;*****distribution*****&#x20;subfolder: `REMOVE_DISTRIBUTION_DIR=true|false`** \
  Set to *false* to disable removing the *distribution* subfolder from an existing installation that’s being paved over. By default this is true and the folder is removed. The default folder path of the *distribution* subfolder is "C:\Program Files\Mozilla Thunderbird\distribution\\".
* **Prevent rebooting: `PREVENT_REBOOT_REQUIRED=true|false`** \
  Set to *true* to keep the installer from taking actions that would require rebooting the machine to complete, normally because files are in use. This should not be needed under normal circumstances unless you’re paving over a copy of Thunderbird that was running while the installer was trying to run, and setting this option in that case may result in an incomplete installation. *false* by default.
* **Bundle extensions: `OPTIONAL_EXTENSIONS=true|false`** \
  Set to *false* to disable installing any bundled extensions that are present. *true* by default.
* **Application files extraction directory: `EXTRACT_DIR="directory"`** \
  Extract the application files to the given directory and exit without actually running the installer. Of course, this means all other options will be ignored.

## MSIEXEC command line options

The command line options for *msiexec.exe* (the Windows component responsible for installing, uninstalling, and otherwise working with MSI files) are documented [here](https://docs.microsoft.com/en-us/windows/desktop/Msi/command-line-options) and also by the output of the /? option. Our MSI packages, because they wrap an *installer.exe* and do not really use the MSI framework, do not support many of the command line options available to *msiexec*. This document lists the *msiexec* options that are supported and unsupported for use with our MSI packages.

### Supported MSIEXEC options

* **/i** or **/package**

  Installs the product.
* **/L** or **/log**

  Generates an MSI log file. All of this option's configuration parameters are supported.
* **/m**

  Generates an SMS status .mif file.

  Without having a copy of Systems Management Server I've been unable to test this, but it should work.
* **/q**, **/quiet**, and **/passive**

  Sets the UI mode. The full UI option (/qf) is accepted but ignored, because we have no full UI.
* **/norestart**, **/forcerestart**, and **/promptrestart**

  The default behavior is always /norestart, but the other options behave as expected.
* **/?**, **/h**, **/help**, **/y**, **/z** Options that do not operate on a package file.
* **CUSTOM\_OPTION=VALUE**

  Configuration via command line options is supported for all custom MSI options provided by Thunderbird (i. e. those with UPPERCASE\_NAMES).

### Unsupported MSIEXEC options

* **/f**

  Repairs the product.
* **/a**

  Administrative installation.
* **/x** or **/uninstall**

  Uninstalls the product.
* **/j** along with **/t**, **/g**, and **/c**

  Advertises the product.
* **/n**

  Specifies a particular instance of the product.
* **/p** or **/update**

  Applies a patch (.msp) file.

## Example configuration

Here’s an example of a valid .mst file to help understand how options can be changed along with the MSI directory for mozilla central:

* [MST file example](https://drive.google.com/file/d/1QiV9zDcpd42_xTOhjs4bOuHvYyg_hlyS/view)
* [MSI installer nightly builds](https://archive.mozilla.org/pub/Thunderbird/nightly/latest-mozilla-central/)
* [MSI installer current release build](https://download.mozilla.org/?product=Thunderbird-msi-latest-ssl\&os=win64\&lang=en-US)

Logging can be [configured](https://docs.microsoft.com/en-us/windows/desktop/Msi/command-line-options) on the MSI to help troubleshoot installation issues.

## Ways of using Thunderbird custom options with MSI installers

There are several ways to use Thunderbird's default MSI file with your preferred configuration of custom options exposed in the MSI:

### By using an external MSI editor (e.g. [ORCA](https://docs.microsoft.com/en-us/windows/desktop/msi/orca-exe))

1. `File > Open...` and select the Thunderbird MSI to be edited.
2. Find the Property table and select it.
3. Change the values for the CUSTOM\_OPTIONS you want to set.
4. From ORCA, select `File > Save as...` and save your  modified MSI installer.

Note that this will invalidate the MSI file's signature; if you need the file to be signed, you'll have to sign it again using your organization's certificate.

### By using a transform (.mst) configuration

1. Use Orca to open the Thunderbird MSI.
2. Select **Transform > New Transform** from the menu bar.
3. Change the values for the CUSTOM\_OPTIONS you want to set.
4. Select **Transform > Generate Transform** to save your changes as a transform (.mst) file.
5. Run:

   ```
   msiexec /i “Thunderbird.msi” TRANSFORMS=”custom.mst”
   ```

### By using command line options

1. Rename the Thunderbird MSI file as default.msi
2. Move the file in a C:\MSI directory
3. Specify the desired CUSTOM\_OPTIONS in the command line and run:

   ```
   msiexec.exe /i "c:\MSI\default.msi"
   INSTALL_DIRECTORY_PATH="C:\Thunderbird\" TASKBAR_SHORTCUT=false
   DESKTOP_SHORTCUT=false INSTALL_MAINTENANCE_SERVICE=false /quiet`
   ```

All Thunderbird custom MSI options (the UPPERCASE\_OPTIONS) can be used in the command line alongside the supported common options provided by *msiexec* (like /i and /quiet in the above example).


# Mission Control Desktop (MCD) - Thunderbird AutoConfig

How to automatically configure Thunderbird using preferences in large-scale deployments

## Introduction

This document provides a step by step instruction of configuring Thunderbird using a centralized application preferences file in large-scale deployments. Preferences are the internal settings used by Thunderbird to configure the application behaviour and define the properties of each Thunderbird account (email, news, chat, etc.) within a given Thunderbird profile. The classic example is an email account for a given email address with associated server settings and application behaviours. To achieve a completely automatic configuration of user-specific accounts in Thunderbird, user properties like name and email address will be retrieved either from system environment variables or from an organisation's LDAP directory.

## Scenario and objective

You can use Thunderbird AutoConfig (MCD) in scenarios of many users sharing computers. Hence a single computer might connect different users throughout the day, who have their personal OS account, maybe including an LDAP account for authentication. The objective is to provide users with Thunderbird as a combined email, communication and PIM client which is automatically configured via preferences at startup for the currently logged-in user on the computer. As Thunderbird can run on various operating systems, this will also work perfectly in mixed OS environments, e.g. with Windows and Linux systems. Instead of configuring individual preferences files for each end user (prefs.js), you can now use a centralized default set of preferences. This default configuration file can control preferences using a set of API functions and based on environment variables (`USER`, `HOME`...) and/or LDAP queries from an organisation's directory.

## Setting up autoconfiguration

Let's set up a default configuration for all users of a given installation on one computer. You need to create two files:

* A JavaScript file (\*.js) with a base name of your choice which acts as a caller for the default configuration file, let's use `autoconf.js` here.
* A JavaScript configuration file (typically \*.cfg) with a filename of your choice as specified in the caller, let's use `thunderbird.cfg` here. This file is encoded using byte-shift/rotary 13 by default, which can be removed if plain text is preferred.

The caller, `autoconf.js`, must be placed in the following folder:

* For Windows: *Thunderbird-install-path\defaults\pref* , e.g.: `C:\Program Files\Mozilla Thunderbird\defaults\pref`
* For Linux: `/usr/lib/thunderbird/defaults/pref`

The configuration file, `thunderbird.cfg`, must be placed in the Thunderbird install path, e.g. `C:\Program Files\Mozilla Thunderbird` for Windows and `/usr/lib/thunderbird` for Linux.

The caller, `autoconfig.js`, has the following content:

* `pref("general.config.filename", "thunderbird.cfg");` (required: specify the autoconfiguration file)
* `pref("general.config.obscure_value", 0);` (optional: specify or remove the byte-shift/rotary encoding of the autoconfiguration file; default: 13; remove encoding: 0)

## The default configuration file

The default configuration file is an encoded JavaScript file (see above) which uses a JavaScript preferences API. The API is defined in a file called [prefcalls.js](https://searchfox.org/comm-central/source/mozilla/extensions/pref/autoconfig/src/prefcalls.js), which is packed in the main resource file `omni.ja` located in your Thunderbird installation folder. The following API functions are available:

```
pref(prefName, value)
defaultPref(prefName, value)
lockPref(prefName, value)
unlockPref(prefName)
getPref(prefName)
clearPref(prefName)
setLDAPVersion(version)
getLDAPAttributes(host, base, filter, attribs, isSecure)
getLDAPValue(str, key)
displayError(funcname, message)
getenv(name)
```

## More information, tips and examples

[This blog](https://blog.deanandadie.net/tag/mission-control-desktop/) has further reading with more explanations, tips and tricks, and step by step examples.


# Manage updates, policies & customization

Manage your Thunderbird\@work deployment


# Managing Thunderbird Updates

We recommend keeping automatic updates enabled for all Thunderbird deployments to ensure that the latest security patches are applied and all features are available, but your specific environment may prevent automatic updates.

{% hint style="success" %}
Thunderbird automatically benefits from all security updates of the underlying Mozilla platform technology.
{% endhint %}

## Thunderbird Releases

[Thunderbird releases](https://www.thunderbird.net/en-US/thunderbird/releases/) generally follow the Extended Support Release (ESR) schedule of Firefox, but the exact release dates might deviate by some days. For a friendly overview of the scheduled Thunderbird release dates, you can consult the ESR column of Mozilla's [Release Calendar](https://wiki.mozilla.org/Release_Management/Calendar). You can also link to the Thunderbird Release Calendar via this [ICS for Thunderbird/Lightning or your calendar app](https://www.google.com/calendar/ical/mozilla.com_2d37383433353432352d3939%40resource.calendar.google.com/public/basic.ics).

| Update type | Release version (example) | Frequency        | Scope                                                        |
| ----------- | ------------------------- | ---------------- | ------------------------------------------------------------ |
| Major       | 78.0                      | Every Year       | New features delivered and bugs fixed in the last 12 months. |
| Minor       | 78.1                      | Every four weeks | Stability, correctness and security bug fixes.               |
|             | 78.1.1                    | As required      | Critical stability or security bug fixes.                    |

Thunderbird's release and beta version numbers generally match those of Mozilla Firefox ESR and beta versions. Unlike Firefox, Thunderbird releases the rapid release versions between ESRs only as betas, so the major release version numbers will jump e.g. from Thunderbird 78 directly to Thunderbird 91.

## Disabling Thunderbird updates

Automatic updates are enabled by default, but you can disable them using the [DisableAppUpdate policy](https://github.com/thunderbird/policy-templates/blob/master/README.md#disableappupdate).


# Managing Thunderbird policies

Overview of how to use policies for Thunderbird\@work


# Customizing Thunderbird using policies.json

How to setup Thunderbird policies in cross-platform organisational environments

Policy support can be implemented using a JSON file called policies.json. Unlike controlling Thunderbird [using Windows Group Policy](https://support.mozilla.org/en-US/kb/customizing-firefox-using-group-policy-windows), the policies.json is cross-platform compatible, making it the preferred method for organisational environments that have workstations running various operating systems.

To implement this policy support, a `policies.json` file needs to be created. This file goes into a directory called `distribution` within the Thunderbird installation directory. This directory is not usually included by default, so you may need to manually create it.

The policies.json file looks like this:

```
{
 "policies": {
   "BlockAboutConfig": true
 }
}
```

In this example, we are setting the `BlockAboutConfig` policy to `true`, which means that the user will not have access to the `about:config` page.

The latest information about our policies is available in [the README on our GitHub repository](https://github.com/thunderbird/policy-templates/blob/master/README.md).

{% hint style="warning" %}
**NOTE:** The above method will not work if Thunderbird is already being managed using Windows Group Policy.
{% endhint %}

\*\*\*\*


# Thunderbird Preferences Relevant to Enterprises

Preferences related to using Thunderbird in enterprises

### New Email Account Provisioning

Account Provisioning allows users to sign up for new email accounts from *gandi.net* directly from within Thunderbird.

* **mail.provider.enabled**
  * Default: true
  * Default Action: If the user does not have an account set up, they will be presented with an option to sign up for a new account. They may choose to set up an existing account that they hold instead of obtaining a new one.

### Filelink (cloud attachments) <a href="#filelink" id="filelink"></a>

Filelink is a feature that allows users to upload big files to various servers and send a link to the attachment in the email, rather than the attachment itself. This has benefits for sending the email, especially when sending to multiple users. The message will be small in size and can be sent and received faster.

Thunderbird offers an option to use WeTransfer as a cloud service. It is possible to set up other providers.

* **mail.cloud\_files.enabled**
  * Default: true
  * Default Action: Prompts the user to see if they wish to send a link for big file attachments, rather than the link itself.

### Chat (Instant Messaging) <a href="#instant_messaging" id="instant_messaging"></a>

Thunderbird's chat component allows the user to access different types of instant messaging accounts.

* **mail.chat.enabled**
  * Default: true
  * Default Action: Enables access to the Instant Messaging user interface in Thunderbird

### Offline Download / Synchronisation  <a href="#html" id="html"></a>

* **mail.server.default.offline\_download**
  * Default: true
  * Default Action: Used to determine if newly created folders are set to take part in offline download or not.
  * Notes: This is the default value for all servers/accounts when the mail.server.server\<n>.offline\_download preference is not set.

* **mail.server.server\<n>.offline\_download**
  * Default: true
  * Default Action: Used to determine if newly created folders are set to take part in offline download or not.
  * Notes:
    * This value is typically not present unless it has been specifically overridden.
    * Overrides mail.server.default.offline\_download for server\<n>

Both preferences now also have the behaviour that if offline\_download is true for an account/server, then on upgrade from Thunderbird 2, all existing IMAP folders will be updated to take part in offline download.

### HTML rendering in message reader

By default all HTML elements are interpreted by the Thunderbird HTML parser. For the message reader, there are some options to control which HTML elements will get rendered. Note that some of these preferences may not be effective for composition, especially when using Edit as New Message or Forward, which may load remote content and media anyway.

* **mailnews.display.html\_as**
  * Default: 0
  * Default Action: Show original HTML
  * Custom values: 1 or 3
  * Notes:
    * This preference can be controlled through the menu:\
      `View` > `Message Body As` > `Original HTML (0)` | `Simple HTML (3)` | `Plain Text (1)`&#x20;
    * Original HTML (0) renders all elements, subject to global and per-message or per-origin Remote Content Options.
    * Simple HTML (3) prevents the display of any remote content. Furthermore, this display mode can be finetuned using the html\_sanitizer preferences below.
    * Plain Text (0) prevents the display of remote content and displays HTML downgraded to plain text.<br>

* **mailnews.display.html\_sanitizer.drop\_media**

  * Default: false
  * Default Action: Allows all media files.
  * Notes:
    * Only applies to messages viewed as Simple HTML (mailnews.display.html\_as = 3, see above).
    * To prevent rendering \<img>, \<audio> and \<video> elements, i.e. to prevent images, audios, and videos from being displayed, set this preference to true.
    * The following related pref is obsolete: mailnews.display.html\_sanitizer.allowed\_tags

* **mailnews.display.html\_sanitizer.drop\_non\_css\_presentation**
  * Default: true
  * Default Action: Drop non-CSS presentational HTML elements and attributes, such as \<font>, \<center> and *bgcolor.*
  * Notes:
    * Only applies to messages viewed as Simple HTML (mailnews.display.html\_as = 3, see above).

### Disable address book for recipient autocomplete

You may want to disable outdated or unwanted address books for recipient autocomplete when writing a new message. This is possible by creating a custom preference for the address book. The pref name has LDAP, but it works for local address books, too.

1. ≡ > Options > Find in Options > about:config
2. Right-click in config editor > New > Boolean
3. Enter preference name: `ldap_2.servers.TestAB.enable_autocomplete` (if the name of your AB is "TestAB")
4. Enter boolean value: choose `false`\
   ⇒ TestAB will no longer be used for recipient auto-completion.

### Version Upgrades  <a href="#version_upgrades" id="version_upgrades"></a>

#### Prompt for third-party Add-ons (untested)

Note: Starting with Thunderbird 78, traditional add-ons have been discontinued for security reasons. Add-ons are now generally expected to be Web Extensions using the APIs provided by Thunderbird.

* **extensions.autoDisableScopes**
  * Default: 15
  * Default Action: **When upgrading to a build from before Thunderbird 10 to after, the user will be prompted about add-ons installed by third parties.**
  * Notes:
    * This preference is a bit-wise OR of values that control the locations for which add-ons are prompted about as third-parties. **Organizations typically want to set this to 11 if they are installing their own add-ons.** The bit values are as follows:
      * 1: Installed in the profile
      * 2: Installed for all of this user's profile
      * 4: Installed and owned by the Application
      * 8: Installed for all users of the computer


# Customize Thunderbird's date and time formats

How you can customize Thunderbird's date and time formats using regional settings or override preferences.

## Customize Thunderbird's date and time formats

### Thunderbird date and time formats defined by operating system or application locale

By default, Thunderbird will use date and time formats according to the regional settings of your operating system. If you have more than one language pack installed for Thunderbird, and if the regional settings of your operating system are different from your current Thunderbird user interface language, you can also choose the application locale for Date and Time Formatting:

```
≡ > Preferences > General > Date and Time Formatting >
🞇 Application locale: German (Germany)
🞅 Regional settings locale: English (United States)
```

This will reflect in the underlying Thunderbird preference:

`intl.regional_prefs.use_os_locales = true` (default: *Regional Settings locale*)

`intl.regional_prefs.use_os_locales = false` (modified: *Application locale*)

Thunderbird will then format date and time according to your regional choice, for example:

* English (United States): `01/02/2022, 12 PM`
* German (Germany): `02.01.2022, 12:00`

Whilst such regional formats might be well understood in their original regions, they can be ambiguous in international contexts, for example due to the inversion of day and month in English, or (if you're used to that) the *absence* of inversion in German, and the strange dots in between. Similarly, the English time 12 PM might leave many guessing if that's 12 noon or 12 midnight...

So if you are looking for an easy way to clarify your dates and times without resorting to Swedish regional settings, Thunderbird's date and time format override preferences will come in handy.

### How to create date and time format override preferences using Thunderbird's Config Editor

Thunderbird's date and time format override preferences will allow you to apply date and time formats which are different and independent of those defined by the regional localizations available in your operating system or Thunderbird. You need to create these preferences and set them to your preferred format.

This feature is currently available in Thunderbird Beta 90.0b2 and Daily 91.0a1, both available for [download from Thunderbird homepage](https://www.thunderbird.net/#channel).

The following string preferences are supported by the platform:

| Preference                                    | Example value | Output     | Description |
| --------------------------------------------- | ------------- | ---------- | ----------- |
| `intl.date_time.pattern_override.date_short`  | yyyy-MM-dd    | 2025-12-31 | Short date  |
| `intl.date_time.pattern_override.date_medium` |               |            | Medium date |
| `intl.date_time.pattern_override.date_long`   |               |            | Long date   |
| `intl.date_time.pattern_override.date_full`   |               |            | Full date   |
| `intl.date_time.pattern_override.time_short`  | HH:mm         | 09:59      | Short time  |
| `intl.date_time.pattern_override.time_medium` |               |            | Medium time |
| `intl.date_time.pattern_override.time_long`   |               |            | Long time   |
| `intl.date_time.pattern_override.time_full`   |               |            | Full time   |

Note:

* For the preference values, you need to use valid Unicode date field symbols as listed in the [Date Field Symbol Table](https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).

  The most useful preferences are `intl.date_time.pattern_override.date_short` and `intl.date_time.pattern_override.time_short`. For example, these preferences are used to construct the date/time stamps in message reader, in combination with `intl.date_time.pattern_override.connector_short` described below.

You can use Thunderbird's inbuilt config editor to create these prefs: `≡ > Preferences > General > [Config Editor...]` button at the very bottom.

Type the full name of the pref which you want to create into the search box: `intl.date_time.pattern_override.date_short` As the pref does not exist, it will show up in the results list as a new pref which you can create by first selecting `(o) String` and then using the the `[+]` button. It will then ask you for a value, and you can enter `yyyy-MM-dd` (you can always edit the value again later). Then do the same by analogy for `intl.date_time.pattern_override.time_short`.

### How to change the date/time connector (e.g. from comma to space)

You might also want to change that Thunderbird will typically connect date and time with a comma.

First you need to create a preference called `intl.date_time.pattern_override.connector_short`.

The connector preference value must have date and time placeholders in curly brackets.

* Date: `{1}`
* Time: `{0}`
* Strings must be single-quoted to avoid parsing, but some simple characters like space (\`\`\`) or comma (\`\`,\`) work without quoting.
* Apparently the format follows <https://unicode.org/reports/tr35/tr35-dates.html#Date_Time_Combination_Examples>

`intl.date_time.pattern_override.connector_short` = `{1} {0}` (single space between placeholders) Result for the short date and short time combination (as used in message display): `2021-06-24 21:00`

Regular ASCII characters which you want to display must be single-quoted (otherwise the date-time display may get truncated):

`intl.date_time.pattern_override.connector_short` = `{1}'T'{0}`\
Result for the short date and short time combination: `2021-06-24T21:00`


# Thunderbird Enterprise Tips

Miscellaneous tips for deploying and using Thunderbird in enterprise or organizational contexts.

Some of the tips on this page have been drawn from the  [tb-enterprise](http://groups.google.com/group/tb-enterprise/) mailing list, which is an excellent resource for problem support and information.

## Using a custom CA certificate

**Scenario:** The cert8.db file is created when Thunderbird creates a profile. I want the file to contain our custom CA certificate.\
\
**Solution (needs testing):**

* Create a master file by manually importing the certificate into the cert8.db file from a new profile.
* Copy that file into the `defaults\profile` subfolder of the Thunderbird&#x20;

  program folder (e.g. `C:\Program Files\Mozilla Thunderbird\defaults\profile` on Windows).
* If you then use that installation to create new profiles (thunderbird.exe -p), your customized cert8.db will be used for the new profiles.
* Note: For existing profiles, you have to overwrite the cert8.db in each profile.

[Read the complete discussion](https://groups.google.com/group/tb-enterprise/browse_thread/thread/a07fae23673961a0) on the mailing list.

## Setup users to access LDAP information from the address book

**Scenario:** How to **automatically** set up new or existing users of Thunderbird so they can access Active Directory LDAP information from their address books?\
\
**Solution:**

* To create LDAP access when creating *new* users:
  * Unpack the installer, e.g. `Thunderbird Setup XX.X.X.exe` using an appropriate tool like [7-Zip](https://www.7-zip.org).
  * Create a script called user.js with the required prefs for the LDAP server.
  * Place the user.js script into the  `core\defaults\profile` folder of the unpacked corporate installer before starting to install.
* To update *existing* users of Thunderbird with LDAP access:
  * Create the settings for the LDAP directory in a script with a filename of your choice via API functions like `lockPref` and `defaultPref`, e.g. `LDAPupdate.cfg`.
  * Then use the [Mission Control Desktop / AutoConfig](/deploy/mcd-thunderbird-autoconfig) mechanism to apply them with a caller script in the `defaults\pref` subfolder of the user's Thunderbird program folder, e.g. `autoconfig.js`.

**Example**: Update *existing* users of Thunderbird with LDAP access

Create a JavaScript caller file named `autoconfig.js` in the following subfolder of the Thunderbird program folder:

* For Windows, e.g.: `C:\Program Files\Mozilla Thunderbird\defaults\pref`
* For Linux: `/usr/lib/thunderbird/defaults/pref`

Add the following content to `autoconfig.js`:

```
pref("general.config.obscure_value",0);
pref("general.config.filename","LDAPupdate.cfg");
```

Create a JavaScript configuration file named `LDAPupdate.cfg` and place it into the `Thunderbird program folder`, with code like the following:

```
defaultPref('ldap_2.autoComplete.directoryServer','ldap_2.servers.AutoGEN-CompanyNameLDAP');
defaultPref('ldap_2.autoComplete.useDirectory',true);
defaultPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.auth.dn','cn=your.email.here@companyname.com,ou=orgunit,dc=CompanyName,dc=com'); //this will vary for each company and each user, so it is set as default, but not locked so that users can set their correct values
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.auth.saslmech',''); // SASL mechanism, if necessary
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.autoComplete.commentFormat',''); //Any additional LDAP attributes to display on the autocomplete window
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.autoComplete.filterTemplate','(|(displayName=%v*)(sn=%v*)(cn=%v*)(uid=%v*))'); //LDAP Attributes to Search for Autocomplete
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.autoComplete.nameFormat','[displayName]'); //LDAP Attribute for display name
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.description','CompanyName Autogenerated LDAP Directory'); //Human Readable description
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.filename','CompanyName-autogen-ldap.mab'); //Possibly where results are cached
defaultPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.maxHits',300);
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.nameFormat','[displayName]');
lockPref('ldap_2.servers.AutoGEN-CompanyNameLDAP.uri','ldaps://ldapserver.CompanyName.com/ou=orgunit,dc=CompanyName,dc=com??sub?(objectclass=person)'); //this will vary for each company
defaultPref('ldap_2.servers.default.attrmap.DisplayName','displayName,gecos');
defaultPref('ldap_2.servers.default.autoComplete.filterTemplate','(|(displayName=%v*)(sn=%v*)(cn=%v*)(uid=%v*))');
defaultPref('ldap_2.servers.default.autoComplete.nameFormat','displayName');
defaultPref('mail.addr_book.quicksearchquery.format','?(or(FirstName,c,@V)(sn,c,@V)(DisplayName,c,@V))'); 
```

If you are already using Mission Control Desktop, add the second snippet (modified to suit your environment) to your existing auto-configuration file (e.g. thunderbird.cfg) and ignore the first snippet.

[Read the complete discussion](https://groups.google.com/forum/?fromgroups#!topic/tb-enterprise/KY0xH6wCYJw) on the mailing list.


