depot/third_party/home-manager/tests/modules/programs/aerc/assertion.nix
Default email 75fa0ae5af Project import generated by Copybara.
GitOrigin-RevId: c3ab5ea047e6dc73df530948f7367455749d8906
2023-08-08 12:19:01 +02:00

52 lines
1.9 KiB
Nix

{ config, lib, pkgs, ... }:
with lib;
{
config = {
test.asserts.assertions.expected = [''
Only the ui section of $XDG_CONFIG_HOME/aerc.conf supports contextual (per-account) configuration.
Please configure it with accounts.email.accounts._.aerc.extraConfig.ui and move any other
configuration to programs.aerc.extraConfig.
''];
test.asserts.warnings.expected = [''
aerc: `programs.aerc.enable` is set, but `...extraConfig.general.unsafe-accounts-conf` is set to false or unset.
This will prevent aerc from starting; see `unsafe-accounts-conf` in the man page aerc-config(5):
> By default, the file permissions of accounts.conf must be restrictive and only allow reading by the file owner (0600).
> Set this option to true to ignore this permission check. Use this with care as it may expose your credentials.
These permissions are not possible with home-manager, since the generated file is in the nix-store (permissions 0444).
Therefore, please set `programs.aerc.extraConfig.general.unsafe-accounts-conf = true`.
This option is safe; if `passwordCommand` is properly set, no credentials will be written to the nix store.
''];
test.stubs.aerc = { };
programs.aerc = {
enable = true;
extraAccounts = {
Test1 = {
source = "maildir:///dev/null";
enable-folders-sort = true;
folders = [ "INBOX" "SENT" "JUNK" ];
};
};
extraConfig.general = {
# unsafe-accounts-conf = true;
pgp-provider = "gpg";
};
};
accounts.email.accounts.Test2 = {
address = "addr@mail.invalid";
userName = "addr@mail.invalid";
realName = "Foo Bar";
primary = true;
imap.host = "imap.host.invalid";
passwordCommand = "echo PaSsWorD!";
aerc = {
enable = true;
extraConfig.general.pgp-provider = "internal";
};
};
};
}