programs.thunderbird.enable
Whether to enable Thunderbird.
Type: boolean
Default:
false
Example:
true
Declared by:
programs.thunderbird.package
The thunderbird package to use.
Type: package
Default:
pkgs.thunderbird
Example:
pkgs.thunderbird-91
Declared by:
programs.thunderbird.finalPackage
Resulting Thunderbird package.
Type: package (read only)
Declared by:
programs.thunderbird.languagePacks
Thunderbird language packs to install and activate through enterprise policies.
Available language codes can be found on the releases page:
https://releases.mozilla.org/pub/thunderbird/releases/${version}/linux-x86_64/xpi/,
replacing ${version} with the version of Thunderbird you have. If
the version string of your Thunderbird package differs from the
upstream version, override the internal release option.
Type: list of string
Default:
[ ]
Example:
[
"en-GB"
"de"
]
Declared by:
programs.thunderbird.nativeMessagingHosts
Additional packages containing native messaging hosts that should be made available to Thunderbird extensions.
Type: list of package
Default:
[ ]
Declared by:
programs.thunderbird.policies
Thunderbird enterprise policies. See the list of policies.
Type: attribute set of (JSON value)
Default:
{ }
Example:
{
DisableTelemetry = true;
ExtensionSettings = {
"addoncompatibility@opto.one" = {
install_url = "https://addons.thunderbird.net/thunderbird/downloads/latest/addon-compatibility-check/latest.xpi";
installation_mode = "normal_installed";
};
};
}
Declared by:
programs.thunderbird.profiles
Attribute set of Thunderbird profiles.
Type: attribute set of (submodule)
Declared by:
programs.thunderbird.profiles.<name>.accountsOrder
Custom ordering of accounts and local folders in
Thunderbird’s folder pane. The accounts are specified
by their name. For declarative accounts, it must be the name
of their attribute in config.accounts.email.accounts (or
config.programs.thunderbird.profiles.<name>.feedAccounts
for feed accounts). The local folders name can be found in
the mail.accountmanager.accounts Thunderbird preference,
for example with Settings > Config Editor (“account1” by
default). Enabled accounts and local folders that aren’t
listed here appear in an arbitrary order after the ordered
accounts.
Type: list of string
Default:
[ ]
Example:
''
[
"my-awesome-account"
"private"
"work"
"rss"
/* Other accounts in arbitrary order */
]
''
Declared by:
programs.thunderbird.profiles.<name>.calendarAccountsOrder
Custom ordering of calendar accounts. The accounts are specified
by their name. For declarative accounts, it must be the name
of their attribute in config.accounts.calendar.accounts.
Enabled accounts that aren’t listed here appear in an arbitrary
order after the ordered accounts.
Type: list of string
Default:
[ ]
Example:
''
[
"my-awesome-account"
"private"
"work"
"holidays"
/* Other accounts in arbitrary order */
]
''
Declared by:
programs.thunderbird.profiles.<name>.extensions
List of ‹name› add-on packages to install for this profile.
Note that it is necessary to manually enable extensions inside ‹name› after the first installation.
To automatically enable extensions add
"extensions.autoDisableScopes" = 0;
to
programs.thunderbird.profiles.<profile>.settings
Type: list of package
Default:
[ ]
Example:
[
pkgs.some-thunderbird-extension
]
Declared by:
programs.thunderbird.profiles.<name>.extraConfig
Extra preferences to add to user.js.
Type: strings concatenated with “\n”
Default:
""
Declared by:
programs.thunderbird.profiles.<name>.feedAccounts
Attribute set of feed accounts. Feeds themselves have to be managed through Thunderbird’s settings. This option allows feeds to coexist with declaratively managed email accounts.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
programs.thunderbird.profiles.<name>.feedAccounts.<name>.name
This feed account’s name.
Type: string (read only)
Default:
"‹name›"
Declared by:
programs.thunderbird.profiles.<name>.isDefault
Whether this is a default profile. There must be exactly one default profile.
Type: boolean
Default:
false
Example:
true
Declared by:
programs.thunderbird.profiles.<name>.name
This profile’s name.
Type: string (read only)
Default:
"‹name›"
Declared by:
programs.thunderbird.profiles.<name>.search
Declarative search engine configuration.
Type: submodule
Default:
{ }
Declared by:
programs.thunderbird.profiles.<name>.search.default
The default search engine used in the address bar and search bar.
Type: null or string
Default:
null
Example:
"ddg"
Declared by:
programs.thunderbird.profiles.<name>.search.engines
Attribute set of search engine configurations. Engines that
only have metaData specified will be treated as builtin
to Thunderbird.
See SearchEngine.jsm in Thunderbird’s source for available options. We maintain a mapping to let you specify all options in the referenced link without underscores, but it may fall out of date with future options.
Note, icon is also a special option added by Home
Manager to make it convenient to specify absolute icon paths.
Type: attribute set of attribute set of (JSON value)
Default:
{ }
Example:
{
nix-packages = {
name = "Nix Packages";
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
nixos-wiki = {
name = "NixOS Wiki";
urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];
iconMapObj."16" = "https://wiki.nixos.org/favicon.ico";
definedAliases = [ "@nw" ];
};
bing.metaData.hidden = true;
google.metaData.alias = "@g"; # builtin engines only support specifying one additional alias
}
Declared by:
programs.thunderbird.profiles.<name>.search.force
Whether to force replace the existing search configuration. This is recommended since Thunderbird will replace the symlink for the search configuration on every launch, but note that you’ll lose any existing configuration by enabling this.
Type: boolean
Default:
false
Declared by:
programs.thunderbird.profiles.<name>.search.meta.maintainers
List of maintainers of each module. This option should be defined at most once per module.
The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.
Type: list of lib.maintainers
Default:
[ ]
Example:
[ lib.maintainers.alice lib.maintainers.bob ]
Declared by:
programs.thunderbird.profiles.<name>.search.meta.teams
List of team maintainers of each module. This option should be defined at most once per module.
Type: list of lib.teams
Default:
[ ]
Example:
[ lib.teams.acme lib.teams.haskell ]
Declared by:
programs.thunderbird.profiles.<name>.search.order
The order the search engines are listed in. Any engines that aren’t included in this list will be listed after these in an unspecified order.
Type: list of string
Default:
[ ]
Example:
[
"ddg"
"google"
]
Declared by:
programs.thunderbird.profiles.<name>.search.privateDefault
The default search engine used in the Private Browsing.
Type: null or string
Default:
null
Example:
"ddg"
Declared by:
programs.thunderbird.profiles.<name>.settings
Preferences to add to this profile’s
user.js.
Type: Thunderbird preference (int, bool, string, and also attrs, list, float as a JSON string)
Default:
{ }
Example:
{
"mail.spellcheck.inline" = false;
"mailnews.database.global.views.global.columns" = {
selectCol = {
ordinal = 1;
visible = false;
};
threadCol = {
ordinal = 2;
visible = true;
};
};
}
Declared by:
programs.thunderbird.profiles.<name>.userChrome
Custom Thunderbird user chrome CSS.
Type: strings concatenated with “\n”
Default:
""
Example:
''
/* Hide tab bar in Thunderbird */
#tabs-toolbar {
visibility: collapse !important;
}
''
Declared by:
programs.thunderbird.profiles.<name>.userContent
Custom Thunderbird user content CSS.
Type: strings concatenated with “\n”
Default:
""
Example:
''
/* Hide scrollbar on Thunderbird pages */
*{scrollbar-width:none !important}
''
Declared by:
programs.thunderbird.profiles.<name>.withExternalGnupg
Allow Thunderbird to use external GnuPG secret keys through GPGME, as used by its documented smartcard and external-key workflow.
This installs gpgme and sets
mail.openpgp.allow_external_gnupg. Public keys and key
acceptance settings still live in Thunderbird’s internal
OpenPGP key manager.
Type: boolean
Default:
false
Example:
true
Declared by:
programs.thunderbird.settings
Attribute set of Thunderbird preferences to be added to all profiles.
Type: Thunderbird preference (int, bool, string, and also attrs, list, float as a JSON string)
Default:
{ }
Example:
{
"general.useragent.override" = "";
"privacy.donottrackheader.enabled" = true;
}
Declared by: