-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
328 changed files
with
5,719 additions
and
2,976 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -577,6 +577,15 @@ | |
fingerprint = "51E4 F5AB 1B82 BE45 B422 9CC2 43A5 E25A A5A2 7849"; | ||
}]; | ||
}; | ||
aduh95 = { | ||
email = "[email protected]"; | ||
github = "aduh95"; | ||
githubId = 14309773; | ||
name = "Antoine du Hamel"; | ||
keys = [{ | ||
fingerprint = "C0D6 2484 39F1 D560 4AAF FB40 21D9 00FF DB23 3756"; | ||
}]; | ||
}; | ||
aerialx = { | ||
email = "[email protected]"; | ||
github = "AerialX"; | ||
|
@@ -1086,6 +1095,12 @@ | |
fingerprint = "1F73 8879 5E5A 3DFC E2B3 FA32 87D1 AADC D25B 8DEE"; | ||
}]; | ||
}; | ||
aman9das = { | ||
email = "[email protected]"; | ||
github = "Aman9das"; | ||
githubId = 39594914; | ||
name = "Aman Das"; | ||
}; | ||
amanjeev = { | ||
email = "[email protected]"; | ||
github = "amanjeev"; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
{ | ||
pkgs, | ||
config, | ||
lib, | ||
... | ||
}: | ||
let | ||
cfg = config.programs.thunderbird; | ||
policyFormat = pkgs.formats.json { }; | ||
policyDoc = "https://github.com/thunderbird/policy-templates"; | ||
in | ||
{ | ||
options.programs.thunderbird = { | ||
enable = lib.mkEnableOption "Thunderbird mail client"; | ||
|
||
package = lib.mkPackageOption pkgs "thunderbird" { }; | ||
|
||
policies = lib.mkOption { | ||
type = policyFormat.type; | ||
default = { }; | ||
description = '' | ||
Group policies to install. | ||
See [Thunderbird's documentation](${policyDoc}) | ||
for a list of available options. | ||
This can be used to install extensions declaratively! Check out the | ||
documentation of the `ExtensionSettings` policy for details. | ||
''; | ||
}; | ||
|
||
preferences = lib.mkOption { | ||
type = | ||
with lib.types; | ||
attrsOf (oneOf [ | ||
bool | ||
int | ||
str | ||
]); | ||
default = { }; | ||
description = '' | ||
Preferences to set from `about:config`. | ||
Some of these might be able to be configured more ergonomically | ||
using policies. | ||
''; | ||
}; | ||
|
||
preferencesStatus = lib.mkOption { | ||
type = lib.types.enum [ | ||
"default" | ||
"locked" | ||
"user" | ||
"clear" | ||
]; | ||
default = "locked"; | ||
description = '' | ||
The status of `thunderbird.preferences`. | ||
`status` can assume the following values: | ||
- `"default"`: Preferences appear as default. | ||
- `"locked"`: Preferences appear as default and can't be changed. | ||
- `"user"`: Preferences appear as changed. | ||
- `"clear"`: Value has no effect. Resets to factory defaults on each startup. | ||
''; | ||
}; | ||
}; | ||
|
||
config = lib.mkIf cfg.enable { | ||
environment.systemPackages = [ cfg.package ]; | ||
|
||
environment.etc = | ||
let | ||
policiesJSON = policyFormat.generate "thunderbird-policies.json" { inherit (cfg) policies; }; | ||
in | ||
lib.mkIf (cfg.policies != { }) { "thunderbird/policies/policies.json".source = policiesJSON; }; | ||
|
||
programs.thunderbird.policies = { | ||
DisableAppUpdate = true; | ||
Preferences = builtins.mapAttrs (_: value: { | ||
Value = value; | ||
Status = cfg.preferencesStatus; | ||
}) cfg.preferences; | ||
}; | ||
}; | ||
|
||
meta.maintainers = with lib.maintainers; [ nydragon ]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.