{ config, pkgs, lib, ... }: { programs.msmtp.enable = true; programs.mbsync.enable = true; programs.notmuch.enable = true; programs.neomutt = { enable = true; vimKeys = true; extraConfig = builtins.readFile ./config.neomuttrc; }; xdg.configFile."neomutt/bindings.neomuttrc".source = ./bindings.neomuttrc; xdg.configFile."neomutt/mailcap".source = ./neomutt_mailcap; accounts.email = { maildirBasePath = "${config.xdg.dataHome}/mail"; accounts = { gu = { name, ... }: { primary = true; address = "straube@geo.uni-frankfurt.de"; realName = "Till Straube"; imap.host = "imap.server.uni-frankfurt.de"; smtp.host = "smtpauth.rz.uni-frankfurt.de"; smtp.tls.useStartTls = true; userName = "tstraube"; passwordCommand = "pass uni/hrz"; signature = { text = '' Dr. Till Straube (he/him) Dept. of Human Geography Goethe University Frankfurt ''; showSignature = "append"; }; notmuch.enable = true; mbsync = { enable = true; create = "maildir"; expunge = "both"; }; msmtp.enable = true; neomutt = { enable = true; sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }"; extraConfig = '' set my_account='${ name }' set mbox='+Archive' set my_nm_mbox='Archive' set my_junk='+Spamverdacht' set my_nm_junk='Spamverdacht' set crypt_auto_smime unset crypt_auto_pgp set crypt_autosign set crypt_replyencrypt set crypt_replysign set crypt_replysignencrypted set crypt_verify_sig set smime_sign_as = "f1355556.0" set pgp_default_key = "" unalternates * alternates ^straube@em.uni-frankfurt.de$ \ ^tstraube@em.uni-frankfurt.de$ \ ^tstraube@rz.uni-frankfurt.de$ \ ^tstraube@uni-frankfurt.de$ unset reverse_name set my_signature = ${ pkgs.writeText "signature.txt" config.accounts.email.accounts.gu.signature.text } color status blue default ''; }; }; t9e = { name, ... }: { address = "till.straube@t9e.me"; realName = "Till Straube"; imap.host = "arielle.ktiu.net"; smtp.host = "arielle.ktiu.net"; smtp.tls.useStartTls = true; userName = "till.straube@t9e.me"; signature.text = '' Till Straube (he/him) PGP key: https://keys.openpgp.org/search?q=till.straube@t9e.me ''; gpg.signByDefault = true; notmuch.enable = true; neomutt = { enable = true; sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }"; extraConfig = '' set my_mbsync_account='${ name }' set mbox='+Archive' set my_nm_mbox='Archive' set my_junk='+Junk' set my_nm_junk='Junk' set crypt_auto_pgp unset crypt_auto_smime unalternates * alternates @t9e.me$ @ktiu.net$ set reverse_name set my_signature = ${ pkgs.writeText "signature.txt" config.accounts.email.accounts.t9e.signature.text } color status green default ''; }; mbsync = { enable = true; create = "maildir"; expunge = "both"; }; msmtp = { enable = true; extraConfig.port = "587"; }; passwordCommand = "pass accounts/ktiu-imap"; }; ksh = { name, ...}: { address = "kein_schlussstrich_hessen@systemli.org"; realName = "Kein Schlussstrich Hessen"; imap.host = "mail.systemli.org"; smtp.host = "mail.systemli.org"; smtp.tls.useStartTls = true; userName = "kein_schlussstrich_hessen@systemli.org"; signature.text = '' Kein Schlussstrich Hessen PGP Key: https://keys.openpgp.org/search?q=kein_schlussstrich_hessen@systemli.org ''; signature.showSignature = "append"; gpg.signByDefault = true; notmuch.enable = true; neomutt = { enable = true; sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }"; extraConfig = '' set my_mbsync_account='${ name }' set mbox='+Erledigt' set my_nm_mbox='Erledigt' set my_junk='+Junk' set my_nm_junk='Junk' set crypt_auto_pgp unset crypt_auto_smime unalternates * set reverse_name set my_signature = ${ pkgs.writeText "signature.txt" config.accounts.email.accounts.ksh.signature.text } color status cyan default ''; }; mbsync = { enable = true; create = "maildir"; expunge = "both"; }; msmtp.enable = true; passwordCommand = "pass ksh/systemli"; }; }; }; programs.neovim.plugins = with pkgs.vimPlugins; [ { plugin = vim-pathogen; config = "execute pathogen#infect()"; } ]; xdg.configFile."nvim/bundle/woof-vim" = { source = config.lib.file.mkOutOfStoreSymlink "/home/till/devel/woof-vim"; recursive = true; }; }