{ lib, config, ... }: let cfg = config.myConfig.programs.thunderbird; in { options.myConfig.programs.thunderbird = { enable = lib.mkEnableOption "thunderbird, a email client"; }; config = lib.mkIf cfg.enable { accounts.email.accounts = { "google max" = { address = "max.kaenner@gmail.com"; userName = "max.kaenner@gmail.com"; realName = "Max Känner"; flavor = "gmail.com"; thunderbird = { enable = true; settings = id: { "mail.smtpserver.smtp_${id}.authMethod" = 10; "mail.server.server_${id}.authMethod" = 10; }; }; primary = true; }; "google informatiker" = { address = "kaenner9@gmail.com"; userName = "kaenner9@gmail.com"; realName = "Max Känner"; flavor = "gmail.com"; thunderbird = { enable = true; settings = id: { "mail.smtpserver.smtp_${id}.authMethod" = 10; "mail.server.server_${id}.authMethod" = 10; }; }; }; "uni" = { address = "max.kaenner@stud.uni-hannover.de"; userName = "max.kaenner@stud.uni-hannover.de"; realName = "Max Känner"; imap = { host = "mail.stud.uni-hannover.de"; port = 993; tls = { enable = true; useStartTls = false; }; }; smtp = { host = "smtp.uni-hannover.de"; port = 587; tls = { enable = true; useStartTls = true; }; }; thunderbird.enable = true; }; "luhbots" = { address = "max.kaenner@luhbots.de"; userName = "max.kaenner@luhbots.de"; realName = "Max Känner"; imap = { host = "luhbots.de"; port = 993; tls = { enable = true; useStartTls = false; }; }; smtp = { host = "luhbots.de"; port = 587; tls = { enable = true; useStartTls = true; }; }; thunderbird.enable = true; }; "gymstolz" = { address = "max.kaenner@gym-stolz.de"; userName = "max.kaenner"; realName = "Max Känner"; imap = { host = "gym-stolz.de"; port = 143; tls = { enable = true; useStartTls = true; }; }; smtp = { host = "gym-stolz.de"; port = 587; tls = { enable = true; useStartTls = true; }; }; thunderbird.enable = true; }; }; programs.thunderbird = { enable = true; profiles.default = { isDefault = true; }; }; }; }