diff options
author | Kaiden Fey <kookie@spacekookie.de> | 2020-09-21 14:12:32 +0200 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2020-09-21 14:12:32 +0200 |
commit | f80843dd45d7acd563d0a5b014cec3a2ea686fc2 (patch) | |
tree | 87189d873d6f932d85f9c1a480462b37d96cd6a5 /home-manager/modules/programs/neomutt.nix | |
parent | e0800985dab8f8ebb4cebdfd7e361fd1fafdb2a7 (diff) | |
parent | 9b1b55ba0264a55add4b7b4e022bdc2832b531f6 (diff) |
Merge commit '9b1b55ba0264a55add4b7b4e022bdc2832b531f6'
Diffstat (limited to 'home-manager/modules/programs/neomutt.nix')
-rw-r--r-- | home-manager/modules/programs/neomutt.nix | 36 |
1 files changed, 23 insertions, 13 deletions
diff --git a/home-manager/modules/programs/neomutt.nix b/home-manager/modules/programs/neomutt.nix index 85af0353b6c..f2a6bbfff08 100644 --- a/home-manager/modules/programs/neomutt.nix +++ b/home-manager/modules/programs/neomutt.nix @@ -38,6 +38,19 @@ let }; }; + sortOptions = [ + "date" + "date-received" + "from" + "mailbox-order" + "score" + "size" + "spam" + "subject" + "threads" + "to" + ]; + bindModule = types.submodule { options = { map = mkOption { @@ -98,7 +111,9 @@ let } else let smtpProto = if smtp.tls.enable then "smtps" else "smtp"; - smtpBaseUrl = "${smtpProto}://${escape userName}@${smtp.host}"; + smtpPort = if smtp.port != null then ":${toString smtp.port}" else ""; + smtpBaseUrl = + "${smtpProto}://${escape userName}@${smtp.host}${smtpPort}"; in { smtp_url = "'${smtpBaseUrl}'"; smtp_pass = "'`${passCmd}`'"; @@ -211,18 +226,9 @@ in { }; sort = mkOption { - type = types.enum [ - "date" - "date-received" - "from" - "mailbox-order" - "score" - "size" - "spam" - "subject" - "threads" - "to" - ]; + # allow users to choose any option from sortOptions, or any option prefixed with "reverse-" + type = types.enum + (sortOptions ++ (map (option: "reverse-" + option) sortOptions)); default = "threads"; description = "Sorting method on messages."; }; @@ -258,6 +264,10 @@ in { description = "Extra configuration appended to the end."; }; }; + + accounts.email.accounts = mkOption { + type = with types; attrsOf (submodule (import ./neomutt-accounts.nix)); + }; }; config = mkIf cfg.enable { |