Dove is a suite of configurations & advanced modifications for Mozilla Thunderbird, designed to put the user first - with a focus on privacy, security, freedom, functionality, & usability.
Note
Firefox users should consider taking a look at Phoenix - Dove's sister project.
We'd love to see you over on Matrix (Recommended) and Discord!
Dove works by leveraging Thunderbird's AutoConfig & Enterprise Policies functionality, and is installed on top of your standard, official Thunderbird installation. This allows us to go above and beyond what a simple user.js file can offer, without the security risks of using a fork. For example, forks often fall behind on Thunderbird updates, which can leave users open to severe, detrimental vulnerabilities. Dove's approach allows users to continue receiving immediate updates, directly from Mozilla.
Dove's approach also provides users with a seamless experience that is accessible and easy to use. Gone are the days of creating override files, manually keeping track of updates, & resetting old preferences. Not only is Dove the most effective & comprehensive approach to configuring Thunderbird, it is also the most accessible & easiest to use.
Dove's settings & changes to Thunderbird are carefully considered based on extensive research & studying of Thunderbird's inner workings. For an incomplete, non-exhaustive list of Dove's features & enhancements, see here.
Dove is designed to maintain compatibility with email providers and to avoid breakage as much as possible, while still substantially improving privacy & security compared to vanilla Thunderbird & most other email clients.
You should also see here for a comparison between Dove, standard Thunderbird, thunderbird-user.js, & other projects of similar nature.
Dove also disables various anti-features & strives to put the user back in control of their email experience. Additionally, Dove includes quality of life enhancements, performance improvements, and other 'goodies' where possible and where it doesn't compromise user privacy or security.
At the end of the day, above all else:
Dove is designed from the ground up to always put the user first.
Important
Click me
Dove currently provides official support for:
- Arch Linux
- Debian (& derivatives...)
- Fedora Linux (39-41)
- NixOS
- Flatpak (System)
- macOS
- Ubuntu (& derivatives...)
Important
Other platforms have unfortunately proven difficult to support, though progress is being made. Contributions are always welcome and appreciated.
Arch
[!NOTE] You can use
paruinstead ofyaywith the same options.
Thunderbird (Pacman):
yay -S doveThunderbird (System Flatpak):
yay -S dove-flatpakDebian/Ubuntu & derivatives
Before installing Dove, you'll first need to add celenity's OBS repo:
[!NOTE] You may see a warning, such as the following, when updating your
aptcache.Warning: https://download.opensuse.org/repositories/home:/celenity/Debian_12/InRelease: Policy will reject signature within a year, see --audit for detailsThis is because
aptwill not support V3 GPG keys after2026-02-01, and currently the OBS uses a V3 GPG key. For now, there shouldn't be any issues.
echo 'deb https://download.opensuse.org/repositories/home:/celenity/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:celenity.list
wget -O- https://download.opensuse.org/repositories/home:celenity/Debian_12/Release.key 2>/dev/null | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_celenity.gpg > /dev/null
sudo apt updateThunderbird (DEB):
sudo apt install doveThunderbird (System Flatpak):
sudo apt install dove-flatpakFedora
Before installing Phoenix, you'll first need to add celenity's COPR repo:
sudo dnf copr enable celenity/copr
sudo dnf makecacheThunderbird (RPM):
sudo dnf install doveThunderbird (System Flatpak):
sudo dnf install dove-flatpakmacOS
[!IMPORTANT]
⚠️ Before proceeding, you must have Homebrew installed.
Run the following installation script in your terminal of choice:
/bin/zsh -c "$(curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/installer_scripts/macos_install.sh)"NixOS
NixOS is supported for flake-based configurations:
- Add Dove and Phoenix repositories to your flake inputs (Dove is based on Phoenix configs).
- Add
doveas one of the arguments to your output function. - Add the Dove NixOS Module to your configuration.
{
inputs = {
# Note that this assumes you have a flake-input called nixpkgs,
# which is often the case. If you've named it something else,
# you'll need to change the `nixpkgs` below.
dove = {
url = "git+https://gitlab.com/celenityy/Dove.git";
inputs.nixpkgs.follows = "nixpkgs";
inputs.phoenix.follows = "phoenix";
};
phoenix = {
url = "git+https://gitlab.com/celenityy/Phoenix.git";
inputs.nixpkgs.follows = "nixpkgs";
};
};
# Add the `dove` argument to your output function, as below:
outputs = {nixpkgs, dove, ...}: {
# The configuration here is an example; it will look slightly different
# based on your machine name and architecture.
nixosConfigurations.your-box = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
# This is the important part -- add this line to your module list!
dove.nixosModules.default
];
};
};
}If you would like to use Dove on an unsupported platform, see 📛Manual Installation.
Arch
[!NOTE] You can use
paruinstead ofyaywith the same options.
Thunderbird (Pacman):
yay -Rcns dove-archThunderbird (System Flatpak):
yay -Rcns dove-flatpakDebian/Ubuntu & derivatives
Thunderbird (DEB):
sudo apt remove doveThunderbird (System Flatpak):
sudo apt remove dove-flatpakYou can also remove celenity's OBS repo if desired:
sudo rm /etc/apt/sources.list.d/home:celenity.list
sudo rm /etc/apt/trusted.gpg.d/home_celenity.gpg
sudo apt updateFedora
Thunderbird (RPM):
sudo dnf remove doveThunderbird (System Flatpak):
sudo dnf remove dove-flatpakYou can also remove celenity's COPR repo if desired:
sudo dnf copr remove celenity/copr
sudo dnf makecachemacOS
Run the following uninstall script in your terminal of choice:
/bin/zsh -c "$(curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/uninstaller_scripts/macos_uninstall.sh)"NixOS
?
Please leave us feedback on the way out, so we can improve for the future!
Caution
This is NOT recommended for most users.
By default, Dove is installed & updated via your operating system's package manager. This allows for fast, easy updates & fixes as needed, right with the rest of your system!
However, if this is not desirable for you & your situation, or you would simply like to use Dove on an unsupported operating system, you can manually install Dove with the following steps:
1: Download dove.cfg for your platform:
- Linux:
https://gitlab.com/celenityy/Dove/-/raw/pages/linux/dove.cfg - macOS:
https://gitlab.com/celenityy/Dove/-/raw/pages/macos/macos/dove.cfg - Windows:
https://gitlab.com/celenityy/Dove/-/raw/pages/windows/dove.cfg
You can right click and select Save page as from your browser after navigating to the link for your platform's dove.cfg, or you can run the following command in your terminal:
Linux:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/linux/dove.cfgmacOS:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/macos/macos/dove.cfgWindows:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/windows/dove.cfg2: Download dove.js for your platform:
- Linux:
https://gitlab.com/celenityy/Dove/-/raw/pages/linux/defaults/pref/dove.js - macOS:
https://gitlab.com/celenityy/Dove/-/raw/pages/macos/defaults/pref/dove.js - Windows:
https://gitlab.com/celenityy/Dove/-/raw/pages/windows/defaults/pref/dove.js
You can right click and select Save page as from your browser after navigating to the link for your platform's dove.js, or you can run the following command in your terminal:
Linux:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/linux/defaults/pref/dove.jsmacOS:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/macos/defaults/pref/dove.jsWindows:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/windows/defaults/pref/dove.js3: Download policies.json (or org.mozilla.thunderbird.plist for macOS users) for your platform:
- Linux:
https://gitlab.com/celenityy/Dove/-/raw/pages/linux/policies/policies.json - macOS:
https://gitlab.com/celenityy/Dove/-/raw/pages/macos/macos/org.mozilla.thunderbird.plist - Windows:
https://gitlab.com/celenityy/Dove/-/raw/pages/windows/distribution/policies.json
You can right click and select Save page as from your browser after navigating to the link for your platform's policies.json (or org.mozilla.thunderbird.plist for macOS users), or you can run the following command in your terminal:
Linux:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/linux/policies/policies.jsonmacOS:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/macos/macos/org.mozilla.thunderbird.plistWindows:
curl --cert-status --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl --no-ssl-allow-beast --no-ssl-auto-client-cert --no-ssl-no-revoke --no-ssl-revoke-best-effort --proto -all,https --proto-default https --proto-redir -all,https --show-error -O -sSL https://gitlab.com/celenityy/Dove/-/raw/pages/windows/distribution/policies.json4: Locate your Thunderbird installation directory. This will vary depending on your platform, you can generally find it by navigating to Help (Located on top bar) -> Troubleshooting information & checking the directory next to Application Binary. For example, on Fedora Linux, I see /usr/lib64/thunderbird/thunderbird next to Application Binary. This means our installation directory is /usr/lib64/thunderbird.
Caution
Unless you're on Fedora Linux, your directory will probably be different, and you should replace this path on the following steps with your actual installation directory's path.
5: Move dove.cfg to the root of your installation directory. You can either drag and drop it manually, or run the following command:
Linux/macOS, assuming /usr/lib64/thunderbird is your installation directory:
sudo cp dove.cfg /usr/lib64/thunderbird/dove.cfgWindows:
cp dove.cfg C:\'Program Files'\'Mozilla Thunderbird'\dove.cfg6: For macOS, Windows, and Flatpak users: If it does not already exist, in the root of your installation directory, create a folder named defaults, and inside this new defaults folder, create another folder titled pref. You can do this manually through your file explorer, or you can run the following command for your platform:
Flatpak/macOS, assuming /usr/lib64/thunderbird is your installation directory:
sudo mkdir -vp /usr/lib64/thunderbird/defaults/prefWindows:
mkdir -vp C:\'Program Files'\'Mozilla Thunderbird'\defaults\prefFor standard Linux users: If it does not already exist, you will want to create a folder named thunderbird located in your system's etc directory. Inside this thunderbird folder, create a new folder named defaults, and inside this new defaults folder, create another folder titled pref. This will work regardless of your distribution - even Snaps are supported. You can also just run the command below:
sudo mkdir -vp /etc/thunderbird/defaults/prefOn macOS and GNU/Linux, you'll also want to ensure that the folder you created has proper permissions:
Flatpak/macOS, assuming /usr/lib64/thunderbird is your installation directory:
sudo chmod 744 /usr/lib64/thunderbird/defaults/prefFor all non-Flatpak GNU/Linux users:
sudo chmod 655 /etc/thunderbird/defaults/pref7: Move dove.js to the pref folder that you just created. You can run the following command for your platform below:
Linux/macOS, Assuming your installation directory is /usr/lib64/thunderbird:
sudo cp dove.js /usr/lib64/thunderbird/defaults/pref/dove.jsWindows:
cp dove.js C:\'Program Files'\'Mozilla Thunderbird'\defaults\pref\dove.jsFor all non-Flatpak GNU/Linux users:
sudo cp dove.js /etc/thunderbird/defaults/pref/dove.js8: On Windows, in the root of your installation directory, create a folder named distribution. You can do this manually through your file explorer, or you can run the following command:
mkdir -vp C:\'Program Files'\'Mozilla Thunderbird'\distributionnon-Flatpak GNU/Linux users should instead create a policies folder inside of the thunderbird folder located in /etc. This will work regardless of your distribution, and even for Snaps.
sudo mkdir -vp /etc/thunderbird/policiesFor non-Flatpak GNU/Linux users, you'll also want to ensure that the folder you created has proper permissions:
sudo chmod 655 /etc/thunderbird/policies9: Now, those on Windows should copy policies.json to the distribution folder that you just created. You can run the following command:
cp policies.json C:\'Program Files'\'Mozilla Thunderbird'\distribution\policies.jsonmacOS users should instead copy org.mozilla.thunderbird.plist to /Library/Preferences, and reboot their device once finished:
sudo cp org.mozilla.thunderbird.plist /Library/Preferences/org.mozilla.thunderbird.plist`GNU/Linux users should instead copy policies.json to their /etc/thunderbird/policies folder they just created.
sudo cp policies.json /etc/thunderbird/policies/policies.json10: Within your Dove assets directory, create a directory titled autoconfig, and within that directory, create a directory titled v1.1. Navigate into the v1.1 directory.
Linux (Non-Flatpak):
mkdir -vp /etc/thunderbird/dove/assets/autoconfig/v1.1
cd /etc/thunderbird/dove/assets/autoconfig/v1.1Linux (Flatpak):
mkdir -vp /var/lib/flatpak/app/org.mozilla.Thunderbird/current/active/files/etc/thunderbird/dove/assets/autoconfig/v1.1
cd /var/lib/flatpak/app/org.mozilla.Thunderbird/current/active/files/etc/thunderbird/dove/assets/autoconfig/v1.1macOS (Apple Silicon):
mkdir -vp /opt/homebrew/opt/dove/assets/autoconfig/v1.1
cd /opt/homebrew/opt/dove/assets/autoconfig/v1.1macOS (Intel):
mkdir -vp /usr/local/opt/dove-intel/assets/autoconfig/v1.1
cd /usr/local/opt/dove-intel/assets/autoconfig/v1.1Windows:
mkdir -vp C:\dove\assets\autoconfig\v1.1
cd C:\dove\assets\autoconfig\v1.111: Download Mozilla's latest autoconfiguration files into the root of the v1.1 directory. These can be found here. The easiest way to download them is by installing wget (if you haven't already), and running the following command in your Terminal:
wget -r -np -nH --cut-dirs=3 -R index.html -e robots=off https://autoconfig.thunderbird.net/v1.1/Alternatively: At the cost of privacy and security, after installing Dove, you can set the value of mailnews.auto_config_url to https://autoconfig.thunderbird.net/v1.1/ in your about:config (Accessible by navigating to Settings -> General -> Scroll to the bottom -> Config Editor...). This is NOT recommended, as it will share your email provider with Mozilla, and is slower/less responsive.
Congratulations, you're done. Enjoy Dove, and be sure to keep up with updates!
Dove is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later) where applicable.
Phoenix is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later) where applicable.
Dove's archives include:
assets/autoconfig/- From Thunderbird'sISPDB, available under the Mozilla Public License 2.0.
Mozilla Thunderbird is a trademark of the Mozilla Foundation.
This is not an officially supported Mozilla product. Dove is in no way affiliated with Mozilla.
Dove is not sponsored or endorsed by Mozilla.
Thunderbird source code is available at https://hg-edge.mozilla.org.
Huge thank you to the following projects & individuals for making Dove possible. Please show them support!
Also see Phoenix's Attribution page here.
-
- Suggested Dove's icon, created the install & uninstall scripts, helped with maintenance/packaging, assisted with README formatting, provided general advice & support, and responsible for various other significant contributions to the project.
-
- 🪪 bikass
- ⚖️ GPL-3.0-only
- 💸 Donate
- Designed Dove's icon
-
- 🪪 Samuel FORESTIER + Daniel Nathan Gray
- ⚖️ MIT
- Discovered various prefs & learned from their very nice documentation
-
- 🪪 Thorin-Oakenpants + earthlng + claustromaniac
- ⚖️ MIT
-
- 🪪 Narsil
- ⚖️ GPL-3.0-or-later
- Certain preferences + inspiration
-
- 🪪 Divested Computing Group
- ⚖️ AGPL-3.0-or-later
- 💸 Donate
- Certain preferences + inspiration
-
- 🪪 bgstack15 + fxbrit + Malte Jürgens + ohfp + James McClain + threadpanic + Guillaume
- ⚖️ MPL-2.0
- Inspiration + certain preferences & policies
-
- 🪪 rusty-snake
- ⚖️ CC0-1.0
- Inspiration + certain preferences
-
- 🪪 Raymond Hill + ItsProfesssional + MasterKia + peace2000 + Peter Lowe + PiQuark6046 + stephenhawk8054
- ⚖️ GPL-3.0-or-later
- Pre-installed extension - provides content blocking
-
- 🪪 Quad9 Team
- 💸 Donate
- Default DNS Over HTTPS Resolver
And of course...