nixos-config/users/rouven/modules/accounts/default.nix

283 lines
7.3 KiB
Nix
Raw Normal View History

2023-05-19 11:42:43 +02:00
{ pkgs, lib, ... }:
2023-01-01 21:30:41 +01:00
let
gpg-default-key = "116987A8DD3F78FF8601BF4DB95E8FE6B11C4D09";
in
{
2023-02-26 01:02:01 +01:00
sops.secrets = {
2023-03-06 15:05:35 +01:00
"email/rfive" = { };
"email/tu-dresden" = { };
"email/ifsr" = { };
2023-10-08 14:22:52 +02:00
"email/agdsn" = { };
2023-03-06 15:05:35 +01:00
"email/google" = { };
2023-02-26 01:02:01 +01:00
};
2023-01-27 00:24:24 +01:00
programs = {
aerc = {
enable = true;
extraConfig = {
general = {
unsafe-accounts-conf = true;
};
ui = {
sort = "date";
dirlist-tree = true;
fuzzy-complete = true;
styleset-name = "dracula";
threading-enabled = true;
};
filters = {
"text/plain" = "colorize";
"text/html" = "html | colorize";
"message/delivery-status" = "colorize";
"message/rfc822" = "colorize";
"text/calendar" = "calendar";
};
};
};
2023-07-24 14:21:30 +02:00
thunderbird = {
enable = true;
profiles = {
default = {
withExternalGnupg = true;
isDefault = true;
2023-10-26 12:12:45 +02:00
settings = {
"intl.date_time.pattern_override.connector_short" = "{1} {0}";
"intl.date_time.pattern_override.date_short" = "yyyy-MM-dd";
"intl.date_time.pattern_override.time_short" = "HH:mm";
};
2023-07-24 14:21:30 +02:00
};
};
};
2023-01-27 00:24:24 +01:00
mbsync.enable = true;
};
2023-01-01 21:30:41 +01:00
accounts.email.accounts = {
2023-05-24 16:37:45 +02:00
"rouven@rfive.de" = rec {
address = "rouven@rfive.de";
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
2023-05-24 17:08:44 +02:00
userName = address;
2023-05-24 16:37:45 +02:00
passwordCommand = "${pkgs.coreutils}/bin/cat $XDG_RUNTIME_DIR/secrets/email/rfive";
imap = {
2023-09-19 13:47:08 +02:00
host = "mail.rfive.de";
2023-05-24 16:37:45 +02:00
port = 993;
};
smtp = {
2023-09-19 13:47:08 +02:00
host = "mail.rfive.de";
port = 465;
2023-05-24 16:37:45 +02:00
};
2023-07-24 14:21:30 +02:00
thunderbird.enable = true;
2023-05-24 16:37:45 +02:00
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
aerc.enable = true;
2023-05-24 16:37:45 +02:00
};
2023-03-06 15:05:35 +01:00
"TU-Dresden" = rec {
2023-01-01 21:30:41 +01:00
address = "rouven.seifert@mailbox.tu-dresden.de";
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
2023-01-27 00:24:24 +01:00
userName = "rose159e";
2023-02-26 01:02:01 +01:00
passwordCommand = "${pkgs.coreutils}/bin/cat $XDG_RUNTIME_DIR/secrets/email/tu-dresden";
2023-01-01 21:30:41 +01:00
imap = {
host = "msx.tu-dresden.de";
port = 993;
};
smtp = {
host = "msx.tu-dresden.de";
port = 587;
2023-01-02 13:18:57 +01:00
tls.useStartTls = true;
2023-01-01 21:30:41 +01:00
};
2023-01-27 00:24:24 +01:00
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
groups.tud = {
2023-01-28 14:53:23 +01:00
channels.inbox = {
nearPattern = "INBOX";
farPattern = "INBOX";
extraConfig.Create = "near";
};
channels.opal = {
nearPattern = "Opal";
farPattern = "Opal";
extraConfig.Create = "near";
};
2023-11-16 01:27:01 +01:00
channels.FSR = {
nearPattern = "FSR";
farPattern = "FSR";
extraConfig.Create = "near";
};
channels.unispam = {
nearPattern = "Uni Spam";
farPattern = "Uni Spam";
extraConfig.Create = "near";
};
channels.trash = {
nearPattern = "Trash";
farPattern = "Gel&APY-schte Elemente";
extraConfig.Create = "near";
};
channels.sent = {
nearPattern = "Sent";
farPattern = "Gesendete Elemente";
extraConfig.Create = "near";
};
2023-01-28 14:53:23 +01:00
channels.junk = {
nearPattern = "Junk";
farPattern = "Junk-E-Mail";
extraConfig.Create = "near";
};
channels.drafts = {
nearPattern = "Drafts";
farPattern = "Entw&APw-rfe";
extraConfig.Create = "near";
};
};
2023-01-27 00:24:24 +01:00
extraConfig = {
account = {
AuthMechs = "Login";
};
};
2023-01-01 21:30:41 +01:00
};
2023-07-24 14:21:30 +02:00
thunderbird.enable = true;
aerc.enable = true;
2023-01-27 11:22:49 +01:00
};
2023-03-06 15:05:35 +01:00
"iFSR" = rec {
2023-01-31 16:16:03 +01:00
address = "rouven.seifert@ifsr.de";
2023-06-19 23:58:04 +02:00
signature = {
showSignature = "append";
text = ''
Rouven Seifert
2023-08-02 12:14:35 +02:00
Co-Admin im Fachschaftsrat Informatik TU Dresden
2023-06-19 23:58:04 +02:00
Fakultät Informatik
Nöthnitzer Str. 46, 01187 Dresden
'';
};
2023-02-28 15:05:07 +01:00
primary = true;
2023-01-31 16:16:03 +01:00
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = "rouven.seifert";
2023-02-26 01:02:01 +01:00
passwordCommand = "${pkgs.coreutils}/bin/cat $XDG_RUNTIME_DIR/secrets/email/ifsr";
2023-01-31 16:16:03 +01:00
imap = {
host = "mail.ifsr.de";
2023-09-19 13:47:08 +02:00
port = 993;
2023-01-31 16:16:03 +01:00
};
smtp = {
host = "mail.ifsr.de";
2023-09-19 13:47:08 +02:00
port = 465;
2023-01-31 16:16:03 +01:00
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
2023-07-24 14:21:30 +02:00
thunderbird.enable = true;
aerc.enable = true;
2023-01-31 16:16:03 +01:00
};
2023-10-08 14:22:52 +02:00
"agdsn" = rec {
address = "r5@agdsn.me";
# gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = "r5@agdsn.me";
2023-10-22 15:45:30 +02:00
aliases = [
"r5@agdsn.de"
"rouven.seifert@agdsn.de"
];
2023-10-08 14:22:52 +02:00
passwordCommand = "${pkgs.coreutils}/bin/cat $XDG_RUNTIME_DIR/secrets/email/agdsn";
imap = {
host = "imap.agdsn.de";
port = 993;
};
smtp = {
host = "smtp.agdsn.de";
port = 465;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
thunderbird.enable = true;
aerc.enable = true;
2023-10-08 14:22:52 +02:00
};
2023-01-27 11:22:49 +01:00
"gmail" = rec {
address = "seifertrouven@gmail.com";
realName = "Rouven Seifert";
userName = address;
2023-02-26 01:02:01 +01:00
passwordCommand = "${pkgs.coreutils}/bin/cat $XDG_RUNTIME_DIR/secrets/email/google";
2023-01-27 11:22:49 +01:00
imap = {
host = "imap.gmail.com";
port = 993;
};
smtp = {
host = "smtp.gmail.com";
port = 465;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
2023-03-06 15:05:35 +01:00
groups.gmail = {
2023-01-28 14:53:23 +01:00
channels.inbox = {
nearPattern = "INBOX";
farPattern = "INBOX";
extraConfig.Create = "near";
};
channels.trash = {
nearPattern = "Trash";
farPattern = "[Gmail]/Papierkorb";
extraConfig.Create = "near";
};
2023-01-28 14:53:23 +01:00
channels.junk = {
nearPattern = "Junk";
farPattern = "[Gmail]/Spam";
extraConfig.Create = "near";
};
channels.drafts = {
nearPattern = "Drafts";
farPattern = "[Gmail]/Entw&APw-rfe";
extraConfig.Create = "near";
};
2023-11-16 01:27:01 +01:00
channels.hetzner = {
nearPattern = "Hetzner";
farPattern = "Hetzner";
extraConfig.Create = "near";
};
channels.studentenwerk = {
nearPattern = "Studentenwerk";
farPattern = "Studentenwerk";
extraConfig.Create = "near";
};
};
2023-01-27 11:22:49 +01:00
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
2023-07-24 14:21:30 +02:00
thunderbird.enable = true;
aerc.enable = true;
2023-01-01 21:30:41 +01:00
};
};
2023-07-20 21:35:12 +02:00
home.file.".gnupg/dirmngr_ldapservers.conf".text = ''
ldap.pca.dfn.de::::o=DFN-Verein,c=DE
'';
2023-01-01 21:30:41 +01:00
}